@font-face {
	font-family:museo sans;font-weight:300;font-style:normal;src:url(/assets/fonts/museo-sans-300.woff2) format("woff2"),url(/assets/fonts/museo-sans-300.woff) format("woff")
}

@font-face {
	font-family:museo sans cryl;font-weight:300;font-style:normal;src:url(/assets/fonts/museo-sans-cyrl-300.woff2) format("woff2"),url(/assets/fonts/museo-sans-cyrl-300.woff) format("woff")
}

html,body,div,span,h1,h2,h3,p,img,ul,li,section,audio,video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	vertical-align: baseline;
	background: 0 0
}

body {
	font: 17px museo sans,sans-serif;
	font-weight: 300;
	text-align: center;
	line-height: 1.4;
	color: #fff;
	overflow: hidden;
	background-color: #000;
	width: 100%;
	height: 100%;
	-webkit-text-size-adjust: none;
	-ms-text-size-adjust: none;
	text-size-adjust: none
}

html[lang=ru] body {
	font-family: museo sans cryl,sans-serif
}

a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	text-decoration: none;
	color: #fff;
	background-color: transparent
}

a:hover,a:active,a:focus {
	outline: none
}

a:active {
	color: #fff
}

a:link {
	-webkit-tap-highlight-color: transparent;
	tap-highlight-color: transparent
}

.hidden {
	display: none;
	visibility: hidden
}

.strobe {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	cursor: none;
	-webkit-background-size: 100% 100%;
	-moz-background-size: 100% 100%;
	background-size: 100% 100%;
	-webkit-tap-highlight-color: transparent;
	tap-highlight-color: transparent;
	z-index: 2
}

.timer {
	position: absolute;
	left: 50%;
	top: 50%;
	width: 20px;
	height: 20px;
	line-height: 20px;
	margin-left: -10px;
	margin-top: -10px;
	font-size: 12px;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	pointer-events: none;
	z-index: 3
}

.button {
	display: inline-block;
	cursor: pointer;
	margin: 15px 5px;
	padding: 1px;
	line-height: 100%;
	background-color: #fff;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	-webkit-tap-highlight-color: transparent;
	tap-highlight-color: transparent
}

.button p {
	text-transform: uppercase;
	margin: 0;
	padding: 12px 25px 10px;
	background-color: #000
}

.app-store {
	margin: 40px auto;
	width: 240px;
	height: 80px;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	border-radius: 12.5px
}

.app-store span {
	display: none
}

.app-store {
	background-image: url(/assets/images/app-store-badge-en.svg)
}

html[lang=de] .app-store {
	background-image: url(/assets/images/app-store-badge-de.svg)
}

html[lang=es] .app-store {
	background-image: url(/assets/images/app-store-badge-es.svg)
}

html[lang=fr] .app-store {
	background-image: url(/assets/images/app-store-badge-fr.svg);
	width: 254px
}

html[lang=it] .app-store {
	background-image: url(/assets/images/app-store-badge-it.svg)
}

html[lang=ru] .app-store {
	background-image: url(/assets/images/app-store-badge-ru.svg)
}

html[lang=pt-BR] .app-store {
	background-image: url(/assets/images/app-store-badge-pt.svg)
}

html[lang=ja] .app-store {
	background-image: url(/assets/images/app-store-badge-ja.svg);
	width: 218px
}

html[lang=zh-CN] .app-store {
	background-image: url(/assets/images/app-store-badge-zh.svg);
	width: 218px
}

@-webkit-keyframes stripes-anim {
	0% {
		background-position: 0 0
	}

	100% {
		background-position: 60px 30px
	}
}

@keyframes stripes-anim {
	0% {
		background-position: 0 0
	}

	100% {
		background-position: 60px 30px
	}
}

.stripes,.button:active,.button:hover {
	background-color: #fff;
	-webkit-background-size: 30px 30px;
	-moz-background-size: 30px 30px;
	background-size: 30px 30px;
	background-image: -webkit-linear-gradient( 45deg,#000 25%,#fff 25%,#fff 50%,#000 50%,#000 75%,#fff 75%,#fff );
	background-image: linear-gradient( 45deg,#000 25%,#fff 25%,#fff 50%,#000 50%,#000 75%,#fff 75%,#fff );
	-webkit-animation: stripes-anim 333ms linear infinite;
	animation: stripes-anim 333ms linear infinite
}

.button:active p {
	background-color: transparent
}

h1 {
	text-transform: uppercase;
	font-size: 18px;
	font-weight: 300;
	width: 592px;
	height: 196px;
	margin: 0 auto 60px
}

h1 span {
	display: none;
	position: relative
}

h1 .stripes {
	display: block;
	width: 140px;
	height: 140px;
	left: 276px;
	top: 2px
}

h1 .title {
	display: block;
	width: 592px;
	height: 196px;
	top: -140px;
	background-image: url(assets/images/title.svg);
	-webkit-background-size: 100% 100%;
	-moz-background-size: 100% 100%;
	background-size: 100% 100%
}

h2 {
	font-size: 14px;
	font-weight: 300;
	margin: 0
}

section {
	position: absolute;
	display: block;
	top: 50%;
	width: 100%
}

section>p {
	margin: 30px auto;
	padding: 0 10px
}

.alt {
	margin-top: -160px
}

.alt.ios {
	margin-top: -235px
}

.alt.js {
	display: block;
	margin-top: 24px
}

.alt.webgl span,.alt a {
	text-decoration: underline
}

.alt a.button,.alt a:active {
	text-decoration: none
}

.intro {
	margin-top: -260px
}

.intro>p {
	max-width: 380px
}

.instructions {
	margin-top: -205px
}

.instructions>p {
	max-width: 450px
}

.warning {
	font-size: 14px;
	margin-top: 70px
}

.warning>p {
	margin: 0 auto
}

.warning h2 {
	text-transform: uppercase;
	text-decoration: underline
}

.outro {
	margin-top: -176px
}

.outro h2 {
	font-size: 26px;
	margin-bottom: 60px
}

.outro>p {
	margin-bottom: 0
}

.outro .button {
	margin: 9px 5px;
	width: 200px;
}

.outro .app {
	max-width: 400px
}

.alt.webgl h1,.intro h1,.intro h1 .stripes,.intro>p,.instructions>p,.warning,.outro>p,.outro h2,.button {
	opacity: 0;
	-webkit-transition: opacity 400ms ease,-webkit-transform 400ms ease-out;
	-moz-transition: opacity 400ms ease,-moz-transform 400ms ease-out;
	transition: opacity 400ms ease,transform 400ms ease-out
}

.strobe {
	opacity: 0;
	-webkit-transition: opacity 250ms ease;
	-moz-transition: opacity 250ms ease;
	transition: opacity 250ms ease
}

.outro h2 {
	-webkit-transition: opacity 400ms ease,-webkit-transform 600ms ease-in-out;
	-moz-transition: opacity 400ms ease,-moz-transform 600ms ease-in-out;
	transition: opacity 400ms ease,transform 600ms ease-in-out
}

.outro h2.down {
	cursor: none;
	-webkit-user-select: none;
	user-select: none;
	-webkit-transform: translateY(160px);
	-moz-transform: translateY(160px);
	transform: translateY(160px)
}

.fade {
	opacity: 1!important
}

.left {
	-webkit-transform: translateX(-12px);
	-moz-transform: translateX(-12px);
	transform: translateX(-12px)
}

.right {
	-webkit-transform: translateX(12px);
	-moz-transform: translateX(12px);
	transform: translateX(12px)
}

.timer,.font-fix section {
	-webkit-font-smoothing: antialiased;
	-webkit-text-stroke: .5px #fff;
	-moz-osx-font-smoothing: grayscale;
	text-shadow: 0 0 0
}

.ad.hyperscape {
	position: absolute;
	left: 0;
	bottom: 0;
	bottom: constant(safe-area-inset-bottom);
	bottom: env(safe-area-inset-bottom);
	width: 100%;
	height: 75px
}

.ad.hyperscape>div {
	margin: 0 auto;
	max-width: 960px
}

.mobile .neave {
	z-index: 1
}

@media(min-width:961px) and (min-height:611px) {
	.ad.hyperscape {
		bottom: 16px
	}

	.ad.hyperscape iframe {
		border-radius: 5px;
		overflow: hidden
	}
}

@media(max-width:680px),(max-height:610px) {
	body {
		font-size: 17px
	}

	h1 {
		width: 296px;
		height: 98px;
		margin-bottom: 50px
	}

	h1 .stripes {
		width: 70px;
		height: 70px;
		left: 138px;
		top: 1px
	}

	h1 .title {
		width: 296px;
		height: 98px;
		top: -70px
	}

	.alt {
		margin-top: -100px
	}

	.alt.ios {
		margin-top: -165px
	}

	.intro {
		margin-top: -180px
	}

	.intro>p {
		max-width: 360px
	}

	.instructions {
		margin-top: -197px
	}

	.instructions>p {
		max-width: 440px
	}

	.warning>p {
		max-width: 240px
	}

	.ad.hyperscape {
		bottom: 0
	}
}

@media(max-width:360px),(max-height:480px) {
	.outro {
		margin-top: -90px
	}

	.outro h2 {
		margin-bottom: 43px
	}

	.outro h2.down {
		-webkit-transform: translateY(70px);
		-moz-transform: translateY(70px);
		transform: translateY(70px)
	}

	.outro .button {
		margin-left: 2px;
		margin-right: 2px
	}

	.ad.hyperscape,.outro .app {
		display: none
	}
}

@media(max-width:430px) and (max-height:480px) {
	.neave {
		display: none
	}
}

@media(max-width:360px),(max-height:380px) {
	.intro h1,.warning {
		display: none
	}

	.neave {
		display: block
	}

	.alt {
		margin-top: -85px
	}

	.alt h1 {
		margin-bottom: 25px
	}

	.alt.ios {
		margin-top: -140px
	}

	.alt>p {
		margin: 10px auto
	}

	.intro,.instructions {
		margin-top: -130px
	}

	.outro .button.repeat {
		margin-top: 0
	}
}

@media(max-width:320px) and (max-height:340px) {
	.neave {
		display: none
	}
}