html {
  box-sizing: border-box;
}

h1 {
  margin-top: 40px;
  margin-bottom: 40px;
}

h2 {
  margin-top: 10px;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  padding: 0;
}

h3, h4, h5, h6 {
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
}


body {
	padding: 0;
	margin: 0;
	background-color: #222;
	color: #eee;
	font-family: Verdana, sans-serif;
	min-height: 90vh;
}

header {

    background: url('Images/plagiaat/header.png');
    background-size: cover;
	color: white;
	padding: 20px;
	margin: 0 auto;
	text-align:center
}

img {
	max-width: 100%;
}

nav {
  max-width: 100%;
  background: linear-gradient(217deg, rgba(34,34,34,.9), rgba(255,0,0,0) 70%),
			  linear-gradient(127deg, rgba(22,22,22,.98), rgba(0,255,0,0) 70%),
			  linear-gradient(336deg, rgba(42,42,42,.9), rgba(0,0,255,0) 70%);
  text-align: center;
  margin: 0 auto;
}

nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: center;
}

nav ul li {
	transition: background-color 0.1s linear;
	display:inline-block;
}

nav ul li a {
	color: white;
	display: block;
	padding: 10px;
	text-decoration: none;
}

nav ul li:hover {
	background: linear-gradient(45deg, #205295, #0b346a);
}

.dropdown {
	position: relative;
}

.dropdown small small {
	vertical-align: text-top;
}

.dropdown-content {
	background-color: #222;
	color:white;
	border: 1px solid #111;
	display: none;
	left: 0;
	position: absolute;
	top: 100%;
	z-index: 1;
	white-space: nowrap;
	min-width: max-content;
	text-align: left;
	box-shadow: rgba(0, 0, 0, 0.5) 0 0 16px;
}

.dropdown .dropdown-content a {
	transition: background-color 0.1s linear;
}

.dropdown .dropdown-content a:hover {
	background-color: #205295;
	display: block;
}

.dropdown-content.characters {}

.dropdown-content.cities {}

.dropdown-content.maps {}

.dropdown:hover .dropdown-content {
	display: block;
}

main {
  max-width: 1406px;
  margin: 0 auto;
  padding-bottom:88px;
  text-align: left;
}

section {
  max-width: 100%;
  text-align: left;
}

footer {
  width: 100%;
  background-color: #333;
  text-align: center;
  padding: 8px;
}

footer:not(.non-sticky) {
    position: fixed;
    bottom: 0;
    left: 0;
}

.container {
	display: flex;
}

.container-column {
	flex-direction: column;
}

table {
	border-collapse: collapse;
}

.npcs table {
	border: 1px solid #111;
}

.npcs table td:first-child {
	width: 250px;
}

.npcs table th,
.npcs table td {
	padding: 4px 8px;
	border: 1px solid #141414;
}

.npcs table tr:nth-child(even) td:not([colspan]) {
	background: #181818;
}

.npcs table td[colspan] {
	padding-top:    12px;
	padding-bottom: 12px;
	background:     #313131;
}

.npcs h2 {
	margin-top: 18px;
	margin-bottom: 12px;
}

.left-column {
	flex: 0.3;
	padding-right: 0;
}

.right-column {
	flex: 1;
	padding-left: 0;
}

ul {
	list-style-type: none;
	padding: 0;
	margin-top: 5px;
}

main a:link {
  color: orange;
}

main a:visited {
  color: orange;
}


body {
    margin: 0;
    font-family: Helvetica, Sans-serif;
    overflow-x: hidden;
}

h1 {
    text-align: center;
}

.parallax-container {
    width: 100vw;
}

.overflow {
    position: absolute;
    width: 100vw;
    height: 80vh;
    top: 100vh;
}

@media (orientation: portrait) {
    .keyart {
        background: url('/Images/plagiaat/full.jpg');
        background-size: contain;
        background-repeat: no-repeat;
        height: 44vh; /** Resolution of image: 2000x872 = 100 / (2000/872) */
    }
    .keyart-layer,
    .overflow {
        display: none;
    }
}

@media (orientation: landscape) {
    .parallax-container {
        height: 70vh;
        perspective: 1px;
        perspective-origin: center center;
        overflow-x: hidden;
    }

    .keyart {
        transform-style: preserve-3d;
        height: 90vh;
        backdrop-filter: blur(5px);
    }

    .keyart-layer {
        background-position: bottom center;
        background-size: cover;
        background-repeat: repeat-x;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
    }

    #keyart-0 {
        background-image: url('/Images/plagiaat/layer-1.png');
        transform: translate3d(-11px, 0px, -1.3px) scale(2.4);
    }

    #keyart-1 {
        background-image: url('/Images/plagiaat/layer-2.png');
        transform: translate3d(0, 0px, -0.7px) scale(1.7);
        z-index: -1;
    }

    #keyart-2 {
        background-image: url('/Images/plagiaat/layer-3.png');
        transform: translate3d(0, 0px, -0.4px) scale(1.6);
    }

    #keyart-3 {
        background-image: url('/Images/plagiaat/layer-4.png');
        transform: translate3d(0, -2px, -0.1px) scale(1.1);
    }

    #keyart-4 {
        background-image: url('/Images/plagiaat/layer-5.png');
        transform: translate3d(0, 200px, 0.1px) scale(.9);
    }

    #keyart-5 {
        background-image: url('/Images/plagiaat/layer-6.png');
        transform: translate3d(0, 84px, 0.2px) scale(.8);
    }

}

.pic {
    position: fixed;
    width:    500px;
    height:   500px;
}

.pic1 {
    right:    0;
    bottom:   -500px;
    animation: bottom-up 10s infinite alternate forwards;
    animation-delay: 20s;
}

.pic2 {
    left:    0;
    top:   -500px;
    animation: top-down 5s infinite alternate forwards;
    animation-delay: 25s;
    transform: scale(-1, -1);
}

.pic3 {
    right:    0;
    top:   -500px;
    animation: top-down 5s infinite alternate forwards;
    animation-delay: 27s;
    transform: scale(1, -1);
}

.pic4 {
    left:            0;
    bottom:          -500px;
    animation:       bottom-up 5s infinite alternate forwards;
    animation-delay: 29s;
    transform:       scale(-1, 1);
}

.pic5.x {
    position: fixed;
    animation: x 13s linear infinite alternate, top-down 3s linear forwards;
    animation-delay: 23s, 26s;
    left: 0;
    top: -500px;
}

.pic5 img {
    animation: spin 1s infinite linear;
    width:     200px;
    height:    200px;
}

.y {
    animation: y 4s linear 26s infinite alternate;
}

@keyframes x {
    100% {
        transform: translateX(calc(100vw - 200px));
    }
}

@keyframes y {
    100% {
        transform: translateY(calc(100vh - 200px));
    }
}

@keyframes bottom-up {
    from {
        bottom: -500px;
    }
    to {
        bottom: 0;
    }
}

@keyframes top-down {
    from {
        top: -500px;
    }
    to {
        top: 0;
    }
}

@keyframes spin {
    from {
        transform:rotate(0deg);
    }
    to {
        transform:rotate(360deg);
    }
}