body,
html {
	height: 100%;
	margin: 0;
}

body {
	background-image: url("/images/background.jpg");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
}

p {
	text-align: center;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
	color: #fff;
	font-size: 24px;
	margin-top: 100px;
}

p.code {
	font-size: 72px;
	font-weight: 600;
	line-height: 0.8;
	border-bottom: 2px solid #fff;
	padding: 0 40px 30px;
	margin-block-end: 20px;
}

p.error {
	font-size: 28px;
	margin: 0;
	padding: 0 60px;
}

p.page {
	position: fixed;
	top: 40px;
	margin-top: 0px;
}

p.title {
	font-size: 48px;
	font-weight: 600;
	line-height: 0.8;
	border-bottom: 2px solid #fff;
	padding: 15px 30px 30px;
	margin-block-end: 20px;
	}

p.text {
	font-size: 40px;
	font-weight: 400;
	margin: 0;
	padding: 0 60px;
}

span.bold {
	font-style: italic;
	font-weight: 900;
}

span.italic {
	font-style: italic;
}

p.contact {
	position: fixed;
	bottom: 40px;
	margin-bottom: 0px;
}

a,
a:visited {
	color: #fff;
	text-decoration-line: none;
}

div.animate {
	animation: animate 4s linear infinite;
	background: linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1), rgba(255, 255, 255, 0));
	background-repeat: no-repeat;
	background-size: 80%;
	-webkit-background-clip: text;
	-webkit-text-fill-color: rgba(255, 255, 255, 0);
}

/*
div.animate:hover {
	animation-play-state: paused;
}
*/

div.animate:hover {
	animation: none !important;
	-webkit-text-fill-color: unset !important;
}

@keyframes animate {
  0% {
    background-position: -400%;
  }
  100% {
    background-position: 400%;
  }
}
