:root {
	--max-width: 1170px;
	--body-background: #171717;
	--card-background: #1c1c1e;
	--primary-color: #fff;
	--secondary-color: #848484;
	--brand-color: #5e55ff;
	--border-color: #fff;
	--border-radius: 2rem;

	--goto-test-color: #0da781;
	--goto-test-background: #eafbf7;
	--goto-test-color-hover: #eafbf7;
	--goto-test-background-hover: #0da781;
	
	--goto-buy-color: #919191;
	--item-background: #1b1b1d;

	--footer-background: #1a1a1a;
}

@keyframes moveUpDown {
	0% {
		transform: translateY(30px);
	}
	50% {
		transform: translateY(-30px);
	}
	100% {
		transform: translateY(30px);
	}
}

.container {
	min-width: var(--max-width);
	max-width: var(--max-width);
}

html, body {
	font-family: 'Be Vietnam Pro', sans-serif;
	background-color: var(--body-background);
	color: var(--secondary-color);
	padding: 0;
	margin: 0;
}

main {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

section:not(.menu) {
	display: flex;
	align-items: center;
	justify-content: center;
}

section.first {
	height: 100vh;
}

.two-content {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
}

.info-update {
	display: flex;
	align-items: center;
	gap: .5rem;
}

.info-update > span {
	font-size: 14px;
}

.badge {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 10px;
	padding: 5px 10px;
	border-radius: 30px;
	border: 1px solid var(--border-color);
	text-transform: uppercase;
}

section.menu {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	padding: 2rem;
}

/**/
section.first .content:first-child {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

section.first .content:first-child > .title {
	font-size: 50px;
	color: var(--primary-color);
	line-height: 1em;
}

section.first .content:first-child > .desc {
	font-size: 18px;
}

section.first .content:first-child > .actions {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
}

/* Go to test */
section.first .content:first-child > .actions > .goto_test {
	position: relative;
	display: flex;
    align-items: center;
    justify-content: center;
	background-color: var(--goto-test-background);
	color: var(--goto-test-color);
	border: 0;
	margin: 0;
	padding: 0;
	font-weight: 500;
	font-size: 18px;
	height: 55px;
	border-radius: var(--border-radius);
	transition: .3s;
	overflow: hidden;
	cursor: pointer;
}

section.first .content:first-child > .actions > .goto_test > span {
	position: absolute;
	transition: .5s;
}

section.first .content:first-child > .actions > .goto_test > span:nth-child(2) {
	transform: translateY(-50px);
}

section.first .content:first-child > .actions > .goto_test:hover {
	color: var(--goto-test-color-hover);
	background-color: var(--goto-test-background-hover);
}

section.first .content:first-child > .actions > .goto_test:hover > span:nth-child(1) {
	transform: translateY(50px);
}

section.first .content:first-child > .actions > .goto_test:hover > span:nth-child(2) {
	transform: translateY(0);
}

/* Go to buy */
section.first .content:first-child > .actions > .goto_buy {
	position: relative;
	display: flex;
    align-items: center;
    justify-content: center;
	color: var(--goto-buy-color);
	border: 0;
	margin: 0;
	padding: 0;
	font-weight: 500;
	font-size: 18px;
	height: 55px;
	border-radius: var(--border-radius);
	transition: .3s;
	overflow: hidden;
	background: transparent;
	cursor: pointer;
}

section.first .content:first-child > .actions > .goto_buy > span {
	position: absolute;
	transition: .5s;
}

section.first .content:first-child > .actions > .goto_buy > span:nth-child(2) {
	transform: translateX(-500px);
}

section.first .content:first-child > .actions > .goto_buy:hover > span:nth-child(1) {
	transform: translateX(500px);
}

section.first .content:first-child > .actions > .goto_buy:hover > span:nth-child(2) {
	transform: translateX(0);
}

section.first .content:nth-child(2) {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: relative;
}

section.first .content:nth-child(2) > .circle {
	background-image: url('../img/svg/shape-Blob.svg');
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	width: 565px;
	height: 400px;
	opacity: .1;
}

section.first .content:nth-child(2) > .bank {
	position: absolute;
	top: 0;
	left: 0;
	background-image: url('../img/illustrations/bank.png');
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	width: 565px;
	height: 400px;
	animation: moveUpDown 3s ease-in-out infinite;
}

section.first .content:first-child > .shapes {
	display: flex;
	align-items: center;
	gap: 1rem;
	color: #5a5a5a;
}

/* Two */
section.two {
	height: 100vh;
}

section.two .content > .title {
	font-size: 62px;
	text-align: center;
	color: #fff;
	width: 600px;
	line-height: 1em;
	margin-bottom: 1rem;
}

section.two .content > .desc {
	font-size: 18px;
	text-align: center;
	margin-bottom: 3rem;
}

section.two .content > .title,
section.two .content > .desc {
	margin-left: 50%;
	transform: translateX(-50%);
}

section.two .content > .items {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: .3rem;
}

section.two .content > .items > .item {
	display: flex;
	flex-direction: column;
	gap: 1rem;

	background-color: var(--item-background);
	padding: 2rem;
}

section.two .content > .items > .item > .title {
	font-size: 18px;
	color: #dfdfdf;
}

section.two .content > .items > .item > .desc {
	color: #585858;
	font-size: 13px;
}

section.two .content > .items > .item .icon {
	width: 35px;
	height: 35px;
	background-size: contain;
	background-repeat: no-repeat;
	opacity: .2;
}

section.two .content > .items > .item .icon.cog {
	background-image: url('../img/svg/cog.svg');
}

section.two .content > .items > .item .icon.pay {
	background-image: url('../img/svg/pay.svg');
}

section.two .content > .items > .item .icon.content-settings {
	background-image: url('../img/svg/content-settings.svg');
}

section.two .content > .items > .item .icon.server-square-cloud {
	background-image: url('../img/svg/server-square-cloud.svg');
}

section.two .content > .items > .item .icon.poinpy {
	background-image: url('../img/svg/poinpy.svg');
}

section.two .content > .items > .item .icon.telegram {
	background-image: url('../img/svg/telegram.svg');
}

.menu-bottom {
	background-color: #fff;
}

.background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 0;
	width: 100%;
	overflow: hidden;
}

.fly-item {
    position: absolute;
    border-radius: 50%;
    animation: fly 5s linear infinite;
}

@keyframes fly {
    0% {
        transform: translate(0, 0) scale(1);
    }
    100% {
        transform: translate(var(--x), var(--y)) scale(var(--scale));
    }
}

section.three {
	height: 100vh;
}

section.three .items {
	display: flex;
	flex-direction: column;
	gap: 10rem;
}

section.three .items > .item {
	font-size: 34px;
	line-height: 1em;
	font-weight: 600;
}

section.four {
	height: max-content;
	margin-bottom: 4rem;
}

section.four .two-content {
	align-items: center;
	gap: 4rem;
}

section.four .content:nth-child(1) {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

section.four .content:nth-child(1) > .title {
	font-weight: 700;
	font-size: 3rem;
	line-height: 1em;
	color: #fff;
}

section.four .content:nth-child(2) > .image {
	background-image: url('../img/phone-system.png');
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	width: 350px;
	height: 612px;
}

section.four .content:nth-child(2) {
	display: flex;
	align-items: center;
	justify-content: center;
}

section.four > .container {
	background-color: #1e1f21;
	padding: 3rem 4rem;
	border-radius: var(--border-radius);
}

section.five {
	height: max-content;
}

section.five .content > .header {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: .5rem;
	margin-bottom: 3rem;
}

section.five .content > .header > .title {
	font-size: 32px;
	font-weight: 600;
	color: #fff;
	text-align: center;
}

section.five .content > .header > .desc {
	max-width: 600px;
	text-align: center;
}

section.five .content > .header > .actions {
	display: flex;
	gap: 2rem;
	background-color: #1c1c1e;
	padding: .5rem 1rem;
    border-radius: 4rem;
}

section.five .content > .header > .actions button {
	background-color: transparent;
	color: #fff;
	border: 0;
	margin: 0;
	padding: 14px 24px;
	border-radius: 25px;
	cursor: pointer;
}

section.five .content > .header > .actions button.action {
	background-color: #171717;
}

section.five .content > .rates {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}

section.five .content > .rates > .item {
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	padding: 4rem;
	border: 0px solid #2a2a2a;
}

section.five .content > .rates > .item > .discount {
	display: flex;
	align-items: center;
	justify-content: center;

	position: absolute;
	top: -50px;
	right: -50px;
	border-radius: 50%;
	background: linear-gradient(145deg, #3932b3, var(--brand-color));

	color: #fff;

	width: 200px;
	height: 200px;
	animation: pop-in 0.5s ease-out, pulse 1.5s infinite;
}

@keyframes pop-in {
    0% {
        transform: scale(0);
        opacity: 0;
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes pulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.1);
    }
}

section.five .content > .rates > .item > .discount span {
	font-size: 2rem;
	font-weight: bold;
	text-shadow: 1px 2px 5px rgba(0, 0, 0, 0.3);	
}

section.five .content > .rates > .item:nth-child(1) {
	border-width: 1px 1px 1px 1px;
}

section.five .content > .rates > .item:nth-child(2) {
	border-width: 1px 1px 1px 0px;
}

section.five .content > .rates > .item:nth-child(3) {
    border-width: 0px 1px 1px 1px;
	padding: 1rem 4rem;
	text-align: center;
}

section.five .content > .rates > .item:nth-child(4) {
	border-width: 0px 1px 1px 0px;
	padding: 1rem 4rem;
	text-align: center;
}

section.five .content > .rates > .item a {
	text-decoration: none;
	color: var(--brand-color);
}

section.five .content > .rates > .item > .title {
	font-size: 13px;
	text-transform: uppercase;
	color: var(--primary-color);
}

section.five .content > .rates > .item > .price {
    display: flex;
    align-items: baseline;
    gap: .5rem;

	font-size: 30px;
}

section.five .content > .rates > .item > .price > span {
	font-size: 50px;
	font-weight: 600;
	color: var(--primary-color);
	margin-top: .35em;
	margin-bottom: .15em;
}

section.five .content > .rates > .item > .desc {
	font-size: 14px;
	line-height: 1.2rem;
	color: var(--secondary-color);
	margin-bottom: 1rem;
}

section.five .content > .rates > .item > .listing > ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

section.five .content > .rates > .item > .listing > ul > li {
	display: flex;
	align-items: center;
	gap: .5rem;
}

section.five .content > .rates > .item > .listing > ul > li > .icon > i {
	font-size: 22px;
}

section.five .content > .rates > .item > .listing > ul > li.yes > .icon > i {
	color: var(--brand-color);
}

section.five .content > .rates > .item > .listing > ul > li > .span {
    display: flex;
    align-items: center;
    gap: .5rem;
	font-size: 15px;
}

section.five .content > .rates > .item > .listing > ul > li.yes > .span {
	color: var(--primary-color);
	font-weight: 500;
}

section.first.end {
	height: auto;
	background-image: url(../img/svg/bg-circles.svg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
	padding-bottom: 10rem;
	margin-top: 4rem;
}

section.first.end .content:nth-child(2) > .circle {
	display: none;
}

section.footer {
	background-color: var(--footer-background);
	padding: 5rem 0;
}

section.footer .grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1rem;
}

section.footer .grid > .items > .title {
	text-transform: uppercase;
	font-size: 12px;
	font-weight: 600;
	color: rgba(255, 255, 255, .3);
	margin-bottom: 2rem;
	letter-spacing: .1em;
}

section.footer .grid > .items > .desc {
	font-weight: 600;
	color: rgba(255, 255, 255, .7);
	margin-bottom: 2rem;
	letter-spacing: .1em;
}

section.footer .grid > .items > ul {
	display: flex;
	flex-direction: column;
	gap: 1rem;

	list-style: none;
	margin: 0;
	padding: 0;
}

section.footer .grid > .items > .social > .item > a {
	color: rgba(255, 255, 255, .7);
	font-size: 24px;
}

section.footer .grid > .items > ul > li > a {
	color: rgba(255, 255, 255, .7);
	text-decoration: none;
}

section.footer .grid.two {
	all: unset;
}

section.footer .grid.two .slash {
	border-color: rgba(255, 255, 255, .1);
	border-top-width: 1px;
    border-top-style: solid;
	margin-top: 40px;
	margin-bottom: 40px;
}

section.footer .grid.two .copyright {
	display: flex;
	align-items: center;
}

section.footer .grid.two .copyright a {
	color: rgba(255, 255, 255, .7);
	text-decoration: none;
}

section.footer .grid.two .copyright > .end {
	margin-left: auto;
}

section.footer .grid .logo img {
	width: auto;
	height: 64px;
}

.modal {
    display: none;
    align-items: center;
    justify-content: center;
    overflow: auto;

    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;

    z-index: 14;
    background-color: rgba(0, 0, 0, 0.75);

    opacity: 0;
    transform: scale(0.95);
    transition: opacity 0.3s ease, transform 0.3s ease;
}

.modal.show {
    display: flex;
    opacity: 1;
    transform: scale(1);
}

.modal-block {
    width: 600px;
    height: auto;
    background-color: #1a1a1a;
    border-radius: 1rem;
    overflow: hidden;
}

.modal-block-head {
    display: flex;
    align-items: center;
    padding: 2rem 2rem 0 2rem;
}

.modal-block-head > .start > h4 {
    color: #fff;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 0.125rem;
}

.modal-block-head > .end {
    margin-left: auto;
    cursor: pointer;
}

button[data-modal-close] {
    font-size: 18px;
    color: #fff;

	padding: 0;
	background-color: transparent;
	border: 0;
	cursor: pointer;
}

.modal-block-content {
	padding: 2rem;
}

div.hr {
	display: grid;
	grid-template-columns: 2fr 1fr 2fr;
	gap: .5rem;

    align-items: center;
    justify-content: center;
    text-align: center;

	margin: 10px 0;	
}

div.hr > span:nth-child(1),
div.hr > span:nth-child(3) {
	background-color: #1212124d;
	height: 2px;
}

input[type='text'],
input[type='email'] {
	background-color: #2e2e2e;
	color: #fff;
	border: 1px solid #464646;
	border-radius: var(--border-radius);
	padding: 10px 24px;
	width: -webkit-fill-available;
	outline: none;
	box-shadow: none;
}

input[type='text']:active,
input[type='text']:focus,
input[type='email']:active,
input[type='email']:focus {
	border-color: #464646;
}

[data-modal="test"] input[type='submit'] {
    display: flex;
    align-items: center;
    justify-content: center;

    color: var(--goto-test-color-hover);
    background-color: #0da781;

	position: relative;
    border: 0;
    margin: 0;
    padding: 0;
    font-weight: 500;
    font-size: 18px;
	width: 150px;
    height: 40px;
    border-radius: var(--border-radius);
    transition: .3s;
    overflow: hidden;
    cursor: pointer;
}

[data-modal="test"] .actions {
	text-align: center;
}

[data-modal="test"] .actions a {
	text-decoration: none;
	color: var(--secondary-color);
}

[data-modal="test"] .btn.btn-go-test {
	display: flex;
    align-items: center;
    justify-content: center;

    color: var(--goto-test-color-hover);
    background-color: #0da781;

	position: relative;
    border: 0;
    margin: 0;
    padding: 0;
    font-weight: 500;
    font-size: 18px;
    height: 40px;
    border-radius: var(--border-radius);
    transition: .3s;
    overflow: hidden;
    cursor: pointer;
	padding: 0 20px;
	text-decoration: none;
}

.text-danger {
	color: #ff4b4b;
}

[data-modal="test"] div.hr {
	margin: 2rem 0;
}

.form-group {
	margin-bottom: 1rem;
}

.result {
	display: none;
    border-radius: var(--border-radius);
    border: 1px solid #2e2e2e;
    background-color: #202020;
    margin-bottom: 1rem;
    color: #727272;
	padding: 1rem;
	font-size: 14px;
}

.result.show {
	display: block;
}

.result[data-status="1"] {
	border-color: #027600;
	background-color: #014800;
	color: #03b100;
}

.result[data-status="2"] {
	border-color: #8f4f00;
	background-color: #563800;
	color: #f98a00;
}

section.five .content > .rates > .item a.go_telegram {
	display: none;
}

#change_language {
	z-index: 2;
	position: fixed;
	top: 2rem;
	right: 2rem;

	& > ul {
		list-style-type: none;
		padding: 0;
		margin: 0;

		& > li {
			cursor: pointer;
		}
	}	
}

@media only screen and (max-width: 768px) {
	main {
		display: flex;
		flex-direction: column;
		gap: 3rem;
	}

	#change_language {
		top: auto;
		bottom: 2rem;
	}

	section.menu {
		position: relative;
	}
	
	.container {
		max-width: 100%;
		min-width: auto;
	}

	.two-content {
		display: flex;
	}

	section.first .content:nth-child(2) {
		display: none;
	}

	section.two .content > .items {
		display: flex;
		flex-direction: column;
		gap: 1rem;
	}

	section.two .content > .title,
	section.two .content > .desc {
		margin: 0;
		transform: unset;
		width: 100%;
	}

	section.two .content > .title {
		font-size: 18px;
	}

	section.two .content > .desc {
		font-size: 16px;
	}

	section.first {
		height: auto;
	}

	section:not(.menu) {
		display: block;
	}

	section.three .items {
		gap: 1rem;
	}

	section.three .items > .item {
		font-size: 16px;
	}

	section.five .content > .rates {
		display: flex;
		flex-direction: column;
		gap: 1rem;
	}

	section.five .content > .rates > .item > .discount {
		width: 100px;
		height: 100px;
		top: -20px;
		right: -20px;
	}

	section.four > .container {
		padding: 1rem;
	}

	section.four .two-content {
		padding: 1rem;
		flex-direction: column;
	}

	section.four .content:nth-child(2) {
		display: none;
	}

	section.first .content:first-child > .title {
		font-size: 2rem;
	}

	section.four .content:nth-child(1) > .title {
		font-size: 2rem;
	}

	section.five .content > .rates > .item {
		padding: 1rem;
		border-width: 1px !important;
	}

	section.first.end {
		padding-bottom: 0;
		margin: 0;
	}

	section:not(.menu) {
		padding: 0 1rem;
	}

	section {
		height: auto !important;
	}

	section.five .content > .rates > .item > .discount span {
		font-size: 1.2rem;
	}

	section.five .content > .rates > .item:nth-child(3),
	section.five .content > .rates > .item:nth-child(4) {
		display: none;
	}

	section.footer {
		padding: 1rem;
	}

	section.footer .grid {
		grid-template-columns: repeat(2, 1fr);
	}

	section.footer .grid.two .copyright {
		display: flex;
		flex-direction: column;
		gap: 1rem;
		justify-content: center;
		align-items: center;
	}

	section.footer .grid.two .copyright > .end {
		margin: 0;
	}

	section.five .content > .rates > .item a.go_telegram {
		display: block;
		text-align: center;
		margin: 2rem 0 1.5rem 0;
		font-size: 18px;
	}

	.modal {
		padding: 0 1rem;
	}
}