@media (hover:none) and (pointer:coarse) {
	@media only screen and (max-width:49.99em) {
		body>* {
			width: 320px
		}
		
		.snowflakes {
			display: none; 
		}
	}

	@media only screen and (min-width:50em) and (max-width:59.99em) {
		body>* {
			width: 100%
		}
		
		.snowflakes {
			display: none; 
		}
	}

	@media only screen and (min-width:60em) {
		body>* {
			width: 980px
		}
	}
}

@media (hover:hover) and (pointer:fine) {
	body>* {
		width: 980px
	}
}

html {
	margin-left: calc(100vw - 100%);
}

input[type="radio"],
input[type="checkbox"] {
	display: none
}

input[type=date] {
	font-family: Arial
}

a,
a:link,
a:visited,
a:active {
	color: inherit;
	text-decoration: none
}

body>* {
	margin: auto
}

span {
	font-weight: bold
}

html {
	overflow: auto;
	scrollbar-width: thin;
	scrollbar-color: steelblue mediumspringgreen
}

html::-webkit-scrollbar {
	height: 1vw;
	width: 1vw;
}

html::-webkit-scrollbar-thumb {
	background-color: steelblue;
}

html::-webkit-scrollbar-track {
	background-color: mediumspringgreen;
}

@keyframes body-animation {
	0% {
		background-color: white;
		background-image: none
	}

	100% {
		background-image: url("https://salpeter.hu/pictures/blurred-lanterns.png");
		background-repeat: no-repeat;
		--bgw: 1008;
		--bgh: 1008;
		--bgscale: max(calc(100vh / var(--bgh)), calc(100vw / var(--bgw)));
		background-size: calc(var(--bgw) * var(--bgscale)) calc(var(--bgh) * var(--bgscale));
		background-attachment: fixed;
	}
}


@keyframes content-animation {
	0% {
		opacity: 0
	}

	50% {
		opacity: 0
	}

	100% {
		opacity: 1
	}
}

body {
	margin: 0;
	font-family: Arial;
	background-image: url("https://salpeter.hu/pictures/blurred-lanterns.png");
	background-repeat: no-repeat;
	--bgw: 1008;
	--bgh: 1008;
	--bgscale: max(calc(100vh / var(--bgh)), calc(100vw / var(--bgw)));
	background-size: calc(var(--bgw) * var(--bgscale)) calc(var(--bgh) * var(--bgscale));
	background-attachment: fixed;
	animation: 0.3s body-animation linear
}

body>*:not(.transition) {
	animation: 0.3s content-animation linear
}

* {
	box-sizing: border-box;
}

*[tabindex="-1"]:focus {
	outline: none;
}

.no-js-loading-wrap,
#loading-wrap {
	width: 100vw;
    height: 100vh;
	display: none;
    justify-content: center;
    align-items: center;
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(255, 255, 255, 0.5);
	z-index: 100
}

.loading {
	width: 3em;
	height: 3em;
	border-radius: 3em;
	transform: rotate(45deg);
	animation: loading 2s linear;
	animation-iteration-count: infinite;
}

@keyframes loading {
	0% {
		box-shadow: 7px 7px 1px darkorange inset
	}

	25% {
		transform: rotate(135deg);
		box-shadow: 4px 4px 1px green inset
	}

	50% {
		transform: rotate(225deg);
		box-shadow: 1px 1px 1px blue inset
	}

	75% {
		transform: rotate(315deg);
		box-shadow: 4px 4px 1px green inset
	}

	100% {
		transform: rotate(405deg);
		box-shadow: 7px 7px 1px darkorange inset
	}
}

.link {
	text-decoration: underline;
	cursor: pointer
}

.disabled-link {
	pointer-events: none;
	cursor: normal;
}

.announcement-green {
	border: 3px solid #BADA55;
	background-color: #DAEDFF;
	padding: 0.5em;
}

.announcement-green h2 {
	font-size: 1.3em;
	line-height: 1.5em;
	margin: 0;
	text-align: center;
}

.announcement-green p {
	margin: 0;
	line-height: 1.2em
}

.purpleborder {
	border: 1px solid #6B1DF3;
	padding: 0.5em;
	border-radius: 0.4em;
}

.transition {
	position: fixed;
	z-index: 100;
	pointer-events: none
}
	
.transitionY {
	transform: scaleY(0);
}
	
.arrow-left {
	width: 0; 
	height: 0; 
	border-top: 100vh solid transparent;
	border-right:100vw solid palegreen;
	border-bottom: 0;
	border-left: 0;
	top: 0;
	right: 0;
	transform-origin: right;
	transform: scaleX(0);
	animation: 0.4s left-arrow linear;
}
	
.arrow-right {
	width: 0; 
	height: 0; 
	border-bottom: 101vh solid transparent;
	border-left: 100vw solid powderblue;
	border-top: 0;
	top: 0;
	left: 0;
	transform-origin: left;
	transform: scaleX(0);
	animation: 0.4s right-arrow linear;
}

@keyframes left-arrow {
	0% {
		transform-origin: bottom;
		border-right-color: white;
		transform: scaleY(1);
	}
	
	100% {
		transform-origin: bottom;
		border-right-color: palegreen;
		transform: scaleY(0);
	}
}

@keyframes right-arrow {
	0% {
		transform-origin: top;
		border-left-color: white;
		transform: scaleY(1);
	}
	
	100% {
		transform-origin: top;
		border-left-color: powderblue;
		transform: scaleY(0);
	}
}
	
.transitionX {
	transform: scaleX(1);
	border-left-color: white;
	border-right-color: white;
	transition: border-color 0.3s linear, transform 0.3s linear;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0,0,0,0);
  border: 0;
}

.snowflakes {
	position: fixed;
	top: 0;
	left: 0;
}

.snowflake {
	width: 5px;
	height: 5px;
	background: white;
	border-radius: 50%;
}

@-webkit-keyframes snowflakes-fall {
	0% {
		top: -10%
	}

	100% {
		top: 100%
	}
}

@-webkit-keyframes snowflakes-shake {
	0% {
		-webkit-transform: translateX(0px);
		transform: translateX(0px)
	}

	50% {
		-webkit-transform: translateX(20px);
		transform: translateX(20px)
	}

	100% {
		-webkit-transform: translateX(0px);
		transform: translateX(0px)
	}
}

@keyframes snowflakes-fall {
	0% {
		top: -10%
	}

	100% {
		top: 100%
	}
}

@keyframes snowflakes-shake {
	0% {
		transform: translateX(0px)
	}

	50% {
		transform: translateX(20px)
	}

	100% {
		transform: translateX(0px)
	}
}

.snowflake {
	position: fixed;
	top: -10%;
	z-index: 95;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	cursor: default;
	-webkit-animation-name: snowflakes-fall, snowflakes-shake;
	-webkit-animation-duration: 10s, 3s;
	-webkit-animation-timing-function: linear, ease-in-out;
	-webkit-animation-iteration-count: infinite, infinite;
	-webkit-animation-play-state: running, running;
	animation-name: snowflakes-fall, snowflakes-shake;
	animation-duration: 10s, 3s;
	animation-timing-function: linear, ease-in-out;
	animation-iteration-count: infinite, infinite;
	animation-play-state: running, running
}

.snowflake:nth-of-type(0) {
	left: 1%;
	-webkit-animation-delay: 0s, 0s;
	animation-delay: 0s, 0s
}

.snowflake:nth-of-type(1) {
	left: 2%;
	-webkit-animation-delay: 1s, 1s;
	animation-delay: 1s, 1s
}

.snowflake:nth-of-type(2) {
	left: 3%;
	-webkit-animation-delay: 6s, .5s;
	animation-delay: 6s, .5s
}

.snowflake:nth-of-type(3) {
	left: 4%;
	-webkit-animation-delay: 4s, 2s;
	animation-delay: 4s, 2s
}

.snowflake:nth-of-type(4) {
	left: 5%;
	-webkit-animation-delay: 2s, 2s;
	animation-delay: 2s, 2s
}

.snowflake:nth-of-type(5) {
	left: 6%;
	-webkit-animation-delay: 8s, 3s;
	animation-delay: 8s, 3s
}

.snowflake:nth-of-type(6) {
	left: 7%;
	-webkit-animation-delay: 6s, 2s;
	animation-delay: 6s, 2s
}

.snowflake:nth-of-type(7) {
	left: 8%;
	-webkit-animation-delay: 2.5s, 1s;
	animation-delay: 2.5s, 1s
}

.snowflake:nth-of-type(8) {
	left: 9%;
	-webkit-animation-delay: 1s, 0s;
	animation-delay: 1s, 0s
}

.snowflake:nth-of-type(9) {
	left: 10%;
	-webkit-animation-delay: 3s, 1.5s;
	animation-delay: 3s, 1.5s
}

.snowflake:nth-of-type(10) {
	right: 1%;
	-webkit-animation-delay: 0s, 0s;
	animation-delay: 0s, 0s
}

.snowflake:nth-of-type(11) {
	right: 2%;
	-webkit-animation-delay: 1s, 1s;
	animation-delay: 1s, 1s
}

.snowflake:nth-of-type(12) {
	right: 3%;
	-webkit-animation-delay: 6s, .5s;
	animation-delay: 6s, .5s
}

.snowflake:nth-of-type(13) {
	right: 4%;
	-webkit-animation-delay: 4s, 2s;
	animation-delay: 4s, 2s
}

.snowflake:nth-of-type(14) {
	right: 5%;
	-webkit-animation-delay: 2s, 2s;
	animation-delay: 2s, 2s
}

.snowflake:nth-of-type(15) {
	right: 6%;
	-webkit-animation-delay: 8s, 3s;
	animation-delay: 8s, 3s
}

.snowflake:nth-of-type(16) {
	right: 7%;
	-webkit-animation-delay: 6s, 2s;
	animation-delay: 6s, 2s
}

.snowflake:nth-of-type(17) {
	right: 8%;
	-webkit-animation-delay: 2.5s, 1s;
	animation-delay: 2.5s, 1s
}

.snowflake:nth-of-type(18) {
	right: 9%;
	-webkit-animation-delay: 1s, 0s;
	animation-delay: 1s, 0s
}

.snowflake:nth-of-type(19) {
	right: 10%;
	-webkit-animation-delay: 3s, 1.5s;
	animation-delay: 3s, 1.5s
}