

html, body {
	margin: 0;
	padding: 0;

	font-family: "Rokkitt", serif;

}

.main-title {
	font-size: 50px;
	font-weight: 700;
	text-align: center;
	color: #63ff86;
	margin-bottom: 10px;
	text-shadow: 1px 2px 5px rgba(0, 0, 0, .6);
}

.subtitle {
	text-align: center;
	color: #fff;
	margin-bottom: 2.5rem;
	font-size: 15px;
	text-shadow: 1px 1px 2px #000;
}

body.no-scroll {
	overflow: hidden;
}

@keyframes btnflash {
  0%, 100% {
    filter: brightness(1.04);
    box-shadow: 0 0 4px 0 #b6eaff;
  }
  50% {
    filter: brightness(1.19);
    box-shadow: 0 0 8px 2px #e3f7ff;
  }
}
		.animate-btnflash {
    animation: btnflash 1.2s infinite alternate;
  }

.psp-effect {
	position: fixed;
	height: 100%;
	width: 100%;
	top: 0;
	left: 0;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	-webkit-perspective: 1000px;
	perspective: 1000px;
	z-index: 100000;
	pointer-events: none;
}

.psp-effect .psp-star {
	width: 8px;
	height: 8px;
	background: #fff;
	position: absolute;
	border-radius: 50%;
	opacity: .5;
}

.psp-star:nth-child(1) {
	-webkit-transform: translateX(68vw) translateY(-8px);
	transform: translateX(68vw) translateY(-8px);
	-webkit-animation: anim1 4s infinite;
	animation: anim1 4s infinite;
	-webkit-animation-delay: .3s;
	animation-delay: .3s;
}

@-webkit-keyframes anim1 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(88vw) translateY(100vh);
		transform: translateX(88vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim1 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(88vw) translateY(100vh);
		transform: translateX(88vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(2) {
	-webkit-transform: translateX(57vw) translateY(-8px);
	transform: translateX(57vw) translateY(-8px);
	-webkit-animation: anim2 4s infinite;
	animation: anim2 4s infinite;
	-webkit-animation-delay: .6s;
	animation-delay: .6s;
}

@-webkit-keyframes anim2 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(77vw) translateY(100vh);
		transform: translateX(77vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim2 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(77vw) translateY(100vh);
		transform: translateX(77vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(3) {
	-webkit-transform: translateX(70vw) translateY(-8px);
	transform: translateX(70vw) translateY(-8px);
	-webkit-animation: anim3 4s infinite;
	animation: anim3 4s infinite;
	-webkit-animation-delay: .9s;
	animation-delay: .9s;
}

@-webkit-keyframes anim3 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(90vw) translateY(100vh);
		transform: translateX(90vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim3 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(90vw) translateY(100vh);
		transform: translateX(90vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(4) {
	-webkit-transform: translateX(54vw) translateY(-8px);
	transform: translateX(54vw) translateY(-8px);
	-webkit-animation: anim4 4s infinite;
	animation: anim4 4s infinite;
	-webkit-animation-delay: 1.2s;
	animation-delay: 1.2s;
}

@-webkit-keyframes anim4 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(74vw) translateY(100vh);
		transform: translateX(74vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim4 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(74vw) translateY(100vh);
		transform: translateX(74vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(5) {
	-webkit-transform: translateX(85vw) translateY(-8px);
	transform: translateX(85vw) translateY(-8px);
	-webkit-animation: anim5 4s infinite;
	animation: anim5 4s infinite;
	-webkit-animation-delay: 1.5s;
	animation-delay: 1.5s;
}

@-webkit-keyframes anim5 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(105vw) translateY(100vh);
		transform: translateX(105vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim5 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(105vw) translateY(100vh);
		transform: translateX(105vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(6) {
	-webkit-transform: translateX(59vw) translateY(-8px);
	transform: translateX(59vw) translateY(-8px);
	-webkit-animation: anim6 4s infinite;
	animation: anim6 4s infinite;
	-webkit-animation-delay: 1.8s;
	animation-delay: 1.8s;
}

@-webkit-keyframes anim6 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(79vw) translateY(100vh);
		transform: translateX(79vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim6 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(79vw) translateY(100vh);
		transform: translateX(79vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(7) {
	-webkit-transform: translateX(33vw) translateY(-8px);
	transform: translateX(33vw) translateY(-8px);
	-webkit-animation: anim7 4s infinite;
	animation: anim7 4s infinite;
	-webkit-animation-delay: 2.1s;
	animation-delay: 2.1s;
}

@-webkit-keyframes anim7 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(53vw) translateY(100vh);
		transform: translateX(53vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim7 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(53vw) translateY(100vh);
		transform: translateX(53vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(8) {
	-webkit-transform: translateX(82vw) translateY(-8px);
	transform: translateX(82vw) translateY(-8px);
	-webkit-animation: anim8 4s infinite;
	animation: anim8 4s infinite;
	-webkit-animation-delay: 2.4s;
	animation-delay: 2.4s;
}

@-webkit-keyframes anim8 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(102vw) translateY(100vh);
		transform: translateX(102vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim8 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(102vw) translateY(100vh);
		transform: translateX(102vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(9) {
	-webkit-transform: translateX(24vw) translateY(-8px);
	transform: translateX(24vw) translateY(-8px);
	-webkit-animation: anim9 4s infinite;
	animation: anim9 4s infinite;
	-webkit-animation-delay: 2.7s;
	animation-delay: 2.7s;
}

@-webkit-keyframes anim9 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(44vw) translateY(100vh);
		transform: translateX(44vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim9 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(44vw) translateY(100vh);
		transform: translateX(44vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(10) {
	-webkit-transform: translateX(54vw) translateY(-8px);
	transform: translateX(54vw) translateY(-8px);
	-webkit-animation: anim10 4s infinite;
	animation: anim10 4s infinite;
	-webkit-animation-delay: 3s;
	animation-delay: 3s;
}

@-webkit-keyframes anim10 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(74vw) translateY(100vh);
		transform: translateX(74vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim10 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(74vw) translateY(100vh);
		transform: translateX(74vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(11) {
	-webkit-transform: translateX(11vw) translateY(-8px);
	transform: translateX(11vw) translateY(-8px);
	-webkit-animation: anim11 4s infinite;
	animation: anim11 4s infinite;
	-webkit-animation-delay: 3.3s;
	animation-delay: 3.3s;
}

@-webkit-keyframes anim11 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(31vw) translateY(100vh);
		transform: translateX(31vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim11 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(31vw) translateY(100vh);
		transform: translateX(31vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(12) {
	-webkit-transform: translateX(14vw) translateY(-8px);
	transform: translateX(14vw) translateY(-8px);
	-webkit-animation: anim12 4s infinite;
	animation: anim12 4s infinite;
	-webkit-animation-delay: 3.6s;
	animation-delay: 3.6s;
}

@-webkit-keyframes anim12 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(34vw) translateY(100vh);
		transform: translateX(34vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim12 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(34vw) translateY(100vh);
		transform: translateX(34vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(13) {
	-webkit-transform: translateX(66vw) translateY(-8px);
	transform: translateX(66vw) translateY(-8px);
	-webkit-animation: anim13 4s infinite;
	animation: anim13 4s infinite;
	-webkit-animation-delay: 3.9s;
	animation-delay: 3.9s;
}

@-webkit-keyframes anim13 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(86vw) translateY(100vh);
		transform: translateX(86vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim13 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(86vw) translateY(100vh);
		transform: translateX(86vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(14) {
	-webkit-transform: translateX(64vw) translateY(-8px);
	transform: translateX(64vw) translateY(-8px);
	-webkit-animation: anim14 4s infinite;
	animation: anim14 4s infinite;
	-webkit-animation-delay: 4.2s;
	animation-delay: 4.2s;
}

@-webkit-keyframes anim14 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(84vw) translateY(100vh);
		transform: translateX(84vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim14 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(84vw) translateY(100vh);
		transform: translateX(84vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(15) {
	-webkit-transform: translateX(3vw) translateY(-8px);
	transform: translateX(3vw) translateY(-8px);
	-webkit-animation: anim15 4s infinite;
	animation: anim15 4s infinite;
	-webkit-animation-delay: 4.5s;
	animation-delay: 4.5s;
}

@-webkit-keyframes anim15 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(23vw) translateY(100vh);
		transform: translateX(23vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim15 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(23vw) translateY(100vh);
		transform: translateX(23vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(16) {
	-webkit-transform: translateX(78vw) translateY(-8px);
	transform: translateX(78vw) translateY(-8px);
	-webkit-animation: anim16 4s infinite;
	animation: anim16 4s infinite;
	-webkit-animation-delay: 4.8s;
	animation-delay: 4.8s;
}

@-webkit-keyframes anim16 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(98vw) translateY(100vh);
		transform: translateX(98vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim16 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(98vw) translateY(100vh);
		transform: translateX(98vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(17) {
	-webkit-transform: translateX(98vw) translateY(-8px);
	transform: translateX(98vw) translateY(-8px);
	-webkit-animation: anim17 4s infinite;
	animation: anim17 4s infinite;
	-webkit-animation-delay: 5.1s;
	animation-delay: 5.1s;
}

@-webkit-keyframes anim17 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(118vw) translateY(100vh);
		transform: translateX(118vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim17 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(118vw) translateY(100vh);
		transform: translateX(118vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(18) {
	-webkit-transform: translateX(34vw) translateY(-8px);
	transform: translateX(34vw) translateY(-8px);
	-webkit-animation: anim18 4s infinite;
	animation: anim18 4s infinite;
	-webkit-animation-delay: 5.4s;
	animation-delay: 5.4s;
}

@-webkit-keyframes anim18 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(54vw) translateY(100vh);
		transform: translateX(54vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim18 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(54vw) translateY(100vh);
		transform: translateX(54vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(19) {
	-webkit-transform: translateX(54vw) translateY(-8px);
	transform: translateX(54vw) translateY(-8px);
	-webkit-animation: anim19 4s infinite;
	animation: anim19 4s infinite;
	-webkit-animation-delay: 5.7s;
	animation-delay: 5.7s;
}

@-webkit-keyframes anim19 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(74vw) translateY(100vh);
		transform: translateX(74vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim19 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(74vw) translateY(100vh);
		transform: translateX(74vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(20) {
	-webkit-transform: translateX(71vw) translateY(-8px);
	transform: translateX(71vw) translateY(-8px);
	-webkit-animation: anim20 4s infinite;
	animation: anim20 4s infinite;
	-webkit-animation-delay: 6s;
	animation-delay: 6s;
}

@-webkit-keyframes anim20 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(91vw) translateY(100vh);
		transform: translateX(91vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim20 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(91vw) translateY(100vh);
		transform: translateX(91vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(21) {
	-webkit-transform: translateX(100vw) translateY(-8px);
	transform: translateX(100vw) translateY(-8px);
	-webkit-animation: anim21 4s infinite;
	animation: anim21 4s infinite;
	-webkit-animation-delay: 6.3s;
	animation-delay: 6.3s;
}

@-webkit-keyframes anim21 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(120vw) translateY(100vh);
		transform: translateX(120vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim21 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(120vw) translateY(100vh);
		transform: translateX(120vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(22) {
	-webkit-transform: translateX(26vw) translateY(-8px);
	transform: translateX(26vw) translateY(-8px);
	-webkit-animation: anim22 4s infinite;
	animation: anim22 4s infinite;
	-webkit-animation-delay: 6.6s;
	animation-delay: 6.6s;
}

@-webkit-keyframes anim22 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(46vw) translateY(100vh);
		transform: translateX(46vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim22 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(46vw) translateY(100vh);
		transform: translateX(46vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(23) {
	-webkit-transform: translateX(89vw) translateY(-8px);
	transform: translateX(89vw) translateY(-8px);
	-webkit-animation: anim23 4s infinite;
	animation: anim23 4s infinite;
	-webkit-animation-delay: 6.9s;
	animation-delay: 6.9s;
}

@-webkit-keyframes anim23 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(109vw) translateY(100vh);
		transform: translateX(109vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim23 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(109vw) translateY(100vh);
		transform: translateX(109vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(24) {
	-webkit-transform: translateX(42vw) translateY(-8px);
	transform: translateX(42vw) translateY(-8px);
	-webkit-animation: anim24 4s infinite;
	animation: anim24 4s infinite;
	-webkit-animation-delay: 7.2s;
	animation-delay: 7.2s;
}

@-webkit-keyframes anim24 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(62vw) translateY(100vh);
		transform: translateX(62vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim24 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(62vw) translateY(100vh);
		transform: translateX(62vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(25) {
	-webkit-transform: translateX(3vw) translateY(-8px);
	transform: translateX(3vw) translateY(-8px);
	-webkit-animation: anim25 4s infinite;
	animation: anim25 4s infinite;
	-webkit-animation-delay: 7.5s;
	animation-delay: 7.5s;
}

@-webkit-keyframes anim25 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(23vw) translateY(100vh);
		transform: translateX(23vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim25 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(23vw) translateY(100vh);
		transform: translateX(23vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(26) {
	-webkit-transform: translateX(24vw) translateY(-8px);
	transform: translateX(24vw) translateY(-8px);
	-webkit-animation: anim26 4s infinite;
	animation: anim26 4s infinite;
	-webkit-animation-delay: 7.8s;
	animation-delay: 7.8s;
}

@-webkit-keyframes anim26 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(44vw) translateY(100vh);
		transform: translateX(44vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim26 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(44vw) translateY(100vh);
		transform: translateX(44vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(27) {
	-webkit-transform: translateX(19vw) translateY(-8px);
	transform: translateX(19vw) translateY(-8px);
	-webkit-animation: anim27 4s infinite;
	animation: anim27 4s infinite;
	-webkit-animation-delay: 8.1s;
	animation-delay: 8.1s;
}

@-webkit-keyframes anim27 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(39vw) translateY(100vh);
		transform: translateX(39vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim27 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(39vw) translateY(100vh);
		transform: translateX(39vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(28) {
	-webkit-transform: translateX(81vw) translateY(-8px);
	transform: translateX(81vw) translateY(-8px);
	-webkit-animation: anim28 4s infinite;
	animation: anim28 4s infinite;
	-webkit-animation-delay: 8.4s;
	animation-delay: 8.4s;
}

@-webkit-keyframes anim28 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(101vw) translateY(100vh);
		transform: translateX(101vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim28 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(101vw) translateY(100vh);
		transform: translateX(101vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(29) {
	-webkit-transform: translateX(40vw) translateY(-8px);
	transform: translateX(40vw) translateY(-8px);
	-webkit-animation: anim29 4s infinite;
	animation: anim29 4s infinite;
	-webkit-animation-delay: 8.7s;
	animation-delay: 8.7s;
}

@-webkit-keyframes anim29 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(60vw) translateY(100vh);
		transform: translateX(60vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim29 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(60vw) translateY(100vh);
		transform: translateX(60vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(30) {
	-webkit-transform: translateX(75vw) translateY(-8px);
	transform: translateX(75vw) translateY(-8px);
	-webkit-animation: anim30 4s infinite;
	animation: anim30 4s infinite;
	-webkit-animation-delay: 9s;
	animation-delay: 9s;
}

@-webkit-keyframes anim30 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(95vw) translateY(100vh);
		transform: translateX(95vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim30 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(95vw) translateY(100vh);
		transform: translateX(95vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(31) {
	-webkit-transform: translateX(73vw) translateY(-8px);
	transform: translateX(73vw) translateY(-8px);
	-webkit-animation: anim31 4s infinite;
	animation: anim31 4s infinite;
	-webkit-animation-delay: 9.3s;
	animation-delay: 9.3s;
}

@-webkit-keyframes anim31 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(93vw) translateY(100vh);
		transform: translateX(93vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim31 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(93vw) translateY(100vh);
		transform: translateX(93vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(32) {
	-webkit-transform: translateX(4vw) translateY(-8px);
	transform: translateX(4vw) translateY(-8px);
	-webkit-animation: anim32 4s infinite;
	animation: anim32 4s infinite;
	-webkit-animation-delay: 9.6s;
	animation-delay: 9.6s;
}

@-webkit-keyframes anim32 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(24vw) translateY(100vh);
		transform: translateX(24vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim32 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(24vw) translateY(100vh);
		transform: translateX(24vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(33) {
	-webkit-transform: translateX(97vw) translateY(-8px);
	transform: translateX(97vw) translateY(-8px);
	-webkit-animation: anim33 4s infinite;
	animation: anim33 4s infinite;
	-webkit-animation-delay: 9.9s;
	animation-delay: 9.9s;
}

@-webkit-keyframes anim33 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(117vw) translateY(100vh);
		transform: translateX(117vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim33 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(117vw) translateY(100vh);
		transform: translateX(117vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(34) {
	-webkit-transform: translateX(48vw) translateY(-8px);
	transform: translateX(48vw) translateY(-8px);
	-webkit-animation: anim34 4s infinite;
	animation: anim34 4s infinite;
	-webkit-animation-delay: 10.2s;
	animation-delay: 10.2s;
}

@-webkit-keyframes anim34 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(68vw) translateY(100vh);
		transform: translateX(68vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim34 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(68vw) translateY(100vh);
		transform: translateX(68vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(35) {
	-webkit-transform: translateX(44vw) translateY(-8px);
	transform: translateX(44vw) translateY(-8px);
	-webkit-animation: anim35 4s infinite;
	animation: anim35 4s infinite;
	-webkit-animation-delay: 10.5s;
	animation-delay: 10.5s;
}

@-webkit-keyframes anim35 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(64vw) translateY(100vh);
		transform: translateX(64vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim35 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(64vw) translateY(100vh);
		transform: translateX(64vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(36) {
	-webkit-transform: translateX(45vw) translateY(-8px);
	transform: translateX(45vw) translateY(-8px);
	-webkit-animation: anim36 4s infinite;
	animation: anim36 4s infinite;
	-webkit-animation-delay: 10.8s;
	animation-delay: 10.8s;
}

@-webkit-keyframes anim36 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(65vw) translateY(100vh);
		transform: translateX(65vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim36 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(65vw) translateY(100vh);
		transform: translateX(65vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(37) {
	-webkit-transform: translateX(69vw) translateY(-8px);
	transform: translateX(69vw) translateY(-8px);
	-webkit-animation: anim37 4s infinite;
	animation: anim37 4s infinite;
	-webkit-animation-delay: 11.1s;
	animation-delay: 11.1s;
}

@-webkit-keyframes anim37 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(89vw) translateY(100vh);
		transform: translateX(89vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim37 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(89vw) translateY(100vh);
		transform: translateX(89vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(38) {
	-webkit-transform: translateX(19vw) translateY(-8px);
	transform: translateX(19vw) translateY(-8px);
	-webkit-animation: anim38 4s infinite;
	animation: anim38 4s infinite;
	-webkit-animation-delay: 11.4s;
	animation-delay: 11.4s;
}

@-webkit-keyframes anim38 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(39vw) translateY(100vh);
		transform: translateX(39vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim38 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(39vw) translateY(100vh);
		transform: translateX(39vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(39) {
	-webkit-transform: translateX(71vw) translateY(-8px);
	transform: translateX(71vw) translateY(-8px);
	-webkit-animation: anim39 4s infinite;
	animation: anim39 4s infinite;
	-webkit-animation-delay: 11.7s;
	animation-delay: 11.7s;
}

@-webkit-keyframes anim39 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(91vw) translateY(100vh);
		transform: translateX(91vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim39 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(91vw) translateY(100vh);
		transform: translateX(91vw) translateY(100vh);
		opacity: 0;
	}
}

.psp-star:nth-child(40) {
	-webkit-transform: translateX(31vw) translateY(-8px);
	transform: translateX(31vw) translateY(-8px);
	-webkit-animation: anim40 4s infinite;
	animation: anim40 4s infinite;
	-webkit-animation-delay: 12s;
	animation-delay: 12s;
}

@-webkit-keyframes anim40 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(51vw) translateY(100vh);
		transform: translateX(51vw) translateY(100vh);
		opacity: 0;
	}
}

@keyframes anim40 {
	10% {
		opacity: .5;
	}
	
	12% {
		opacity: 1;
		-webkit-box-shadow: 0 0 3px 0 #fff;
		box-shadow: 0 0 3px 0 #fff;
	}
	
	15% {
		opacity: .5;
	}
	
	50% {
		opacity: 0;
	}
	
	100% {
		-webkit-transform: translateX(51vw) translateY(100vh);
		transform: translateX(51vw) translateY(100vh);
		opacity: 0;
	}
}

.particles {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	z-index: 200;
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
	overflow: hidden;
}

@-webkit-keyframes move {
	0% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 0;
	}
	
	10%, 90% {
		opacity: 1;
	}
	
	100% {
		-webkit-transform: translateY(45vw);
		transform: translateY(45vw);
		opacity: 0;
	}
}

@keyframes move {
	0% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 0;
	}
	
	10%, 90% {
		opacity: 1;
	}
	
	100% {
		-webkit-transform: translateY(45vw);
		transform: translateY(45vw);
		opacity: 0;
	}
}

@keyframes shake-fast {
	0%, 100% {
		transform: rotate(0);
	}
	
	20% {
		transform: rotate(15deg);
	}
	
	40% {
		transform: rotate(-15deg);
	}
	
	60% {
		transform: rotate(15deg);
	}
	
	80% {
		transform: rotate(-15deg);
	}
}

@keyframes fadeIn {
	from {
		opacity: 0;
		transform: translate(-50%, -48%) scale(.95);
	}
	
	to {
		opacity: 1;
		transform: translate(-50%, -50%) scale(1);
	}
}

@keyframes fadeOut {
	from {
		opacity: 1;
		transform: translate(-50%, -50%) scale(1);
	}
	
	to {
		opacity: 0;
		transform: translate(-50%, -48%) scale(.95);
	}
}

@keyframes popIn {
	from {
		opacity: 0;
		transform: scale(.8);
	}
	
	to {
		opacity: 1;
		transform: scale(1);
	}
}

@keyframes typing-dot {
	0%, 60%, 100% {
		transform: translateY(0);
	}
	
	30% {
		transform: translateY(-5px);
	}
}

@keyframes move-1 {
	50% {
		transform: translate(-50vw, -40vh) scale(2.5);
	}
}

@keyframes move-2 {
	45% {
		transform: translate(30vw, 20vh) scale(3);
	}
}

@keyframes move-3 {
	55% {
		transform: translate(-60vw, 10vh) scale(2.2);
	}
}

@keyframes move-4 {
	40% {
		transform: translate(20vw, -70vh) scale(4);
	}
}

@keyframes move-5 {
	60% {
		transform: translate(-80vw, -30vh) scale(2);
	}
}
@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

 .snap-container {
            scroll-snap-type: y mandatory;
            overflow-y: scroll;
            height: 100vh;
        }
        .snap-section {
            scroll-snap-align: start;
        }
        .parallax-content {
            opacity: 0;
            transform: translateY(50px);
            transition: opacity 0.8s ease-out, transform 0.8s ease-out;
            transition-delay: 0.2s;
        }
        section.is-visible .parallax-content {
            opacity: 1;
            transform: translateY(0);
        }
        .snap-container {
            -ms-overflow-style: none; 
            scrollbar-width: none;
        }
        .snap-container::-webkit-scrollbar {
            display: none;
        }
        .marquee-content { text-shadow: 1px 1px 2px rgba(0,0,0,0.7); }
        .tab-button.active { color: #34d399; border-color: #34d399; }
        .main-sub-tab-button.active { color: #34d399; border-color: #34d399; font-weight: 700; }
        .sub-tab-button.active { color: #6ee7b7; border-color: #6ee7b7; }
        
        @keyframes btnflash {
            0%, 100% { filter: brightness(1.04); box-shadow: 0 0 6px 0 #34d399; }
            50% { filter: brightness(1.19); box-shadow: 0 0 12px 3px #10b981; }
        }
		#hotline-btn {
			position: fixed; bottom: 10px; left: 50%; transform: translateX(-50%); display: flex; align-items: center; justify-content: center;
			width: 220px; color: #fff; text-shadow: 1px 1px 2px #000; padding: 6px 15px; border-radius: 9999px; text-decoration: none;
			font-weight: bold; font-size: 1.125rem; z-index: 1000; transition: all 0.3s ease;
			background: linear-gradient(to right, #10b981 0%, #059669 100%); 
            animation: btnflash 1.5s infinite alternate;
            border: 1px solid rgba(255,255,255,0.5);
		}
		
		#hotline-btn:hover { transform: translateX(-50%) scale(1.05); box-shadow: 0 8px 25px rgba(16, 185, 129, 0.4); }
		.phone-icon { width: 40px; height: 40px; margin-right: 10px; animation: shake-fast .8s infinite ease-in-out; }
		@keyframes shake-fast {
			0%, 100% { transform: rotate(0); } 20% { transform: rotate(15deg); } 40% { transform: rotate(-15deg); } 60% { transform: rotate(15deg); } 80% { transform: rotate(-15deg); }
		}
        
        .table-header-custom-bg { background-color: rgba(30, 41, 59, 0.5); color: #94a3b8; }
        .table-row-odd-bg { background-color: rgba(15, 23, 42, 0.3); }
        .table-row-even-bg { background-color: rgba(15, 23, 42, 0.5); }
        .price-cell-bg { background-color: rgba(16, 185, 129, 0.1); font-weight: 500; color: #6ee7b7; }
        
        @media (max-width : 768px ){
			#hotline-btn { padding: 4px 5px; border-radius: 20px; width: 170px; bottom: 5px; font-size: 1rem; left: 25%;}
	        .phone-icon { width: 30px; height: 30px;}
		}

		/* --- CSS NÂNG CẤP CHO GABBY CHATBOT (V2.2) --- */
		:root {
			--primary-font: 'Inter', sans-serif;
			--background-color: rgba(22, 28, 41, 0.5);
			--blur-effect: blur(15px);
			--border-color: rgba(255, 255, 255, 0.15);
			--text-color: #f0f0f0;
			--placeholder-color: #a0a0a0;
			--bot-bubble-bg: linear-gradient(to right, rgba(101,185,255, 0.5), rgba(177,210,255, 0.5));
			--user-bubble-bg: linear-gradient(to right, rgb(122,255,176), rgb(205,253,227));
			--send-btn-color: #00BFFF;
			--send-btn-hover-color: #009ACD;
		}
		#gabby-view {
			position: fixed; top: 50%; left: 50%;
			transform: translate(-50%, -50%);
			flex-direction: column; height: 70vh; max-height: 800px;
			width: 95vw; max-width: 580px; background: transparent;
			backdrop-filter: var(--blur-effect); -webkit-backdrop-filter: var(--blur-effect);
			border-radius: 24px; border: 1px solid var(--border-color);
			z-index: 10000; box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.37);
		}

		#gabby-view.opening {
			animation: fadeIn 0.4s ease-out forwards;
			display: flex;
		}
		#gabby-view.closing {
			animation: fadeOut 0.4s ease-in forwards;
			display: flex;
		}
		@keyframes fadeIn {
			from {
				opacity: 0;
				transform: translate(-50%, -48%) scale(0.95);
			}
			to {
				opacity: 1;
				transform: translate(-50%, -50%) scale(1);
			}
		}
		@keyframes fadeOut {
			from {
				opacity: 1;
				transform: translate(-50%, -50%) scale(1);
			}
			to {
				opacity: 0;
				transform: translate(-50%, -48%) scale(0.95);
			}
		}
		#gabby-response {
			flex-grow: 1; overflow-y: auto; padding: 20px;
			display: flex; flex-direction: column; gap: 12px;
		}
		.chat-msg { display: flex; max-width: 85%; }
		.chat-bubble {
			padding: 5px 5px; line-height: 1.6; word-wrap: break-word;
			animation: popIn 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
		}
		@keyframes popIn {
			from { opacity: 0; transform: scale(0.8); }
			to { opacity: 1; transform: scale(1); }
		}
		.chat-msg.chat-bot { align-self: flex-start; }
		.chat-msg.chat-bot .chat-bubble {
			background: var(--bot-bubble-bg); color: var(--text-color);
			border: 1px solid rgba(255, 255, 255, 0.1);
			border-radius: 18px 18px 18px 5px;
			text-shadow: 1px 2px 3px #000;
			font-size: 17px;
		}
		.chat-msg.chat-user { align-self: flex-end; }
		.chat-msg.chat-user .chat-bubble {
			background: var(--user-bubble-bg); color: #0000ff;
			border-radius: 18px 18px 5px 18px;
			text-shadow: 1px 2px 3px #fff;
			font-size: 17px;
		}
		.prompt-container {
			display: flex; align-items: center; padding: 15px 20px;
			gap: 10px; border-top: 1px solid var(--border-color);
		}
		#gabby-prompt {
			flex-grow: 1; padding: 12px 18px; border-radius: 12px;
			border: 1px solid var(--border-color); background: rgba(0, 0, 0, 0.2);
			color: var(--text-color); font-size: 16px; transition: all 0.3s ease;
		}
		#gabby-prompt:focus {
			outline: none; border-color: var(--send-btn-color);
			box-shadow: 0 0 0 3px rgba(0, 191, 255, 0.3);
		}
		#gabby-prompt::placeholder { color: var(--placeholder-color); }
		#gabby-submit {
			background: transparent; border: none; padding: 0; cursor: pointer;
			color: var(--send-btn-color); width: 44px; height: 44px;
			display: flex; align-items: center; justify-content: center;
			flex-shrink: 0; transition: all 0.3s ease; border-radius: 50%;
		}
		#gabby-submit:hover {
			color: white; background-color: var(--send-btn-hover-color);
			transform: scale(1.1) rotate(15deg);
		}
		#gabby-submit svg { width: 24px; height: 24px; }
		.back-button {
			position: absolute; top: 15px; right: 15px;
			background: rgba(255, 255, 255, 0.1); border: none; color: white;
			width: 30px; height: 30px; border-radius: 50%; cursor: pointer;
			font-size: 18px; display: flex; align-items: center; justify-content: center;
			transition: background-color 0.3s;
		}
		.back-button:hover { background-color: rgba(255, 255, 255, 0.2); }
		#gabby-response::-webkit-scrollbar { width: 6px; }
		#gabby-response::-webkit-scrollbar-track { background: transparent; }
		#gabby-response::-webkit-scrollbar-thumb {
			background-color: rgba(255, 255, 255, 0.2); border-radius: 10px;
		}
		
		.typing-indicator-bubble {
			display: flex; align-items: center; justify-content: center;
			padding: 12px 18px;
		}
		.typing-dot {
			width: 8px; height: 8px; background-color: rgba(240, 240, 240, 0.7);
			border-radius: 50%; animation: typing-dot 1.2s infinite ease-in-out;
		}
		.typing-dot:nth-child(2) { animation-delay: 0.15s; }
		.typing-dot:nth-child(3) { animation-delay: 0.3s; }
		@keyframes typing-dot {
			0%, 60%, 100% { transform: translateY(0); }
			30% { transform: translateY(-5px); }
		}
		.ai-welcome-bubble {
			background-image: linear-gradient(to right, #84fab0 0%, #8fd3f4 100%);
			color: #1e293b; padding: 4px 5px; border-radius: .5rem;
			margin-bottom: -10px; position: relative; z-index: 1;
			max-width: 100px; font-weight: 500; font-size: 15px;
			box-shadow: 0 4px 10px rgba(0,0,0,0.2);
			position: absolute;
			bottom:140px;
			right:35px;
		}
		.ai-welcome-bubble::after {
			content: ''; position: absolute; bottom: 0; left: 50%;
			width: 0; height: 0; border: 10px solid transparent;
			border-top-color: #8fd3f4; border-bottom: 0;
			margin-left: -10px; margin-bottom: -10px;
		}
		.content-coppyright {
			 background-color: rgba(0, 0, 0, 0.4);
			 padding: 5px 15px; border-radius: 20px; margin-top: 10px;
		}
		#copyright {
			position: fixed; bottom: 0; right: 0; display: flex; flex-direction: column;
			align-items: flex-end; color: white; font-size: 0.8rem;
			text-shadow: none; text-align: center; z-index: 1001; padding: 5px;
		}
        #copyright lottie-player {
            width: 150px;
            height: 150px;
            cursor: pointer;
            position: absolute;
            bottom: 0;
            right: 290px;
        }

		@media (max-width : 768px ){
			.ai-welcome-bubble { max-width: 100px; font-size: 10px; padding: 3px; }
			.content-coppyright {display: none;}
			.chat-bubble { font-size: 13px;}
            #copyright lottie-player {
                width: 120px;
                height: 120px;
                right:0;
            }
		}
        /* CSS cho hiệu ứng Marquee mới */
        #marquee-content-wrapper {
            display: inline-block;
        }
        @keyframes marquee-scroll {
            from { transform: translateX(0); }
            to { transform: translateX(-50%); }
        }
        
        /* Custom glow effect for buttons in new section */
        .btn-glow {
            box-shadow: 0 0 8px rgba(255, 255, 255, 0.6), 0 0 20px rgba(255, 255, 255, 0.4);
        }