* {
	box-sizing: border-box;
}
html {
	overflow-x: hidden;
}
body {
	padding-right: 0 !important;
	background: #000;
	position: relative;
	overflow-x: hidden;
}
.compensate-for-scrollbar {
    margin-right: 0 !important;
}
p,a,li,div,button,input,textarea, h1, h2, h3, h4, h5 {
	color: #FFF;
	font-family: "Montserrat", sans-serif;
	font-size: 24px;
	font-weight: 400;
	line-height: 32.4px; 
}
a, a:hover, a:active, a:focus, textarea,
button, input, button:hover, button:active, button:focus,
input:focus, input:active {
	text-decoration: none !important;
	outline: none !important;
}
strong {
	font-weight: 600;
}
i {
	font-style: italic;
}
input.button,
button {
	border: none;
}
a {
	cursor: pointer;
}
.wrp {
	width: 1160px;
	margin: 0 auto;
}
.h2 {
	color: #FFF;
	text-align: center;
	font-size: 54px;
	font-weight: 700;
	line-height: 66px;
}
.h2 span {
	color: #00FFAF;
}
.default-button {
	border-radius: 300px;
	border: 1px solid #E1E1E1;
	background: #FFF;
	padding: 24px;
	text-align: center;
	display: block;
	color: #000;
	font-size: 20px;
	font-weight: 400;
	line-height: normal;
	transition: .4s;
}
.default-button:hover {
	border: 1px solid #fff;
	background: #000;
	color: #fff;
}

/* HEADER */

#header {
	padding: 19px 0;
	position: fixed;
	width: 100%;
	top: 0;
	background: #000;
	z-index: 5;
}
#header .burger {
	display: none;
}
.header-menu {
	display: flex;
	justify-content: center;
	gap: 33px;
}
.header-menu li a {
	font-size: 16px;
	transition: .4s;
}
.header-menu li a:hover {
	color: #68c4b7;
}
.header-logo {
	position: absolute;
	left: 40px;
	top: 19px;
}

/* MAIN */

#main {
	padding: 238px 0 272px 0;
	background: url("../img/main-bg.svg") no-repeat center center / cover;
}
#main .wrp {
	position: relative;
}
#main .h2 {
	line-height: normal;
	margin-bottom: 11px;
	text-align: left;
}
#main .h2 span {
	color: #3DECE6;
}
#main .text {
	margin-bottom: 40px;
}
#main .default-button {
	width: 300px;
}
#main .main-img {
	position: absolute;
	top: -65px;
	right: -65px;
}

/* USL */

#usl {
	padding: 204px 0 195px 0;
	position: relative;
}
#usl:before {
	content: "";
	width: 100%;
	height: 486px;
	position: absolute;
	bottom: 0;
	left: 0;
	background: linear-gradient(0deg, #00FFAF 2%, #000 59%);
}
#usl .wrp {
	position: relative;
	z-index: 2;
}
#usl .h2 {
	margin-bottom: 85px;
}
.usl {
	display: flex;
	justify-content: space-between;
}
.usl-item {
	width: 360px;
	padding: 37px 75px 52px 75px;
	border-radius: 30px;
	border: 2px solid #00FFAF;
	background: #000;
}
.usl-item-icon {
	width: 100px;
	height: 100px;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto 35px auto;
}
.usl-item-text {
	text-align: center;
	color: #FFF;
	font-weight: 700;
	line-height: 32.4px;
}

/* ADVA */

#adva {
	padding: 90px 0 195px 0;
	position: relative;
}
#adva:before {
	content: "";
	width: 100%;
	height: 286px;
	position: absolute;
	top: 0;
	left: 0;
	background: linear-gradient(0deg, #000 12%, #009969 71%, #00FFAF 100%);
}
#adva .wrp {
	position: relative;
	z-index: 2;
}
#adva .h2 {
	margin-bottom: 130px;
}
.adva {
	display: flex;
	justify-content: space-between;
	flex-flow: wrap;
	row-gap: 30px;
}
.adva-item {
	width: calc(100%/3 - 80px/3);
	border-radius: 30px;
	border: 2px solid #5C5C5C;
	background: #484848;
	padding: 37px 32px 52px 32px;
}
.adva-item:nth-child(4),
.adva-item:nth-child(5) {
	width: calc(50% - 20px);
}
.adva-item-icon {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto 35px auto;
}
.adva-item-head {
	text-align: center;
	min-height: 64px;
}
.adva-item-text {
	text-align: center;
	margin-top: 30px;
	font-size: 16px;
	line-height: 25px; 
}

/* COMPANY */

#company {
	padding-bottom: 185px;
}
#company .h2 {
	margin-bottom: 50px;
}
.company {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 80px;
}

/* FREE */

#free {
	padding: 184px 0 274px 0;
	position: relative;
	background: url("../img/free-bg.svg") no-repeat center center / cover;
}
#free .wrp {
	position: relative;
	z-index: 2;
}
#free .h2 {
	margin-bottom: 26px;
}
.free-text {
	text-align: center;
	margin-bottom: 70px;
}
#free .default-button {
	margin: 0 auto;
	width: 383px;
	padding: 20px;
	font-size: 16px;
	font-weight: 700;
	position: relative;
}
#free .default-button:before {
    content: "";
    background: url(../img/arrow.svg) no-repeat center center / 74%;
    width: 50px;
    height: 90px;
    position: absolute;
    left: -66px;
    top: -15px;
}

/* TARIF */

#tarif {
	background: linear-gradient(0deg, #2C9EC7 2%, #000 36%);
	padding-bottom: 105px;
}
#tarif .h2 {
	margin-bottom: 100px;
}
.tarif {
	display: flex;
	justify-content: space-between;
}
.tarif-item {
	width: calc(50% - 20px);
	border-radius: 12px;
	border: 1px solid #00FFAF;
	padding: 43px 41px 50px 48px;
}
.tarif-item-head {
	text-align: center;
	margin-bottom: 39px;
	color: #00FFAF;
	font-size: 32px;
	font-weight: 700;
	line-height: 43.2px;
}
.tarif-item ul li {
	text-align: center;
	margin-bottom: 27px;
	font-size: 20px;
	font-weight: 300;
	line-height: 31px; 
}
.tarif-item .default-button {
	font-size: 15px;
	font-weight: 700;
	padding: 15px 44px;
	width: max-content;
	margin: 40px auto 0 auto;
}

/* REVIEWS */

#reviews {
	padding: 95px 0;
	background: linear-gradient(0deg, #000 57%, #237F9F 90%, #2C9EC7 100%);
}
#reviews .h2 {
	margin-bottom: 90px;
}
.reviews {
	display: flex;
	justify-content: space-between;
}
.reviews-item {
	width: calc(100%/3 - 110px/3);
	text-align: center;
}
.reviews-item-img {
	width: 120px;
	height: 120px;
	display: block;
	margin: 0 auto 19px auto;
	object-fit: cover;
	border-radius: 50%;
}
.reviews-item-name {
	font-size: 16px;
	font-weight: 600;
	line-height: 21.6px;
	margin-bottom: 15px;
}
.reviews-item-text {
	font-size: 15px;
	font-weight: 300;
	line-height: 23.25px; 
}

/* FAQ */

#faq {
	padding: 90px 0 190px 0;
}
#faq .h2 {
	margin-bottom: 80px;
}
.faq-item {
	border-top: 1px solid #00FFAF;
}
.faq-item:last-child {
	border-bottom: 1px solid #00FFAF;
}
.faq-item-button {
	padding: 28px 0;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.faq-item-button .name {
	font-weight: 600;
	line-height: 32.4px;
	width: calc(100% - 50px);
}
.faq-item-button .vector {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	transition: .4s;
	display: flex;
	justify-content: center;
	align-items: center;
}
.faq-item-button.active .vector {
	transform: rotate(45deg);
}
.faq-item-button .vector svg path {
	transition: .4s;
}
.faq-item-button .vector:hover {
	background: #fff;
}
.faq-item-button .vector:hover svg path {
	stroke: #000;
}
.faq-item-content {
	font-size: 16px;
    line-height: 1.55;
    height: 0px;
    overflow: hidden;
    opacity: 0;
    transition: .4s;
}
.faq-item-button.active + .faq-item-content {
	margin-bottom: 20px;
	opacity: 1;
	height: auto;
}

/* FOOTER */

#footer {
	padding: 0 0 40px 0;
}
#footer .wrp {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.footer-soc {
	display: flex;
	gap: 11px;
}
.footer-menu {
	display: flex;
	gap: 20px;
}
.footer-menu li a {
	font-size: 16px;
}

#backcall-modal {
	width: 600px;
	background: #000;
	border-radius: 20px;
	padding: 40px 20px;
}
#backcall-modal .h2 {
	margin-bottom: 24px;
}
#backcall-modal p {
	font-size: 20px;
	margin-bottom: 20px;
	text-align: center;
}
#backcall-modal form {
	width: 82%;
	margin: 0 auto;
}
#backcall-modal input:not(.default-button) {
	width: 100%;
	background: transparent;
	display: block;
	border: none;
	border-bottom: 1px solid #fff;
	margin-bottom: 12px;
	padding: 10px 0;
}
#backcall-modal .default-button {
	font-size: 20px;
	width: 100%;
	padding: 20px;
	margin-top: 30px;
}

#thanks-modal {
	width: 600px;
    background: #000;
    border-radius: 20px;
    padding: 40px 20px;
    text-align: center;
}
#thanks-modal .h2 {
	margin-bottom: 24px;
}