*,
:after,
:before {
	box-sizing: border-box
}

html {
	font-family: sans-serif;
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

article,
aside,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section {
	display: block
}

body {
	margin: 0;
	font-family: Arial, sans-serif;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	color: #212529;
	text-align: left;
	background-color: #080f22;
	overflow: hidden;
}


@media (max-width:1200px) {
	legend {
		font-size: calc(1.275rem + .3vw)
	}
}

progress {
	vertical-align: baseline
}


:root {
	--animate-duration: 1s;
	--animate-delay: 1s;
	--animate-repeat: 1
}


#particles-js {
	top: 0;
	right: 0;
	bottom: 0;
	pointer-events: none;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: 50% 50%
}

#particles-js,
.count-particles {
	position: absolute;
	left: 0;
	z-index: 100
}

.count-particles {
	background: #002;
	top: 48px;
	width: 80px;
	color: #13e8e9;
	font-size: .8em;
	text-align: left;
	text-indent: 4px;
	line-height: 14px;
	padding-bottom: 2px;
	font-family: Helvetica, Arial, sans-serif;
	font-weight: 700
}

.js-count-particles {
	font-size: 1.1em
}

#stats,
.count-particles {
	-webkit-user-select: none
}

#stats {
	border-radius: 3px 3px 0 0;
	overflow: hidden
}

.count-particles {
	border-radius: 0 0 3px 3px
}


@media screen and (max-width:1920px) {
	html {
		font-size: .83333vw
	}
}

@media (max-width: 1024px) {
	html {
		font-size: 1.66667vw
	}
}


@media (max-width: 1024px) {
	.desktop {
		display: none !important
	}

	.mobile {
		display: block !important
	}

}

.desktop {
	display: block
}

.mobile {
	display: none
}

.header-logo {
	position: absolute;
	left: 50%;
	transform: translate(-50%);
	top: 14rem;
	width: 16.75rem;
	display: block;
}

.header-logo-m {
	display: none;
}

.header-logo img {
	display: block;
	width: 100%;
	height: auto
}

.page {
	position: relative;
	max-width: 1920px;
	min-height: 60rem;
	height: 100vh;
	margin: 0 auto;
	overflow: hidden;
	background: #080f22 url(../images/bg.jpg) no-repeat top;
	background-size: 100%;
	transform-origin: top center;
	animation: zoom_ani .4s ease-in-out
}



.ic-play {
	position: absolute;
	left: 50%;
	transform: translate(-50%);
	top: 30.125rem;
	width: 9.438rem;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 18;
}

.text-main {
	position: absolute;
	left: 50%;
	transform: translate(-50%);
	top: 32.125rem;
	width: 120rem;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 16;

}

.text-main img {
	animation: sloganAni .4s .1s linear both
}

.taigame {
	position: absolute;
	left: 50%;
	transform: translate(-50%);
	top: 48.825rem;
	width: 25.125rem;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 18;
}

.taigame-circle {
	width: 100%;
	height: 100%;
	animation: glow 0.5s infinite alternate, sloganAni .4s .1s linear both;
}

.taigame-btn {
	position: relative;
	display: inline-block;
	width: 100%
}

.taigame-btn:after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	background-size: 100% 100%
}

.taigame-btn-img {
	display: block;
	width: 100%;
	height: auto
}

.footer {
	position: absolute;
	left: 50%;
	transform: translate(-50%);
	top: 54.125rem;
	width: 9.938rem;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 18;
}

.offcanvas.offcanvas-bottom {
	background-color: rgba(9, 15, 34, 0.9)
}

.offcanvas.offcanvas-bottom .offcanvas-header {
	padding: 0;
}

.offcanvas.offcanvas-bottom .btn-close {
	position: absolute;
	top: 8px;
	right: 8px;
	filter: invert(1);
}

.offcanvas.offcanvas-bottom .offcanvas-body {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 16px;
	color: #838385;
}

@media (max-width:1024px) {
	.page {
		background: url(../images/bg-m.jpg) no-repeat #020e1e;
		background-size: 100%;
		min-height: 106.25rem
	}

	.header-logo {
		display: none;
	}

	.header-logo-m {
		position: absolute;
		left: 50%;
		transform: translate(-50%);
		top: 15.25rem;
		width: 23.5rem;
		display: block;
	}

	.ic-play {
		top: 41rem;
	}

	.text-main {
		top: 46rem;
		width: 64rem;
	}

	.line {
		position: absolute;
		left: 0;
		right: 0;
		text-align: center;
		top: 73rem;
	}

	.taigame {
		top: 67.75rem;
		width: 21.75rem;
	}

	.footer {
		top: 75.75rem;
	}
}

@media (max-width: 640px) {
	.page {
		background: url(../images/bg-sm.jpg) no-repeat #020e1e;
		background-size: 100%;
		min-height: 106.25rem
	}

	.header-logo-m {
		top: 34.25rem;
	}

	.ic-play {
		top: 60rem;
	}

	.text-main {
		top: 66rem;
	}

	.taigame {
		top: 87.75rem;
	}

	.line {

		top: 92rem;
	}

	.footer {
		top: 95.75rem;
	}

	.offcanvas.offcanvas-bottom .offcanvas-body {
		font-size: 12px;
	}
}

/*----------------------------Popup---------------------------------*/
.modal-cs1 {
	width: 870px;
	max-width: 870px;
	height: 588px;

}

.modal-cs1 .modal-content {
	background: url(../images/popup-taigame.png) no-repeat;
	background-size: 100%;
	width: 870px;
	height: 588px;
}

.modal-cs1 .modal-content,
.modal-cs1 .modal-header {
	border: none;
}

.modal-cs1 .modal-header {
	padding: 0;

}

.modal-cs1 .modal-header .btn-close {
	position: absolute;
	top: -22px;
	right: -30px;
	width: 62px;
	height: 62px;
	opacity: 1;
}

.modal-cs1 .modal-body .content-taigame {
	padding: 130px 50px 0;
}

.modal-cs1 .modal-body .content-taigame .title {
	text-transform: uppercase;
	font-size: 30px;
	color: #fff;
	padding-top: 24px;
}

@media (max-width:1024px) {
	.modal-cs1 {
		width: 768px;
		max-width: 768px;
		height: 519px;
		margin: 0 auto;
	}

	.modal-cs1 .modal-content {
		background: url(../images/popup-taigame.png) no-repeat;
		background-size: 100%;
		width: 768px;
		height: 519px;
		margin: 0 auto;
	}

	.modal-cs1 .modal-body .content-taigame .title {
		font-size: 24px;
		color: #fff;
	}
}

@media (max-width:640px) {
	.modal-cs1 {
		width: 375px;
		max-width: 375px;
		height: 253px;
		margin: 0 auto;
	}

	.modal-cs1 .modal-content {
		background: url(../images/popup-taigame.png) no-repeat;
		background-size: 100%;
		width: 375px;
		height: 253px;
		margin: 0 auto;
	}

	.modal-cs1 .modal-body .content-taigame .title {
		font-size: 14px;
		color: #fff;
		padding-top: 16px;
	}

	.modal-cs1 .modal-header .btn-close {
		position: absolute;
		top: -22px;
		right: 0px;
		width: 24px;
		height: 24px;
		opacity: 1;
	}

	.modal-cs1 .modal-body .content-taigame {
		padding: 48px 12px 0;
	}

	.modal-cs1 .modal-body .content-taigame .btn-taimienphi img {
		width: 28rem;
	}
}

/*----------------------------Animation---------------------------------*/
.pulse {
	animation-name: pulse;
	-webkit-animation-name: pulse;

	animation-duration: 2s;
	-webkit-animation-duration: 2s;

	animation-iteration-count: infinite;
	-webkit-animation-iteration-count: infinite;
}

@keyframes pulse {
	0% {
		transform: scale(0.9);
		opacity: 1;
	}

	50% {
		transform: scale(1);
		opacity: 1;
	}

	100% {
		transform: scale(0.9);
		opacity: 1;
	}
}

@-webkit-keyframes pulse {
	0% {
		-webkit-transform: scale(0.95);
		opacity: 1;
	}

	50% {
		-webkit-transform: scale(1);
		opacity: 1;
	}

	100% {
		-webkit-transform: scale(0.95);
		opacity: 1;
	}
}

@keyframes glow {
	from {
		filter: drop-shadow(0 0 0.3rem rgb(8, 42, 70)) brightness(110%);
	}

	to {
		filter: drop-shadow(0 0 1rem rgb(8, 42, 70)) brightness(150%);
	}
}

@-webkit-keyframes glow {
	from {
		filter: drop-shadow(0 0 0.3rem rgb(8, 42, 70)) brightness(110%);
	}

	to {
		filter: drop-shadow(0 0 1rem rgb(8, 42, 70)) brightness(150%);
	}
}

@-webkit-keyframes sloganAni {
	0% {
		-webkit-transform: scale(1.8);
		opacity: 0;
	}

	60% {
		-webkit-transform: scale(1);
		opacity: 1;
	}

	65% {
		-webkit-transform: translate(-4px, -4px);
	}

	70% {
		-webkit-transform: translate(0, 0);
	}

	75% {
		-webkit-transform: translate(4px, 4px);
	}

	80% {
		-webkit-transform: translate(0, 0);
	}

	85% {
		-webkit-transform: translate(-4px, 4px);
	}

	90% {
		-webkit-transform: translate(0, 0);
	}

	95% {
		-webkit-transform: translate(4px, -4px);
	}

	100% {
		-webkit-transform: translate(0, 0);
		opacity: 1;
	}
}

@keyframes sloganAni {
	0% {
		transform: scale(1.8);
		opacity: 0;
	}

	60% {
		transform: scale(1);
		opacity: 1;
	}

	65% {
		transform: translate(-4px, -4px);
	}

	70% {
		transform: translate(0, 0);
	}

	75% {
		transform: translate(4px, 4px);
	}

	80% {
		transform: translate(0, 0);
	}

	85% {
		transform: translate(-4px, 4px);
	}

	90% {
		transform: translate(0, 0);
	}

	95% {
		transform: translate(4px, -4px);
	}

	100% {
		transform: translate(0, 0);
		opacity: 1;
	}
}

.animated {
	-webkit-animation-duration: 0.1s;
	animation-duration: 0.1s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
	-webkit-animation-delay: 0.2s;
	animation-delay: 0.2s;
}

@-webkit-keyframes bounceInDown {
	0% {
		opacity: 0;
		-webkit-transform: translateY(-200px);
	}

	60% {
		opacity: 1;
		-webkit-transform: translateY(30px);
	}

	80% {
		-webkit-transform: translateY(-10px);
	}

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

@keyframes bounceInDown {
	0% {
		opacity: 0;
		transform: translateY(-200px);
	}

	60% {
		opacity: 1;
		transform: translateY(30px);
	}

	80% {
		transform: translateY(-10px);
	}

	100% {
		transform: translateY(0);
	}
}

.bounceInDown {
	-webkit-animation-name: bounceInDown;
	animation-name: bounceInDown;
}
@keyframes zoom_ani {
	0% {
		scale: 1
	}

	50% {
		scale: 1.02
	}

	100% {
		scale: 1
	}
}