/*!
Theme Name: Imersum
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: imersum
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Imersum is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

:root {
	--main-primary: #C219B3;
	--main-black: #000000;
	--main-blue: #060C1C;
	--main-white: #ffffff;
	--main-tag: #979797;
	--main-bg-gray: #F1F1F1;
	--main-bg-item: #00000033;
	--main-bg-item-hover: #00000066;
	--main-gray-text: #9DA6BB;
	--fast: 0.2s;
	--slow: 0.4s;
	--main-gradient-hz: linear-gradient(90deg, #29B6D4 3%, #9A44CE 51.5%, #CB10AD 100%);
	--main-gradient-vt: linear-gradient(180deg, #F608A3 0%, #60AFF1 100%);
}

* {
	box-sizing: border-box;
	margin: 0px;
	padding: 0px;
	font-family: 'Montserrat', sans-serif;
}

html {
	scroll-behavior: initial!important;
	margin-top: 0px!important;
}

.x1, .x2, .x3, .x4, .x5, .x6, .x7, .x8 {
	opacity: 0;
	transform: translateX(-120px);
}
.x1 {
	transition: all ease .7s .1s;
}
.x2 {
	transition: all ease .7s .4s;
}
.x3 {
	transition: all ease .7s .7s;
}
.x4 {
	transition: all ease .7s 1s;
}
.x5 {
	transition: all ease .7s 1.3s;
}
.x6 {
	transition: all ease .7s 1.6s;
}
.x7 {
	transition: all ease .7s 1.8s;
}
.x8 {
	transition: all ease .7s 2s;
}
.ready .visible.x1, 
.ready .visible.x2, 
.ready .visible.x3, 
.ready .visible.x4, 
.ready .visible.x5, 
.ready .visible.x6,
.ready .visible.x7, 
.ready .visible.x8 {
	opacity: 1;
	transform: translateX(0px);
}

.y1, .y2, .y3, .y4, .y5, .y6, .y7, .y8 {
	opacity: 0;
	transform: translateY(120px);
}
.y1 {
	transition: all ease .7s .1s;
	transition: opacity 1.2s .1s, transform 1.4s;
}
.y2 {
	transition: all ease .7s .4s;
}
.y3 {
	transition: all ease .7s .7s;
}
.y4 {
	transition: all ease .7s 1s;
}
.y5 {
	transition: all ease .7s 1.3s;
}
.y6 {
	transition: all ease .7s 1.6s;
}
.y7 {
	transition: all ease .7s 1.8s;
}
.y8 {
	transition: all ease .7s 2s;
}
.ready .visible.y1, 
.ready .visible.y2, 
.ready .visible.y3, 
.ready .visible.y4, 
.ready .visible.y5, 
.ready .visible.y6, 
.ready .visible.y7, 
.ready .visible.y8 {
	opacity: 1;
	transform: translateX(0px);
}

.site#page {
	overflow: clip;
	background-color: var(--main-black);
}

.button {
	font-size: 1em;
	line-height: 125%;
	font-weight: 700;
	color: var(--main-white);
	padding: 15px 28px;
	border: 1px solid var(--main-white);
	background-color: transparent;
	text-decoration: none;
	border-radius: 100px;
	text-align: center;
	position: relative;
	z-index: 2;
	transition: var(--fast);
	display: inline-block;
}

.button.primary {
	border: none;
	padding: 16px 29px;
	background: var(--main-gradient-hz);
	color: var(--main-white);
}

@media screen and (min-width: 576px) {
	.button:hover {
		background-color: var(--main-white);
		color: var(--main-black);
	}

	.button.primary:hover {
		opacity: 0.8;
		background: var(--main-gradient-hz);
		color: var(--main-white);
	}
}

header.header {
	position: sticky;
	z-index: 100;
	top: 0px;
	width: 100%;
	display: flex;
	align-items: center;
	backdrop-filter: blur(10px);
	background-color: #00000080;
}

header.header .header-wrap {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 20px 80px;
	width: 100%;
	max-width: 1740px;
	margin: 0px auto;
}

header.header .header-wrap .logo {
	height: 23px;
	margin-right: 12px;
	z-index: 2;
	display: flex;
	align-items: center;
}

header.header .header-wrap .logo img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: left;
}

header.header .header-wrap .header-menu {
	margin-left: auto;
	margin-right: auto;
}

header.header .header-wrap .menu {
	padding: 0px;
	margin: 0px;
	list-style: none;
	display: flex;
	align-items: center;
}

header.header .header-wrap .menu > li {
	margin: 0px 18px;
}

header.header .header-wrap .menu > li.pll-parent-menu-item {
	margin: 0px;
}

header.header .header-wrap .menu > li::after {
	position: absolute;
	content: '';
	left: 0px;
	bottom: 0px;
	height: 50%;
	width: 100%;
	opacity: 0;
	pointer-events: none;
	user-select: none;
}

@media screen and (min-width: 576px) {
	header.header .header-wrap .menu > li:hover::after {
		pointer-events: all;
		user-select: auto;
	}
}

header.header .header-wrap .menu > li > a {
	text-decoration: none;
	color: var(--main-white);
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	font-size: 1em;
	line-height: 120%;
	font-weight: 700;
	transition: var(--fast);
}

header.header .header-wrap .menu > li.menu-item-has-children > a::after {
	content: '';
	width: 16px;
	height: 10px;
	margin-left: 6px;
	background-image: url(assets/img/menu-dropdown.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

@media screen and (min-width: 576px) {
	header.header .header-wrap .menu > li:hover > a {
		color: var(--main-primary);
	}
}

header.header .header-wrap .menu > li.current-menu-item > a {
	color: var(--main-primary);
}

header.header .header-wrap .menu > li > .sub-menu {
	position: absolute;
	top: 100%;
	padding: 12px 16px;
	list-style: none;
	background-color: var(--main-black);
	opacity: 0;
	pointer-events: none;
	user-select: none;
	transition: var(--slow);
}

header.header .header-wrap .menu > li.pll-parent-menu-item > .sub-menu {
	margin-left: -12px;
}

@media screen and (min-width: 576px) {
	header.header .header-wrap .menu > li:hover > .sub-menu {
		opacity: 1;
		pointer-events: all;
		user-select: auto;
	}
}

header.header .header-wrap .menu > li > .sub-menu > li {
	display: flex;
}

header.header .header-wrap .menu > li > .sub-menu > li:not(:first-child) {
	margin-top: 8px;
}

header.header .header-wrap .menu > li > .sub-menu > li > a {
	text-decoration: none;
	color: var(--main-white);
	font-size: 1em;
	line-height: 120%;
	font-weight: 500;
}

header.header .header-wrap .language-menu {
	margin-left: 24px;
}

header.header .header-wrap .phone-btn {
	margin: 0px 12px;
	display: flex;
	align-items: center;
}

header.header .header-wrap .phone-btn a {
	font-size: 1em;
	font-weight: 400;
	color: var(--main-black);
	position: relative;
	display: flex;
	align-items: center;
	text-decoration: none;
}

header.header .header-wrap .phone-btn a::before {
	content: '';
	width: 23px;
	height: 23px;
	background-image: url(assets/img/phone-icon.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	margin-right: 6px;
}

header.header .header-wrap .menu-btn {
	display: none;
}

header.header .header-wrap .header-phone {
	display: none;
}

header.header .header-wrap .social-menu {
	display: flex;
}

header.header .header-wrap .social-menu .menu {
	list-style: none;
	padding: 0px;
	margin: 0px;
	display: flex;
	align-items: center;
}

header.header .header-wrap .social-menu .menu li {
	display: flex;
	margin: 0px;
	margin-right: 12px;
	display: none;
}

header.header .header-wrap .social-menu .menu li a {
	font-size: 0;
	color: transparent;
	width: 30px;
	height: 30px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

header.header .header-wrap .social-menu .menu li:has(a[href*="facebook"]),
header.header .header-wrap .social-menu .menu li:has(a[href*="youtube"]) {
	display: flex;
}

header.header .header-wrap .social-menu .menu li a[href*="facebook"] {
	background-image: url(assets/img/facebook-primary.svg);
}

header.header .header-wrap .social-menu .menu li a[href*="t.me"] {
	background-image: url(assets/img/telegram-primary.svg);
}

header.header .header-wrap .social-menu .menu li a[href*="youtube"] {
	background-image: url(assets/img/youtube-primary.svg);
}

header.header .header-wrap .social-menu .menu li a[href*="instagram"] {
	background-image: url(assets/img/instagram-primary.svg);
}

/* @media screen and (min-width: 576px) {
	header.header .header-wrap .social-menu .menu li a:hover[href*="facebook"] {
		background-image: url(assets/img/facebook-white.svg);
	}

	header.header .header-wrap .social-menu .menu li a:hover[href*="t.me"] {
		background-image: url(assets/img/telegram-white.svg);
	}

	header.header .header-wrap .social-menu .menu li a:hover[href*="youtube"] {
		background-image: url(assets/img/youtube-white.svg);
	}

	header.header .header-wrap .social-menu .menu li a:hover[href*="instagram"] {
		background-image: url(assets/img/instagram-white.svg);
	}
} */

header.header .header-wrap .app-btn {
	margin-left: 24px;
}

header.header .header-wrap .contact-btn {
	margin-left: 24px;
}

.container-fluid {
	padding: 0px 80px;
	max-width: 1740px;
}

.container-fluid .row {
	margin-left: -15px;
	margin-right: -15px;
}

.container-fluid .row [class*="col-"] {
	padding-left: 15px;
	padding-right: 15px;
}

footer.footer {
	background-color: var(--main-black);
	display: flex;
	flex-direction: column;
	position: relative;
	z-index: 1;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	background-image: url(assets/img/footer-bg.png);
	padding: 60px 0px;
}

footer.footer .footer-info {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

footer.footer .footer-info a.logo {
	height: 30px;
	margin-bottom: 30px;
}

footer.footer .footer-info a.logo img {
	height: 100%;
}

footer.footer .footer-info p.text {
	font-size: 1em;
	line-height: 120%;
	font-weight: 400;
	color: var(--main-gray-text);
	margin-bottom: 20px;
}

footer.footer .footer-info .contact-info {
	list-style: none;
	padding: 0px;
	margin: 0px;
}

footer.footer .footer-info .contact-info li {
	display: flex;
	align-items: center;
	margin-bottom: 15px;
	font-size: 1em;
	color: var(--main-gray-text);
	padding-left: 36px;
	position: relative;
}

footer.footer .footer-info .contact-info li a {
	color: var(--main-gray-text);
	text-decoration: none;
	transition: var(--fast);
}

@media screen and (min-width: 576px) {
	footer.footer .footer-info .contact-info li a:hover {
		color: var(--main-white);
	}
}

footer.footer .footer-info .contact-info li::before {
	content: '';
	position: absolute;
	transform: translateY(-50%);
	top: 50%;
	left: 0px;
	width: 24px;
	height: 24px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

footer.footer .footer-info .contact-info li:nth-child(1):before {
	background-image: url(assets/img/footer-address-icon.svg);
}

footer.footer .footer-info .contact-info li:nth-child(2):before {
	background-image: url(assets/img/footer-phone-icon.svg);
}

footer.footer .footer-info .contact-info li:nth-child(3):before {
	background-image: url(assets/img/footer-email-icon.svg);
}

footer.footer .footer-info .social-menu .menu {
	list-style: none;
	padding: 0px;
	margin: 0px -6px;
	display: flex;
	align-items: center;
}

footer.footer .footer-info .social-menu .menu li {
	display: flex;
	margin: 0px 6px;
}

footer.footer .footer-info .social-menu .menu li a {
	font-size: 0;
	color: transparent;
	width: 36px;
	height: 36px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 55% 55%;
	border-radius: 100%;
	background-color: var(--main-white);
}

footer.footer .footer-info .social-menu .menu li a[href*="facebook"] {
	background-image: url(assets/img/facebook-primary.svg);
}

footer.footer .footer-info .social-menu .menu li a[href*="t.me"] {
	background-image: url(assets/img/telegram-primary.svg);
}

footer.footer .footer-info .social-menu .menu li a[href*="youtube"] {
	background-image: url(assets/img/youtube-primary.svg);
}

footer.footer .footer-info .social-menu .menu li a[href*="instagram"] {
	background-image: url(assets/img/instagram-primary.svg);
}

@media screen and (min-width: 576px) {
	footer.footer .footer-info .social-menu .menu li a:hover {
		background-color: var(--main-primary);
	}

	footer.footer .footer-info .social-menu .menu li a:hover[href*="facebook"] {
		background-image: url(assets/img/facebook-white.svg);
	}

	footer.footer .footer-info .social-menu .menu li a:hover[href*="t.me"] {
		background-image: url(assets/img/telegram-white.svg);
	}

	footer.footer .footer-info .social-menu .menu li a:hover[href*="youtube"] {
		background-image: url(assets/img/youtube-white.svg);
	}

	footer.footer .footer-info .social-menu .menu li a:hover[href*="instagram"] {
		background-image: url(assets/img/instagram-white.svg);
	}
}

footer.footer .footer-info p.h4 {
	font-size: 1em;
	line-height: 120%;
	font-weight: 700;
	color: var(--main-white);
	margin-bottom: 20px;
}

footer.footer .footer-info .footer-menu .menu {
	list-style: none;
	padding: 0px;
	margin: 0px;
}

footer.footer .footer-info .footer-menu .menu li {
	margin-bottom: 15px;
}

footer.footer .footer-info .footer-menu .menu li a {
	font-size: 1em;
	line-height: 120%;
	font-weight: 400;
	color: var(--main-gray-text);
	text-decoration: none;
	transition: var(--fast);
}

@media screen and (min-width: 576px) {
	footer.footer .footer-info .footer-menu .menu li a:hover {
		color: var(--main-white);
	}
}

footer.footer .footer-info .btns-wrap {
	display: flex;
	flex-wrap: wrap;
	margin: 0px -12px;
}

footer.footer .footer-info .btns-wrap a {
	width: 156px;
	height: 46px;
	margin: 12px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

footer.footer .footer-info .btns-wrap a.appstore {
	background-image: url(assets/img/appstore.png);
}

footer.footer .footer-info .btns-wrap a.googleplay {
	background-image: url(assets/img/googleplay.png);
}

footer.footer .footer-info.footer-copyright {
	padding-top: 40px;
}

footer.footer .footer-info.footer-copyright p.text {
	margin-bottom: 0px;
}

section {
	position: relative;
	z-index: 1;
}

section.main {
	background-color: var(--main-black);
	position: relative;
	z-index: 2;
}

section.main > video {
	position: absolute;
	z-index: -1;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

section.main > .main-bg {
	position: absolute;
	z-index: -1;
	left: 20%;
	top: 0px;
	width: 80%;
	height: 100%;
	object-fit: cover;
}

section.main .main-wrap {
	position: relative;
	z-index: 2;
	padding: 60px 0px;
	background-color: var(--main-bg-item);
}

section.main .main-wrap .main-caption {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding-top: 60px;
	padding-bottom: 120px;
}

section.main .main-wrap .main-caption span.uppertitle {
	font-size: 1.25em;
	line-height: 150%;
	font-weight: 700;
	color: var(--main-primary);
	margin-bottom: 24px;
	text-transform: uppercase;
}

section.main .main-wrap .main-caption h1 {
	font-size: 5.375em;
	font-weight: 700;
	line-height: 120%;
	color: var(--main-white);
	position: relative;
	margin-bottom: 44px;
}

section.main .main-wrap .main-caption h1 span {
	color: var(--main-primary);
}

section.main .main-wrap .main-caption p {
	font-size: 1.25em;
	font-weight: 400;
	line-height: 120%;
	color: var(--main-gray-text);
	margin-bottom: 0px;
	max-width: 70%;
}

section.main .main-wrap .main-caption a.button {
	margin-top: 36px;
	min-width: 200px;
	text-align: center;
}

section.main .main-wrap .main-services {
	display: flex;
	flex-wrap: wrap;
	margin: 0px -15px;
}

section.main .main-wrap .main-services .main-item {
	padding: 15px;
	width: calc(100% / 2);
	display: flex;
}

section.main .main-wrap .main-services .main-item  .item-link {
	width: 100%;
	padding-top: 80%;
	position: relative;
	border: 1px solid var(--main-white);
	border-radius: 10px;
	overflow: hidden;
	background-color: transparent;
	transition: var(--slow);
}

section.main .main-wrap .main-services .main-item  .item-link .caption {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	padding: 32px 24px;
}


section.main .main-wrap .main-services .main-item  .item-link .caption::after {
	position: absolute;
	content: '';
	left: 24px;
	bottom: 32px;
	width: 60px;
	height: 10px;
	background-color: var(--main-primary);
	transition: var(--slow);
}

section.main .main-wrap .main-services .main-item  .item-link .caption p.h2 {
	font-size: 1.5em;
	color: var(--main-white);
	line-height: 120%;
	font-weight: 400;
	transition: var(--slow);
	text-transform: uppercase;
}

@media screen and (min-width: 576px) {
	section.main .main-wrap .main-services .main-item  .item-link:hover {
		background-color: var(--main-white);
	}

	section.main .main-wrap .main-services .main-item  .item-link:hover .caption::after {
		width: 135px;
	}

	section.main .main-wrap .main-services .main-item  .item-link:hover .caption p.h2 {
		color: var(--main-black);
	}
}

section.main .main-wrap .col-12:has(.link.text-circle) {
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
}

section.main .main-wrap .link.text-circle {
	width: 230px;
	height: 230px;
	border-radius: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	color: var(--main-white);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	transition: var(--slow);
	position: relative;
	cursor: pointer;
}

section.main .main-wrap .link.text-circle .rotate {
	font-size: 1.375em;
	line-height: 120%;
	font-weight: 700;
	width: 100%;
	height: 100%;
	position: relative;
	animation: effect 10s linear infinite;
	border-radius: 100%;
}

@keyframes effect {
	0% {
		transform: rotate(0deg)
	}

	100% {
		transform: rotate(360deg)
	}
}

section.main .main-wrap .link.text-circle .rotate span {
	position: absolute;
	left: 50%;
	transform-origin: 0 115px;
	color: var(--main-white);
}

section.main .main-wrap .link.text-circle::after {
	content: '';
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 23%;
	height: 27%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	background-image: url(assets/img/arrow-down-white.svg);
}

section.services {
	padding: 60px 0px;
	background-color: var(--main-black);
}

section.services .main-services {
	display: flex;
	flex-wrap: wrap;
}

section.services .main-services .services-item {
	width: calc(100% / 4);
}

.services-item .item-link {
	border-radius: 10px;
	background-color: var(--main-blue);
	padding: 50px 20px;
	display: flex;
	flex-direction: column;
	align-items: center;
	position: relative;
	transition: var(--fast);
	text-decoration: none;
	height: 100%;
	z-index: 1;
}

.services-item .item-link::before {
	content: '';
	position: absolute;
	z-index: 2;
	left: 1px;
	top: 1px;
	right: 1px;
	bottom: 1px;
	background: var(--main-gradient-vt);
	border-radius: 10px;
	overflow: hidden;
	opacity: 0;
	transition: var(--fast);
}

@media screen and (min-width: 576px) {
	.services-item .item-link:hover {
		z-index: 2;
	}
}

@media screen and (min-width: 576px) {
	.services-item .item-link:hover::before {
		left: -25px;
		top: -25px;
		right: -25px;
		bottom: -25px;
		opacity: 1;
	}
}

.services-item .item-link .thumbnail {
	width: 115px;
	height: 115px;
	border-radius: 100%;
	margin-bottom: 20px;
	background: #00000000;
	transition: var(--fast);
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: 2;
}

@media screen and (min-width: 576px) {
	.services-item .item-link:hover .thumbnail {
		background: #0000004D;
	}
}

.services-item .item-link .thumbnail span {
	width: 60%;
	height: 60%;
	background-color: var(--main-primary);
	-webkit-mask-size: 100% 100%;
	mask-size: 100% 100%;
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-position: center;
	-webkit-mask-position: center;
	transition: var(--fast);
}

@media screen and (min-width: 576px) {
	.services-item .item-link:hover .thumbnail span {
		background-color: var(--main-white);
	}
}

.services-item .item-link .caption {
	max-width: 70%;
	position: relative;
	z-index: 2;
}

.services-item .item-link .caption .h2 {
	font-size: 1.5em;
	line-height: 120%;
	font-weight: 700;
	color: var(--main-white);
	margin: 0px;
	text-align: center;
}

.services-item .item-link .caption .text {
	color: #9DA6BB;
	font-size: 0.75em;
	line-height: 120%;
	font-weight: 400;
	margin: 10px 0px;
	text-align: center;
	transition: var(--fast);
}

@media screen and (min-width: 576px) {
	.services-item .item-link:hover .caption .text {
		color: var(--main-white);
	}
}

.services-item .item-link .caption .link {
	font-size: 1em;
	line-height: 120%;
	font-weight: 700;
	color: var(--main-primary);
	display: flex;
	align-items: center;
	justify-content: center;
}

.services-item .item-link .caption .link::after {
	content: '';
	width: 12px;
	height: 10px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	background-image: url(assets/img/arrow-right-primary.svg);
	margin-left: 8px;
}

section.about {
	padding: 60px 0px;
}

h2.section-title {
	font-size: 3em;
	color: var(--main-white);
	line-height: 120%;
	font-weight: 700;
	margin-bottom: 0px;
}

section.about h2.section-title {
	position: relative;
	padding-bottom: 20px;
}

section.about h2.section-title::after {
	position: absolute;
	content: '';
	left: 0px;
	bottom: 0px;
	width: 100px;
	height: 10px;
	background-color: var(--main-primary);
}

section.about p {
	font-size: 1.25em;
	color: var(--main-white);
	font-weight: 400;
	line-height: 120%;
	margin-bottom: 16px;
}

section.about p:has(a) {
	display: flex;
	justify-content: flex-start;
	margin-bottom: 0px;
}

section.about p a {
	font-size: 1em;
	color: var(--main-primary);
	display: flex;
	align-items: center;
	font-weight: 700;
	line-height: 120%;
	text-decoration: none;
	transition: var(--slow);
}

section.about p a span {
	font-size: 1em;
	color: var(--main-primary);
	font-weight: 700;
	line-height: 120%;
	border-bottom: 1px solid var(--main-primary);
}

section.about p a::after {
	content: '';
	width: 18px;
	height: 18px;
	margin-left: 8px;
	background-image: url(assets/img/link-arrow-primary.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	transition: var(--slow);
}

@media screen and (min-width: 576px) {
	section.about p a:hover {
		opacity: 0.8;
	}

	section.about p a:hover::after {
		margin-left: 16px;
	}
}

section.solutions {
	padding: 60px 0px;
	background-color: var(--main-black);
	background-image: url(assets/img/section-bg.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

section.solutions .title-wrap {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 25px;
}

.slider-arrows {
	display: flex;
	align-items: center;
}

.slider-arrows .slick-arrow {
	width: 42px;
	min-width: 42px;
	height: 36px;
	background-color: transparent;
	border: none;
	box-shadow: none;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	transition: var(--slow);
	font-size: 0;
	color: transparent;
}

.slider-arrows .slick-arrow:first-child {
	margin-right: 26px;
}

.slider-arrows .slick-arrow.slick-prev {
	background-image: url(assets/img/arrow-left-primary.svg);
}

.slider-arrows .slick-arrow.slick-next {
	background-image: url(assets/img/arrow-right-primary.svg);
}

.slider-arrows .slick-arrow.slick-disabled {
	filter: grayscale(1);
	user-select: none;
	pointer-events: none;
}

.slick-slider .slick-list {
	overflow: visible;
	width: 100%;
}

.slick-slider .slick-list .slick-track {
	display: flex;
}

.slick-slider .slick-list .slick-track .slick-slide {
	height: auto;
}

.slick-slider .slick-list .slick-track .slick-slide > div {
	height: 100%;
	display: flex;
}

.solutions-slider {
	margin: 0px -15px;
}

.solutions-slider .solutions-item {
	padding: 0px 15px;
	height: 100%;
}

.solutions-item .item-link {
	height: 100%;
	border: 1px solid var(--main-white);
	border-radius: 10px;
	text-decoration: none;
	color: var(--main-white);
	display: flex;
	transition: var(--slow);
	position: relative;
	overflow: hidden;
}

.solutions-item .item-link .thumbnail {
	position: absolute;
	z-index: 1;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	opacity: 0;
	transition: var(--slow);
}

.solutions-item .item-link .thumbnail img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.solutions-item .item-link .caption {
	padding: 28px 32px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	transition: var(--slow);
	position: relative;
	z-index: 2;
	width: 100%;
}

.solutions-slider,
section.archive-cases .archive-cases-list {
	counter-reset: solutions-counter;
}

.solutions-item .item-link {
	counter-increment: solutions-counter;
}

.solutions-item .item-link .caption::before {
	content: "0" counter(solutions-counter);
	font-size: 1em;
	color: var(--main-white);
	font-weight: 400;
	line-height: 120%;
	margin-bottom: 18px;
	transition: var(--slow);
}

.solutions-slider .slick-slide:nth-child(1n+10) .solutions-item .item-link .caption::before,
section.archive-cases .archive-cases-list .solutions-item:nth-child(1n+10) .item-link .caption::before {
	content: counter(solutions-counter);
}

.solutions-item .item-link .caption .number {
	font-size: 1em;
	color: var(--main-white);
	font-weight: 400;
	line-height: 120%;
	margin-bottom: 18px;
	transition: var(--slow);
}

.solutions-item .item-link .caption p.h2 {
	font-size: 2em;
	font-weight: 400;
	line-height: 120%;
	color: var(--main-white);
	text-transform: uppercase;
	margin-bottom: 18px;
	transition: var(--slow);
}

.solutions-item .item-link .caption p.text {
	font-size: 1em;
	font-weight: 400;
	line-height: 120%;
	color: var(--main-white);
	margin-bottom: auto;
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 4;
	line-clamp: 4;
	-webkit-box-orient: vertical;
	transition: var(--slow);
}

.solutions-item .item-link .caption .link {
	border-radius: 200px;
	background: var(--main-gradient-hz);
	font-size: 1em;
	font-weight: 400;
	line-height: 125%;
	text-align: center;
	color: var(--main-white);
	border: none;
	box-shadow: none;
	outline: none;
	padding: 16px 29px;
	transition: var(--slow);
	margin-top: 36px;
}

@media screen and (min-width: 576px) {
	.solutions-item .item-link:hover .thumbnail {
		opacity: 1;
	}

	.solutions-item .item-link:hover .caption {
		background-color: var(--main-bg-item-hover);
	}

	.solutions-item .item-link:hover .caption::before {
		color: var(--main-white);
	}

	.solutions-item .item-link:hover .caption .number {
		color: var(--main-white);
	}

	.solutions-item .item-link:hover .caption p.h2 {
		color: var(--main-white);
	}

	.solutions-item .item-link:hover .caption p.text {
		color: var(--main-white);
	}

	.solutions-item .item-link:hover .caption .link {
		opacity: 0.8;
	}
}

section.solution-slide {
	background-color: var(--main-blue);
	padding-top: 130px;
	padding-bottom: 100px;
	position: sticky;
	top: 0px;
	width: 100%;
}

section.solution-slide.first {
	background-color: var(--main-black);
}

section.solution-slide .solution-slide-wrap {
	display: flex;
}

.app-solution-slider section.solution-slide .solution-slide-wrap {
	align-items: center;
}

.app-solution-slider section.solution-slide.reverse .solution-slide-wrap {
	flex-direction: row-reverse;
}

.app-solution-slider section.solution-slide.reverse .solution-slide-wrap .thumbnail {
	padding-right: 0px;
	padding-left: 15px;
}

.app-solution-slider section.solution-slide .solution-slide-wrap .thumbnail .img-wrap {
	padding-top: 65%;
}

.app-solution-slider section.solution-slide.reverse .solution-slide-wrap .caption {
	padding-left: 0px;
	padding-right: 15px;
}

section.solution-slide .solution-slide-wrap .thumbnail {
	width: 50%;
	padding-right: 15px;
}

section.solution-slide .solution-slide-wrap .thumbnail .img-wrap {
	width: 100%;
	padding-top: 85%;
	position: relative;
	border-radius: 10px;
	overflow: hidden;
}


section.solution-slide .solution-slide-wrap .thumbnail .img-wrap img {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

section.solution-slide .solution-slide-wrap .caption {
	width: 50%;
	padding-left: 15px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

section.solution-slide .solution-slide-wrap .caption span.uppertitle {
	font-size: 1.25em;
	line-height: 120%;
	font-weight: 700;
	color: var(--main-primary);
	text-transform: uppercase;
	margin-bottom: 15px;
}

section.solution-slide .solution-slide-wrap .caption p.h2 {
	font-size: 2.5em;
	line-height: 150%;
	font-weight: 700;
	color: var(--main-white);
	margin-bottom: 20px;
}

section.solution-slide .solution-slide-wrap .caption p.text {
	font-size: 1.125em;
	line-height: 150%;
	font-weight: 400;
	color: var(--main-gray-text);
	margin-bottom: 20px;
}

section.solution-slide .solution-slide-wrap .caption ul {
	list-style: none;
	padding: 0px;
	margin: 0px;
	margin-bottom: 20px;
}

section.solution-slide .solution-slide-wrap .caption ul li {
	font-size: 1.125em;
	line-height: 150%;
	font-weight: 700;
	color: var(--main-white);
	display: flex;
	align-items: center;
	margin-bottom: 15px;
}

section.solution-slide .solution-slide-wrap .caption ul li::before {
	content: '';
	width: 56px;
	min-width: 56px;
	height: 56px;
	border-radius: 100%;
	background-color: #08122B;
	margin-right: 14px;
	background-image: url(assets/img/item-link-arrow-primary.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 25% 25%;
}

section.solution-slide .solution-slide-wrap .caption a.button {
	display: flex;
	align-items: center;
	justify-content: center;
}

section.solution-slide .solution-slide-wrap .caption a.button::after {
	content: '';
	width: 18px;
	height: 15px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	background-image: url(assets/img/arrow-right-white.svg);
	margin-left: 10px;
}

section.banner {
	padding: 30px 0px;
	background-color: var(--main-black);
}

section.banner .banner-wrap {
	border-radius: 10px;
	overflow: hidden;
	padding: 28px 42px;
	background: linear-gradient(93.73deg, #F6079F 3.85%, #51C0F8 74.18%);
}

section.banner .banner-title {
	display: flex;
	flex-direction: column;
	height: 100%;
	position: relative;
}

section.banner .banner-title p.h3 {
	font-size: 1.5em;
	font-weight: 700;
	line-height: 120%;
	color: var(--main-white);
	margin-bottom: 15px;
}

section.banner .banner-title p.text {
	font-size: 1.25em;
	font-weight: 400;
	line-height: 120%;
	color: var(--main-white);
	margin: 0px;
}

section.banner .banner-info {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	height: 100%;
}

section.banner .banner-info .link {
	border-radius: 100px;
	background-color: var(--main-black);
	text-decoration: none;
	white-space: nowrap;
	font-size: 1em;
	font-weight: 700;
	line-height: 125%;
	text-align: center;
	color: var(--main-white);
	border: none;
	box-shadow: none;
	outline: none;
	padding: 16px 29px;
	transition: var(--slow);
}

@media screen and (min-width: 576px) {
	section.banner .banner-info .link:hover {
		opacity: 0.8;
	}
}

section.cases {
	padding: 60px 0px;
	background-color: var(--main-black);
	background-image: url(assets/img/section-bg.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

section span.section-uppertitle {
	display: block;
	font-size: 1.25em;
	line-height: 150%;
	font-weight: 700;
	color: var(--main-primary);
	margin-bottom: 15px;
	text-transform: uppercase;
	text-align: center;
}

section.cases h2.section-title {
	margin-bottom: 15px;
	text-align: center;
}

h2.section-title span {
	color: var(--main-primary);
}

section p.section-undertitle {
	font-size: 1.25em;
	line-height: 150%;
	font-weight: 400;
	color: var(--main-gray-text);
	text-align: center;
	margin-bottom: 20px;
}

section.cases .cases-list {
	display: flex;
	flex-wrap: wrap;
	margin: 0px -15px;
}

.cases-list .cases-item {
	padding: 15px;
	width: calc(100% / 2);
	display: flex;
}

.cases-item .item-link {
	display: flex;
	flex-direction: column;
	text-decoration: none;
	position: relative;
	border-radius: 10px;
	width: 100%;
	color: var(--main-white);
	margin-bottom: 50px;
}

.cases-item .item-link .thumbnail {
	width: 100%;
	padding-top: 55%;
	position: relative;
	overflow: hidden;
	border-radius: 10px;
}

.cases-item .item-link .thumbnail img {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.cases-item .item-link .caption {
	position: absolute;
	left: 50px;
	right: 50px;
	bottom: -50px;
	background-color: #12102BBD;
	padding: 25px 35px;
	display: flex;
	flex-direction: column;
	transition: var(--slow);
	border-radius: 10px;
	overflow: hidden;
	backdrop-filter: blur(5px);
}

.cases-item .item-link .caption p.h2 {
	font-size: 2.25em;
	font-weight: 700;
	line-height: 120%;
	color: var(--main-white);
	margin-bottom: 10px;
}

.cases-item .item-link .caption p.text {
	font-size: 1em;
	line-height: 120%;
	font-weight: 400;
	color: var(--main-gray-text);
	margin-bottom: 15px;
}

.cases-item .item-link .caption span.link {
	font-size: 1em;
	line-height: 120%;
	font-weight: 700;
	color: var(--main-primary);
	display: flex;
	align-items: center;
}

.cases-item .item-link .caption span.link::after {
	content: '';
	width: 12px;
	height: 10px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	background-image: url(assets/img/arrow-right-primary.svg);
	margin-left: 8px;
}

section.cases .btn-wrap {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 20px;
}

section.reviews {
	padding: 60px 0px;
	background-color: var(--main-black);
}

section.reviews h2.section-title {
	margin-bottom: 40px;
	text-align: center;
}

section.reviews h2.section-title.text-left {
	text-align: left;
}

.reviews-slider {
	margin: 0px -15px;
}

.reviews-slider .reviews-item {
	padding: 0px 15px;
	height: 100%;
}

.reviews-item .item-link {
	height: 100%;
	border: none;
	border-radius: 10px;
	padding: 30px 24px;
	text-decoration: none;
	color: var(--main-white);
	display: flex;
	transition: var(--slow);
	background-color: var(--main-blue);
	overflow: hidden;
}

.reviews-item .item-link .caption {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.reviews-item .item-link .caption::after {
	content: '';
	width: 64px;
	height: 48px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	background-image: url(assets/img/reviews-quote.svg);
	margin-top: 10px;
	margin-left: auto;
}

.reviews-item .item-link .caption p.text {
	font-size: 1.125em;
	font-weight: 400;
	line-height: 120%;
	color: var(--main-gray-text);
	text-align: center;
	margin-bottom: 24px;
}

.reviews-item .item-link .caption .title-wrap {
	width: 100%;
	display: flex;
	align-items: center;
	margin-top: auto;
}

.reviews-item .item-link .caption .title-wrap .thumbnail {
	margin-right: 20px;
	display: flex;
	height: 64px;
	width: 64px;
	min-width: 64px;
	overflow: hidden;
	border-radius: 100%;
}

.reviews-item .item-link .caption .title-wrap .thumbnail img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.reviews-item .item-link .caption .title-wrap .name-wrap {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.reviews-item .item-link .caption .title-wrap .name-wrap p.h2 {
	font-size: 1.125em;
	font-weight: 700;
	line-height: 120%;
	color: var(--main-white);
	margin-bottom: 8px;
	text-align: center;
}

.reviews-item .item-link .caption .title-wrap .name-wrap .position {
	font-size: 1em;
	font-weight: 500;
	line-height: 120%;
	color: var(--main-primary);
	text-align: center;
}

.reviews-slider.slick-slider .slick-dots {
	margin-top: 40px;
}

.mfp-content:has(.banner-modal-wrap) {
	max-width: 740px;
	padding: 30px 0px;
}

.mfp-content .banner-modal-wrap {
	background-color: var(--main-black);
	border-radius: 10px;
	overflow: hidden;
	padding: 25px 30px;
	position: relative;
}

.mfp-content .banner-modal-wrap .mfp-close {
	color: transparent;
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	right: 15px;
	top: 15px;
	width: 40px;
	height: 40px;
}

.mfp-content .banner-modal-wrap .mfp-close::after,
.mfp-content .banner-modal-wrap .mfp-close::before {
	position: absolute;
	content: '';
	height: 3px;
	width: 100%;
	background-color: var(--main-primary);
	transform: rotate(45deg);
}

.mfp-content .banner-modal-wrap .mfp-close::before {
	transform: rotate(-45deg);
}

.mfp-content .banner-modal-wrap p.h3 {
	font-size: 1.5em;
	font-weight: 700;
	line-height: 120%;
	margin-bottom: 25px;
	color: var(--main-white);
	padding-right: 30px;
}

.mfp-content .banner-modal-wrap form p {
	margin-bottom: 12px;
	display: flex;
	flex-wrap: wrap;
	color: var(--main-white);
	font-size: 1em;
}

.mfp-content .banner-modal-wrap form p label {
	width: 100%;
}

.mfp-content .banner-modal-wrap form p label > span {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}

.mfp-content .banner-modal-wrap form p label > span:first-child {
	display: none;
}

.mfp-content .banner-modal-wrap form p input:not([type="submit"]),
.mfp-content .banner-modal-wrap form p textarea {
	width: 100%;
	border: none;
	border-bottom: 1px solid var(--main-white);
	background-color: transparent;
	padding: 12px 0px;
	font-size: 1.125em;
	color: var(--main-white);
	outline: none;
	box-shadow: none;
	resize: none;
}

.mfp-content .banner-modal-wrap form p input:not([type="submit"])::placeholder,
.mfp-content .banner-modal-wrap form p textarea::placeholder {
	color: var(--main-white);
}

.mfp-content .banner-modal-wrap form p input:-webkit-autofill,
.mfp-content .banner-modal-wrap form p input:-webkit-autofill:hover,
.mfp-content .banner-modal-wrap form p input:-webkit-autofill:focus,
.mfp-content .banner-modal-wrap form p input:-webkit-autofill:active {
  -webkit-text-fill-color: var(--main-white);
  -webkit-box-shadow: inherit;
  transition: background-color 5000s ease-in-out 5000s;
	caret-color: var(--main-white);
}

.mfp-content .banner-modal-wrap form p:has(input[type="submit"]) {
	margin-bottom: 0px;
	margin-top: 30px;
	display: flex;
	align-items: center;
}

.mfp-content .banner-modal-wrap form p input[type="submit"] {
	border-radius: 100px;
	background: var(--main-gradient-hz);
	font-size: 1em;
	font-weight: 400;
	line-height: 120%;
	text-align: center;
	color: var(--main-white);
	border: none;
	box-shadow: none;
	outline: none;
	padding: 16px 29px;
	transition: var(--slow);
}
@media screen and (min-width: 576px) {
	.mfp-content .banner-modal-wrap form p input[type="submit"]:hover {
		opacity: 0.8;
	}
}

.mfp-content .banner-modal-wrap form p .wpcf7-not-valid-tip {
	color: var(--main-white);
	font-size: 0.8em;
	margin-top: 4px;
}

.mfp-content .banner-modal-wrap form .wpcf7-response-output {
	margin: 30px 0px 0px;
	padding: 0.5em 1em;
	border: 1px solid var(--main-white);
	font-size: 1em;
	color: var(--main-white);
}

.mfp-content .banner-modal-wrap form p .wpcf7-checkbox {
	display: flex;
	flex-direction: column;
	width: 100%;
}

.mfp-content .banner-modal-wrap form p .wpcf7-checkbox .wpcf7-list-item {
	margin: 0px;
	margin-bottom: 8px;
}

.mfp-content .banner-modal-wrap form p .wpcf7-checkbox .wpcf7-list-item label {
	display: flex;
}

.mfp-content .banner-modal-wrap form p .wpcf7-checkbox .wpcf7-list-item label input {
	width: auto;
	border: 1px solid var(--main-white);
	background-color: transparent;
	accent-color: var(--main-primary);
}

.mfp-content .banner-modal-wrap form p .wpcf7-checkbox .wpcf7-list-item label span {
	margin-left: 8px;
	color: var(--main-white);
	font-size: 1em;
}

span.top-btn {
	position: fixed;
	z-index: 10;
	left: 40px;
	bottom: 40px;
	cursor: pointer;
	width: 60px;
	height: 60px;
	border-radius: 100%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 50% 50%;
	background-image: url(assets/img/link-arrow-primary.svg);
	opacity: 0;
	user-select: none;
	pointer-events: none;
	transition: var(--slow);
	transform: rotate(-90deg);
	background-color: var(--main-white);
}

span.top-btn.show {
	opacity: 1;
	user-select: auto;
	pointer-events: all;
}

.mobile-menu {
	background-color: var(--main-black);
	position: fixed;
	z-index: 110;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100vh;
	overflow-y: auto;
	overflow-x: clip;
	max-width: 420px;
	padding: 20px 30px 30px 40px;
	box-shadow: 0px 0px 6px var(--main-black);
	opacity: 0;
	pointer-events: none;
	user-select: none;
	transition: var(--fast);
}

.mobile-menu.show {
	opacity: 1;
	user-select: auto;
	pointer-events: all;
}

.mobile-menu .menus {
	display: flex;
	flex-direction: column;
	width: 100%;
}

.mobile-menu .menus .modal-header {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 20px;
}

.mobile-menu .menus .modal-header .logo {
	height: 20px;
	margin: 0px auto;
	display: flex;
}

.mobile-menu .menus .modal-header .logo img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}

.mobile-menu .menus .modal-header .header-phone {
	display: flex;
}

.mobile-menu .menus .modal-header .header-phone a {
	text-decoration: none;
	font-size: 0;
	color: transparent;
	display: flex;
	width: 25px;
	height: 25px;
	background-image: url(assets/img/footer-phone-icon.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

.mobile-menu .menus .modal-header .menu-btn-close {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 25px;
	width: 25px;
	min-width: 25px;
}

.mobile-menu .menus .modal-header .menu-btn-close::before {
	position: fixed;
	content: '';
	right: 0px;
	top: 0px;
	width: calc(100vw - 420px);
	height: 100vh;
}

.mobile-menu .menus .modal-header .menu-btn-close span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
}

.mobile-menu .menus .modal-header .menu-btn-close span::before,
.mobile-menu .menus .modal-header .menu-btn-close span::after {
	content: '';
	position: absolute;
	height: 2px;
	width: 120%;
	background-color: var(--main-white);
}

.mobile-menu .menus .modal-header .menu-btn-close span::before {
	transform: rotate(-45deg);
}

.mobile-menu .menus .modal-header .menu-btn-close span::after {
	transform: rotate(45deg);
}

.mobile-menu .menus .header-menu .menu {
	padding: 0px;
	margin-bottom: 20px;
	list-style: none;
}

.mobile-menu .menus .header-menu .menu > li {
	margin-bottom: 8px;
}

.mobile-menu .menus .header-menu .menu > li > a {
	text-decoration: none;
	color: var(--main-white);
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	font-size: 1.25em;
	font-weight: 700;
}

.mobile-menu .menus .header-menu .menu > li > a span {
	font-weight: 400;
}

.mobile-menu .menus .header-menu .menu > li > .sub-menu {
	list-style: none;
	padding-left: 0px;
}

.mobile-menu .menus .header-menu .menu > li > .sub-menu > li {
	margin-top: 8px;
}

.mobile-menu .menus .header-menu .menu > li > .sub-menu > li > a {
	text-decoration: none;
	color: var(--main-white);
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	font-size: 1.25em;
	font-weight: 700;
}

.mobile-menu .menus .header-menu .menu > li > .sub-menu > li > a > span {
	font-weight: 400;
}

.mobile-menu .menus .language-menu .menu {
	padding: 0px;
	margin-bottom: 20px;
	list-style: none;
	display: flex;
}

.mobile-menu .menus .language-menu .menu > li {
	display: flex;
	align-items: center;
}

.mobile-menu .menus .language-menu .menu > li > a {
	text-decoration: none;
	color: var(--main-white);
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	font-size: 1.125em;
	font-weight: 500;
}

.mobile-menu .menus .language-menu .menu > li > .sub-menu {
	padding: 0px;
	margin: 0px;
	list-style: none;
	display: flex;
	align-items: center;
}

.mobile-menu .menus .language-menu .menu > li > .sub-menu > li {
	margin-left: 16px;
	display: flex;
	align-items: center;
}

.mobile-menu .menus .language-menu .menu > li > .sub-menu > li > a {
	text-decoration: none;
	color: var(--main-white);
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	font-size: 1em;
	font-weight: 500;
}

.mobile-menu .menus .socials-info span.h3 {
	font-size: 1.25em;
	margin-bottom: 14px;
	font-weight: 400;
	color: var(--main-white);
	display: flex;
}

.mobile-menu .menus .socials-info .social-menu .menu {
	padding: 0px;
	margin: 0px;
	display: flex;
	align-items: center;
}

.mobile-menu .menus .socials-info .social-menu .menu li {
	margin-right: 16px;
	display: flex;
}

.mobile-menu .menus .socials-info .social-menu .menu li a {
	font-size: 0;
	color: transparent;
	width: 40px;
	height: 40px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 55% 55%;
	border-radius: 100%;
	background-color: var(--main-white);
}

.mobile-menu .menus .socials-info .social-menu .menu li a[href*="facebook"] {
	background-image: url(assets/img/facebook-primary.svg);
}

.mobile-menu .menus .socials-info .social-menu .menu li a[href*="t.me"] {
	background-image: url(assets/img/telegram-primary.svg);
}

.mobile-menu .menus .socials-info .social-menu .menu li a[href*="youtube"] {
	background-image: url(assets/img/youtube-primary.svg);
}

.mobile-menu .menus .socials-info .social-menu .menu li a[href*="instagram"] {
	background-image: url(assets/img/instagram-primary.svg);
}

@media screen and (min-width: 576px) {
	.mobile-menu .menus .socials-info .social-menu .menu li a:hover {
		background-color: var(--main-primary);
	}

	.mobile-menu .menus .socials-info .social-menu .menu li a:hover[href*="facebook"] {
		background-image: url(assets/img/facebook-white.svg);
	}

	.mobile-menu .menus .socials-info .social-menu .menu li a:hover[href*="t.me"] {
		background-image: url(assets/img/telegram-white.svg);
	}

	.mobile-menu .menus .socials-info .social-menu .menu li a:hover[href*="youtube"] {
		background-image: url(assets/img/youtube-white.svg);
	}

	.mobile-menu .menus .socials-info .social-menu .menu li a:hover[href*="instagram"] {
		background-image: url(assets/img/instagram-white.svg);
	}
}

/* @media screen and (min-width: 1400px) {
	body .site#page {
		zoom: 105%;
	}
}

@media screen and (min-width: 1500px) {
	body .site#page {
		zoom: 115%;
	}
}

@media screen and (min-width: 1600px) {
	body .site#page {
		zoom: 120%;
	}
}

@media screen and (min-width: 1700px) {
	body .site#page {
		zoom: 125%;
	}
} */

.slick-slider .slick-dots {
	margin: 20px 0px 0px;
	padding: 0px 15px;
	display: flex;
	justify-content: center;
	align-items: center;
	list-style: none;
	width: 100%;
}

.slick-slider .slick-dots li {
	margin: 0px 6px;
	display: flex;
}

.slick-slider .slick-dots li button {
	font-size: 0;
	color: transparent;
	background-color: #353B55;
	border: none;
	width: 10px;
	height: 10px;
	border-radius: 100%;
	transition: var(--fast);
}

.slick-slider .slick-dots li.slick-active button {
	background-color: #D9D9D9;
}

section.blog {
	background-color: var(--main-black);
	padding: 60px 0px;
}

section.blog span.section-uppertitle {
	text-align: left;
}

section.blog h2.section-title {
	margin-bottom: 40px;
}

section.blog .blog-slider {
	margin: 0px -15px;
}

section.blog .blog-slider .blog-item {
	padding: 0px 15px;
}

.blog-item .item-link {
	background-color: var(--main-blue);
	border-radius: 10px;
	overflow: hidden;
	text-decoration: none;
	display: flex;
	flex-direction: column;
	height: 100%;
}

.blog-item .item-link .caption {
	padding: 30px;
	display: flex;
	flex-direction: column;
	height: 100%;
}

.blog-item .item-link .caption p.h2 {
	font-size: 1.25em;
	line-height: 150%;
	font-weight: 700;
	color: var(--main-white);
	margin-bottom: 100px;
}

.blog-item .item-link .caption span.link {
	font-size: 1em;
	line-height: 120%;
	font-weight: 700;
	color: var(--main-primary);
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin-top: auto;
}

.blog-item .item-link .caption span.link::after {
	content: '';
	width: 12px;
	height: 10px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	background-image: url(assets/img/arrow-right-primary.svg);
	margin-left: 8px;
}

section.blog .slick-slider.blog-slider .slick-dots {
	margin-top: 40px;
}

section.main.archive-page {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	background-image: url(assets/img/section-main-bg.png);
}

section.main.archive-page .main-wrap {
	min-height: 350px;
	display: flex;
	align-items: center;
	background-color: #00000099;
}

section.main.archive-page .main-wrap .main-caption {
	align-items: center;
	padding: 0px;
}

section.main.archive-page .main-wrap .main-caption h1 {
	margin-bottom: 15px;
	font-size: 3.375em;
	text-align: center;
}

section.main.archive-page .main-wrap .main-caption p {
	color: var(--main-white);
	max-width: 100%;
	text-align: center;
}

#ctis-loading img {
	filter: invert(1);
}

section.archive-cases {
	padding: 60px 0px;
	background-color: var(--main-blue);
}

section.archive-cases .about-cases {
	padding: 30px 0px;
	display: flex;
	flex-direction: column;
	align-items: center;
	max-width: 70%;
	margin: 0px auto;
}

section.archive-cases .about-cases h2.section-title {
	text-align: center;
	margin-bottom: 15px;
}

section.about-info {
	background-color: var(--main-black);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	background-image: url(assets/img/section-bg.png);
}

section.about-info.solution-info {
	background-image: none;
}

section.about-info .about-info-box {
	padding: 90px 0px;
	background-color: var(--main-bg-item);
}

section.about-info .about-info-wrap {
	display: flex;
	flex-direction: column;
	align-items: center;
	max-width: 70%;
	margin: 0px auto;
}

section.about-info .about-info-wrap h2.section-title {
	text-align: center;
	margin-bottom: 15px;
}



section.archive-cases .archive-cases-list {
	display: flex;
	flex-wrap: wrap;
	margin: 0px -15px;
}

section.archive-cases .archive-cases-list .cases-item {
	width: calc(100% / 2);
	padding: 15px;
}

#content .infinite-loader {
	width: 100%;
	margin: 0px;
	padding: 15px;
}

#content .ctis-finished-notice {
	display: none;
}

section.cases-single .page-thumbnail {
  width: 100%;
  position: relative;
  overflow: hidden;
}

section.cases-single .page-thumbnail img {
	position: absolute;
	z-index: 1;
	left: 0px;
	top: 0px;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

section.cases-single .page-thumbnail .caption {
  position: relative;
	z-index: 2;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  padding: 80px 0px 60px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  background-color: var(--main-bg-item-hover);
}

section.cases-single .page-thumbnail .caption .container-fluid {
	display: flex;
  flex-direction: column;
  align-items: flex-start;
}

section.cases-single .page-thumbnail .caption .link-back {
  font-size: 1.2em;
  color: var(--main-white);
  text-decoration: none;
  display: flex;
  align-items: center;
	margin-right: 20px;
	position: relative;
	transition: var(--slow);
}

section.cases-single .page-thumbnail .caption .link-back::before {
  content: '';
  width: 30px;
  min-width: 30px;
  height: 25px;
  margin-right: 0px;
  background-image: url(assets/img/arrow-left-primary.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
	transition: var(--slow);
}

/* @media screen and (min-width: 576px) {
	section.cases-single .page-thumbnail .caption .link-back:hover::before {
		left: -10px;
	}
} */

section.cases-single .page-thumbnail .caption h1 {
  color: #fff;
  font-size: 3.2em;
  line-height: 140%;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 36px;
  max-width: 60%;
}

section.cases-single .page-thumbnail .caption .share-wrap {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-top: 18px;
}

section.cases-single .page-thumbnail .caption .share-wrap a {
	font-size: 0;
	color: transparent;
  width: 60px;
  height: 60px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 55% 55%;
	border-radius: 100%;
	background-color: var(--main-white);
  margin-right: 24px;
}

section.cases-single .page-thumbnail .caption .share-wrap a.facebook {
  background-image: url(assets/img/facebook-primary.svg);
}

section.cases-single .page-thumbnail .caption .share-wrap a.telegram {
  background-image: url(assets/img/telegram-primary.svg);
}

@media screen and (min-width: 576px) {
	section.cases-single .page-thumbnail .caption .share-wrap a:hover {
		background-color: var(--main-primary);
	}

	section.cases-single .page-thumbnail .caption .share-wrap a:hover.facebook {
		background-image: url(assets/img/facebook-white.svg);
	}

	section.cases-single .page-thumbnail .caption .share-wrap a:hover.telegram {
		background-image: url(assets/img/telegram-white.svg);
	}
}

section.cases-single .page-thumbnail .caption .share-wrap span {
  font-size: 1.5em;
  color: #fff;
  font-weight: 400;
}

.page-content h2 {
  font-size: 1.875em;
  color: var(--main-white);
  font-weight: 700;
  margin-bottom: 24px;
}

.page-content h2 a {
  color: var(--main-primary);
	text-decoration: none;
	font-weight: 700;
}

@media screen and (min-width: 575px) {
	.page-content h2 a:hover {
		color: var(--main-primary);
	}
}

.page-content ul li,
.page-content ol li {
  font-size: 1.25em;
  line-height: 130%;
  margin-bottom: 8px;
  color: #9DA6BB;
}

.page-content p {
  font-size: 1.25em;
  line-height: 130%;
  color: #9DA6BB;
  word-break: break-word;
}

.page-content a {
  text-decoration: none;
  color: var(--main-primary);
	font-weight: 700;
}

@media screen and (min-width: 575px) {
	.page-content a:hover {
		color: var(--main-primary);
	}
}

.page-content p:has(.alignright) {
  clear: both;
  margin-bottom: 0px;
}

.page-content p img {
  width: 100%;
}

.page-content p img.alignright {
  float: right;
  width: 50%;
  margin-left: 30px;
  margin-bottom: 16px;
}

.page-content p:has(.alignleft) {
  clear: both;
  margin-bottom: 0px;
}

.page-content p img.alignleft {
  float: left;
  width: 50%;
  margin-right: 30px;
  margin-bottom: 16px;
}

.page-content p:has(.aligncenter) {
  clear: both;
}

.page-content p img.aligncenter {
  width: 80%;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.page-content p:has(iframe),
.page-content p:has(iframe[src*="youtube.com"]),
.page-content .sketchfab-embed-wrapper {
  clear: both;
  padding-top: 56.25%;
  position: relative;
	border-radius: 10px;
	overflow: hidden;
}

@media screen and (min-width: 991px) {
  .page-content p:has(iframe),
  .page-content .sketchfab-embed-wrapper {
    padding-top: calc(80vh);
  }
}

.page-content p iframe,
.page-content .sketchfab-embed-wrapper iframe {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
}

.page-content p:has(iframe[src*="google.com"])::after {
	position: absolute;
	z-index: 2;
	content: '';
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	background-color: var(--main-bg-item);
	cursor: pointer;
}

.page-content p:has(iframe[src*="google.com"])::before {
	position: absolute;
	z-index: 3;
	content: '';
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 150px;
	height: 150px;
	border-radius: 100%;
	background-color: var(--main-primary);
	background-image: url(assets/img/watch-in-360.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 65% 65%;
	cursor: pointer;
}

.page-content p:has(iframe[src*="google.com"]).open::after,
.page-content p:has(iframe[src*="google.com"]).open::before {
	display: none;
}

.page-content .center-column {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  clear: both;
}

.page-content * + p:has(iframe),
.page-content * + .ar-model-wrap,
.page-content * + .sketchfab-embed-wrapper {
  margin-top: 50px;
  margin-bottom: 50px;
}

.page-content * + p:has(img.alignright),
.page-content * + p:has(img.alignleft),
.page-content * + p:has(img.alignnone),
.page-content * + p:has(img.aligncenter) {
  margin-top: 50px;
}

.page-content figure {
  width: 100%!important;
  position: relative;
  margin-top: 50px;
  clear: both;
}

.page-content figure img {
  width: 100%;
}

.page-content figure figcaption {
  position: absolute;
  right: 30px;
  top: 30px;
  font-size: 0.9em;
  font-weight: 400;
  color: #9DA6BB;
  text-transform: uppercase;
  display: flex;
  flex-direction: column;
  text-align: end;
  align-items: flex-end;
  word-spacing: 9999rem;
}

.page-content figure.aligncenter {
  width: 80%!important;
  margin-left: auto;
  margin-right: auto;
}

.page-content figure.alignleft {
  width: 50%!important;
  margin-right: 30px;
  float: left;
}

.page-content figure.alignleft + p {
  margin-top: 66px;
}

.page-content figure.alignright {
  width: 50%!important;
  margin-left: 30px;
  float: right;
}

.page-content figure.alignright + p {
  margin-top: 66px;
}

.page-content figure.alignright:first-child,
.page-content figure.alignleft:first-child {
  margin-top: 0px;
}

.page-content figure.alignright:first-child + p,
.page-content figure.alignleft:first-child + p {
  margin-top: 0px;
}

.page-content .btn-wrap {
  display: flex;
  justify-content: center;
	margin-top: 32px;
}

.page-content .btn-wrap .button-link {
  padding: 18px 40px 16px;
  border: none;
  font-size: 1em;
  font-weight: 400;
	line-height: 120%;
  outline: none;
  background-color: var(--main-primary);
  color: var(--main-white);
  text-align: center;
  text-decoration: none;
  border-radius: 200px;
	transition: var(--slow);
}

@media screen and (min-width: 576px) {
	.page-content .btn-wrap .button-link:hover {
		opacity: 0.8;
	}
}

section.blog.more-cases .cases-list {
	display: flex;
	flex-wrap: wrap;
	margin: 0px -15px;
}

@media screen and (max-width: 1299px) {
  .page-content h2 {
    font-size: 1.75em;
  }

  .page-content ul li,
  .page-content ol li {
    font-size: 1.25em;
  }

  .page-content p {
    font-size: 1.25em;
  }

  .page-content * + p:has(iframe),
	.page-content * + .ar-model-wrap,
  .page-content * + .sketchfab-embed-wrapper {
    margin-top: 40px;
    margin-bottom: 40px;
  }

  .page-content * + p:has(img.alignright),
  .page-content * + p:has(img.alignleft),
  .page-content * + p:has(img.alignnone),
  .page-content * + p:has(img.aligncenter) {
    margin-top: 40px;
  }

  .page-content figure {
    margin-top: 40px;
  }

  .page-content figure.alignleft + p {
    margin-top: 56px;
  }

  .page-content figure.alignright + p {
    margin-top: 56px;
  }

  .page-content figure figcaption {
    font-size: 0.8em;
  }

	section.cases-single .more-cases {
		padding: 20px 0px 40px;
	}

	.page-content .btn-wrap {
		margin-top: 26px;
	}

  .page-content .btn-wrap .button-link {
		padding: 16px 34px 14px;
  }
}

@media screen and (max-width: 991px) {
	.page-content .btn-wrap {
		margin-top: 18px;
	}

  .page-content .btn-wrap .button-link {
		padding: 14px 26px 12px;
  }

  .page-content h2 {
    font-size: 1.5em;
  }

  .page-content ul li,
  .page-content ol li {
    font-size: 1.125em;
  }

  .page-content p {
    font-size: 1.125em;
  }

  .page-content * + p:has(iframe),
	.page-content * + .ar-model-wrap,
  .page-content * + .sketchfab-embed-wrapper {
    margin-top: 30px;
    margin-bottom: 30px;
  }

  .page-content * + p:has(img.alignright),
  .page-content * + p:has(img.alignleft),
  .page-content * + p:has(img.alignnone),
  .page-content * + p:has(img.aligncenter) {
    margin-top: 30px;
  }

  .page-content figure {
    margin-top: 30px;
  }

  .page-content figure.alignleft + p {
    margin-top: 46px;
  }

  .page-content figure.alignright + p {
    margin-top: 46px;
  }

  .page-content figure figcaption {
    font-size: 0.75em;
    top: 20px;
    right: 20px;
  }

  .page-content figure figcaption::after {
    width: 12px;
    height: 12px;
    margin-top: 6px;
  }
	
	section.blog.more-cases .cases-list {
		display: flex;
		flex-wrap: wrap;
		margin: 0px -10px;
	}

	.page-content p:has(iframe[src*="google.com"])::before {
		width: 100px;
		height: 100px;
	}
}

@media screen and (max-width: 767px) {
	.page-content h2 {
    font-size: 1.375em;
		margin-bottom: 20px;
  }

  .page-content ul,
  .page-content ol {
    padding-left: 20px;
  }

  .page-content ul li,
  .page-content ol li {
    font-size: 1em;
  }

  .page-content p {
    font-size: 1em;
  }

  .page-content p img.alignright {
    float: none;
    display: block;
    width: 100%;
    max-width: 550px;
    margin-left: auto;
    margin-right: auto;
  }

  .page-content p img.alignleft {
    float: none;
    display: block;
    width: 100%;
    max-width: 550px;
    margin-left: auto;
    margin-right: auto;
  }

  .page-content .center-column {
    width: 100%;
    max-width: 500px;
  }

  .page-content p img.alignnone {
    display: block;
    width: 100%;
    max-width: 550px;
    margin-left: auto;
    margin-right: auto;
  }

  .page-content p img.aligncenter {
    width: 100%;
    max-width: 500px;
  }

  .page-content * + p:has(iframe),
	.page-content * + .ar-model-wrap,
  .page-content * + .sketchfab-embed-wrapper {
    margin-top: 20px;
    margin-bottom: 20px;
  }

  .page-content * + p:has(img.alignright),
  .page-content * + p:has(img.alignleft),
  .page-content * + p:has(img.alignnone),
  .page-content * + p:has(img.aligncenter) {
    margin-top: 20px;
  }

  .page-content figure {
    margin-top: 20px;
    max-width: 550px;
    margin-left: auto;
    margin-right: auto;
  }

  .page-content figure.alignleft + p {
    margin-top: 0px;
  }

  .page-content figure.alignright + p {
    margin-top: 0px;
  }

  .page-content figure.aligncenter {
    width: 100%!important;
    max-width: 500px;
  }

  .page-content figure.alignleft {
    width: 100%!important;
    margin-right: auto;
    float: none;
  }

  .page-content figure.alignright {
    width: 100%!important;
    margin-left: auto;
    float: none;
  }
	
	section.blog.more-cases .cases-list {
		display: block;
	}

	.page-content p:has(iframe[src*="google.com"]) {
		min-height: 60vh;
	}

	.page-content p:has(iframe[src*="google.com"])::before {
		width: 60px;
		height: 60px;
	}
}

@media screen and (max-width: 575px) {
	.page-content .btn-wrap {
		margin-top: 16px;
	}

  .page-content .btn-wrap .button-link {
    width: 100%;
  }
}

.team-wrap {
  padding: 30px 0px;
}

.team-wrap h2 {
	margin-bottom: 5px;
}

.team-wrap .team-items {
  margin: 0px -15px;
  display: flex;
  flex-wrap: wrap;
}

.team-wrap .team-items .team-item {
  width: calc(100% / 4);
  border: none;
  padding: 0px 15px;
	margin: 15px 0px;
	border-radius: 15px;
	display: flex;
	flex-direction: column;
	position: relative;
}

.team-wrap .team-items .team-item .thumbnail {
	width: 100%;
	padding-top: 120%;
	border-radius: 15px;
	overflow: hidden;
	margin: 0px auto;
	position: relative;
	transition: var(--slow);
}

.team-wrap .team-items .team-item .thumbnail img {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.team-wrap .team-items .team-item .caption {
	position: absolute;
	left: 40px;
	right: 40px;
	bottom: 0px;
	border-radius: 6px;
	padding: 8px;
	background-color: #12102BBD;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.team-wrap .team-items .team-item p {
	font-size: 1.25em;
	font-weight: 500;
	line-height: 120%;
	color: var(--main-white);
	margin-bottom: 4px;
	text-align: center;
}

.team-wrap .team-items .team-item span {
	font-size: 1em;
	font-weight: 500;
	line-height: 120%;
	color: var(--main-primary);
	text-align: center;
}

.press-wrap {
  padding: 30px 0px;
}

.press-wrap .press-title-wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
}

.press-wrap .press-slider {
  padding: 0px;
  margin: 0px -15px;
	list-style: none;
}

.press-wrap .press-slider .press-item {
  padding: 0px 15px;
  height: 100%;
}

.press-wrap .press-slider .press-item a {
  border: 1px solid var(--main-black);
	border-radius: 10px;
  padding: 35px 30px;
  display: flex;
  flex-direction: column;
  text-decoration: none;
  height: 100%;
	transition: var(--slow);
}

@media screen and (min-width: 575px) {
	.press-wrap .press-slider .press-item a:hover {
		background-color: var(--main-bg-gray);
	}
}

.press-wrap .press-slider .press-item a span {
  font-size: 1.2em;
  color: var(--main-tag);
  font-weight: 400;
	line-height: 120%;
}

.press-wrap .press-slider .press-item a p {
  font-size: 1.2em;
  color: var(--main-black);
  font-weight: 400;
  margin: 25px 0px 0px;
  line-height: normal;
	line-height: 140%;
}

section.archive-content {
	padding: 60px 0px;
}

section.archive-cases .archive-cases-list .solutions-item {
	width: calc(100% / 2);
	padding: 15px;
}

section.cases.single-page {
	background-color: var(--main-blue);
	background-image: none;
}

section.cases-single.single-page .page-thumbnail .caption h1 {
	position: relative;
	padding-bottom: 46px;
}

section.cases-single.single-page .page-thumbnail .caption h1::after {
	position: absolute;
	content: '';
	left: 0px;
	bottom: 0px;
	height: 10px;
	width: 135px;
	background-color: var(--main-primary);
}

.sub-nav {
	padding: 30px 0px;
	background-color: var(--main-blue);
}

.sub-nav .sub-nav-wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	margin: 0px -12px;
}

.sub-nav .sub-nav-wrap a {
	border-radius: 100px;
	background-color: transparent;
	font-size: 1em;
	font-weight: 700;
	line-height: 125%;
	text-align: center;
	color: var(--main-white);
	border: 1px solid var(--main-white);
	box-shadow: none;
	outline: none;
	text-decoration: none;
	padding: 15px 28px;
	transition: var(--fast);
	margin: 12px;
}

.sub-nav .sub-nav-wrap a.active {
	border: none;
	padding: 16px 29px;
	background: var(--main-gradient-hz);
}

.page-content .ar-model-wrap {
	margin-bottom: 1rem;
}

.ar-model-wrap {
	clear: both;
	position: relative;
	width: 100%;
	padding-top: calc(80vh);
	border-radius: 10px;
	overflow: hidden;
}

.ar-model-wrap model-viewer {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	outline: none;
	background-color: var(--main-bg-gray);
}

.ar-model-wrap model-viewer #ar-button {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: 15px;
	display: flex;
	align-items: center;
	background-color: var(--main-primary);
	border-radius: 200px;
	border: none;
	box-shadow: none;
	padding: 8px 14px 9px;
	font-size: 0.875em;
	font-weight: 400;
	line-height: 120%;
	text-align: center;
	color: var(--main-white);
	outline: none;
	text-decoration: none;
	white-space: nowrap;
	transition: var(--slow);
	display: none;
}

.ar-model-wrap.open model-viewer #ar-button {
	display: flex!important;
}

.ar-model-wrap model-viewer #ar-button::before {
	content: '';
	width: 20px;
	min-width: 20px;
	height: 20px;
	margin-right: 8px;
	background-image: url(assets/img/ar-icon-white.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

@media screen and (min-width: 991px) {
	.ar-model-wrap model-viewer #ar-button {
		padding: 12px 24px 10px;
		font-size: 1em;
	}

	.ar-model-wrap model-viewer #ar-button::before {
		width: 24px;
		min-width: 24px;
		height: 24px;
	}
}

.ar-model-wrap model-viewer .userInput {
	outline: none;
}

.ar-model-wrap::after {
	position: absolute;
	z-index: 2;
	content: '';
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	background-color: var(--main-bg-item);
	cursor: pointer;
}

.ar-model-wrap::before {
	position: absolute;
	z-index: 3;
	content: '';
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 150px;
	height: 150px;
	border-radius: 100%;
	background-color: var(--main-primary);
	background-image: url(assets/img/ar-icon-white.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 65% 65%;
	cursor: pointer;
}

.ar-model-wrap.open::after,
.ar-model-wrap.open::before {
	display: none;
}

@media screen and (max-width: 991px) {
	.ar-model-wrap::before {
		width: 100px;
		height: 100px;
	}
}

section.contacts-content {
	padding: 60px 0px;
	background-color: var(--main-black);
}

section.contacts-content .contacts-main-wrap {
	background-color: #0C1220;
	border-radius: 10px;
	overflow: hidden;
	display: flex;
	color: var(--main-white);
}

section.contacts-content .contacts-main-wrap h2 {
	margin-bottom: 15px;
}

section.contacts-content .contacts-main-wrap p {
	color: #9DA5BB;
	margin-bottom: 30px;
}

section.contacts-content .contacts-main-wrap hr {
	margin-bottom: 40px;
}

section.contacts-content .contacts-left-wrap {
	width: 40%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 40px;
}

section.contacts-content .contacts-left-wrap ul {
	padding-left: 60px;
	margin-bottom: 36px;
	position: relative;
}

section.contacts-content .contacts-left-wrap ul:last-child {
	margin-bottom: 0px;
}

section.contacts-content .contacts-left-wrap ul li:first-child::before {
	position: absolute;
	content: '';
	left: 0px;
	top: 0px;
	width: 35px;
	height: 35px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

section.contacts-content .contacts-left-wrap ul.phone li:first-child::before {
	background-image: url(assets/img/phone-icon-gray.png);
}

section.contacts-content .contacts-left-wrap ul.address li:first-child::before {
	background-image: url(assets/img/address-icon-gray.png);
}

section.contacts-content .contacts-left-wrap ul.email li:first-child::before {
	background-image: url(assets/img/email-icon-gray.png);
}

section.contacts-content .contacts-left-wrap ul.schedule li:first-child::before {
	background-image: url(assets/img/schedule-icon-gray.png);
}

section.contacts-content .contacts-left-wrap ul.bank li:first-child::before {
	background-image: url(assets/img/bank-icon-gray.png);
}

section.contacts-content .contacts-left-wrap ul li {
	display: flex;
	margin-bottom: 8px;
	font-size: 1.125em;
	color: #9DA5BB;
	line-height: 120%;
	font-weight: 400;
	word-break: break-all;
}

section.contacts-content .contacts-left-wrap ul li a {
	text-decoration: none;
	color: #9DA5BB;
	transition: var(--fast);
}

@media screen and (min-width: 575px) {
	section.contacts-content .contacts-left-wrap ul li a:hover {
		color: var(--main-white);
	}
}

section.contacts-content .contacts-left-wrap ul li:first-child {
	font-weight: 700;
	color: var(--main-white);
}

section.contacts-content .contacts-right-wrap {
	width: 60%;
	padding: 40px 40px 40px 100px;
	background-color: #060C1C;
	border-radius: 10px;
}

section.contacts-content .contacts-right-wrap p {
	font-size: 1em;
	margin-bottom: 24px;
}

section.contacts-content .contacts-right-wrap form {
	display: flex;
	flex-wrap: wrap;
	margin: 0px -15px;
}

section.contacts-content .contacts-right-wrap form p:has(input:not([type="submit"])) {
	width: calc(100% / 2);
}

section.contacts-content .contacts-right-wrap form p {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	padding: 0px 15px;
}

section.contacts-content .contacts-right-wrap form p label {
	width: 100%;
}

section.contacts-content .contacts-right-wrap form p label span {
	margin-bottom: 8px;
	display: inline-block;
	font-weight: 700;
	color: var(--main-white);
	width: 100%;
}

section.contacts-content .contacts-right-wrap form p label span b {
	color: var(--main-primary);
}

section.contacts-content .contacts-right-wrap form p label span:last-child {
	margin-bottom: 0px;
}

section.contacts-content .contacts-right-wrap form p > span {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}

section.contacts-content .contacts-right-wrap form p input:not([type="submit"]),
section.contacts-content .contacts-right-wrap form p textarea {
	width: 100%;
	border: 1px solid #273555;
	background-color: #10192C;
	border-radius: 30px;
	padding: 12px 24px;
	font-size: 1.2em;
	color: var(--main-white);
	outline: none;
	box-shadow: none;
	resize: none;
}

section.contacts-content .contacts-right-wrap form p textarea {
	border-radius: 10px;
}

section.contacts-content .contacts-right-wrap form p input:not([type="submit"])::placeholder,
section.contacts-content .contacts-right-wrap form p textarea::placeholder {
	color: var(--main-white);
}

section.contacts-content .contacts-right-wrap form p input:-webkit-autofill,
section.contacts-content .contacts-right-wrap form p input:-webkit-autofill:hover,
section.contacts-content .contacts-right-wrap form p input:-webkit-autofill:focus,
section.contacts-content .contacts-right-wrap form p input:-webkit-autofill:active {
  -webkit-text-fill-color: var(--main-white);
  -webkit-box-shadow: inherit;
  transition: background-color 5000s ease-in-out 5000s;
	caret-color: var(--main-white);
}

section.contacts-content .contacts-right-wrap form p:has(input[type="submit"]) {
	margin-bottom: 0px;
}

section.contacts-content .contacts-right-wrap form p input[type="submit"] {
	border-radius: 200px;
	background: var(--main-gradient-hz);
	font-size: 1em;
	font-weight: 400;
	line-height: 120%;
	text-align: center;
	color: var(--main-white);
	border: none;
	box-shadow: none;
	outline: none;
	padding: 16px 40px;
	transition: var(--slow);
}

@media screen and (min-width: 576px) {
	section.contacts-content .contacts-right-wrap form p input[type="submit"]:hover {
		opacity: 0.8;
	}
}

section.contacts-content .contacts-right-wrap form p .wpcf7-spinner {
	display: none;
}

section.contacts-content .contacts-right-wrap form p .wpcf7-not-valid-tip {
	color: red;
	font-size: 0.8em;
	margin-top: 4px;
}

section.contacts-content .contacts-right-wrap form .wpcf7-response-output {
	border: 1px solid var(--main-white);
	width: 100%;
	margin: 2em 15px 1em;
	padding: 0.5em 1em;
}

section.team {
	background-color: var(--main-black);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	background-image: url(assets/img/section-bg.png);
	padding: 60px 0px;
}

section.team .team-wrap {
	padding: 0px;
}

section.team span.section-uppertitle {
	text-align: left;
}

section.team p.section-undertitle {
	text-align: left;
}

section.press {
	background-color: var(--main-bg-gray);
	padding: 60px 0px;
}

section.press .press-wrap {
	padding: 0px;
}

@media screen and (min-width: 575px) {
	section.press .press-wrap .press-slider .press-item a:hover {
		background-color: var(--main-white);
	}
}

section.partners {
	padding: 60px 0px;
	background-color: var(--main-blue);
}

section.partners .partners-wrap h2 {
	margin-bottom: 20px;
	text-align: center;
}

section.partners .partners-wrap .partners-items {
	margin: 0px -15px;
	display: flex;
	flex-wrap: wrap;
}

section.partners .partners-wrap .partners-items .partners-item {
	width: calc((100% - 120px) / 4);
  margin: 15px;
  border: none;
  padding: 0px 32px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

section.partners .partners-wrap .partners-items .partners-item .thumbnail {
	width: 70%;
	filter: grayscale(1);
	margin: 0px auto;
	position: relative;
	transition: var(--slow);
}

@media screen and (min-width: 575px) {
	section.partners .partners-wrap .partners-items .partners-item:hover .thumbnail {
		filter: grayscale(0);
	}
}

section.partners .partners-wrap .partners-items .partners-item .thumbnail img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.desktop-ar-modal {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	z-index: 5;
	opacity: 0;
	display: flex;
	align-items: center;
	user-select: none;
	pointer-events: none;
	transition: var(--fast);
}

.desktop-ar-modal.show {
	opacity: 1;
	user-select: auto;
	pointer-events: all;
}

.desktop-ar-modal .modal-wrap {
	position: relative;
	z-index: 2;
	max-width: 450px;
	max-height: 100%;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: center;
	overflow-y: auto;
	padding: 40px 0;
	background-color: var(--main-white);
	border-radius: 20px;
	padding: 50px 24px 26px;
}

.desktop-ar-modal .modal-wrap::-webkit-scrollbar {
	width: 0px;
}

.desktop-ar-modal > .ar-modal-close {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: var(--main-bg-item-hover);
}

.desktop-ar-modal > .ar-modal-close span {
	position: absolute;
	right: 20px;
	top: 20px;
	width: 20px;
	height: 20px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

.desktop-ar-modal > .ar-modal-close span::before, 
.desktop-ar-modal > .ar-modal-close span::after {
	content: '';
	position: absolute;
	height: 3px;
	width: 120%;
	background-color: var(--main-white);
}

.desktop-ar-modal > .ar-modal-close span::before {
	transform: rotate(-45deg);
} 

.desktop-ar-modal > .ar-modal-close span::after {
	transform: rotate(45deg);
}

.desktop-ar-modal .modal-wrap p {
	font-size: 0.75em;
	text-align: center;
	color: var(--main-black);
}

.desktop-ar-modal .modal-wrap p.h3 {
	font-size: 1.25em;
	font-weight: 700;
	position: relative;
	padding-bottom: 18px;
	margin-bottom: 16px;
}

.desktop-ar-modal .modal-wrap p.h3::after {
	position: absolute;
	content: '';
	left: 50%;
	transform: translateX(-50%);
	bottom: 0px;
	height: 4px;
	width: 100px;
	background-color: var(--main-primary);
}

.desktop-ar-modal .modal-wrap .qrcprowrapper {
	max-width: 180px;
	max-height: 180px;
	width: 100%;
	height: 100%;
	margin: 16px auto;
}

.desktop-ar-modal .modal-wrap .qrcprowrapper .qrc_qrcode {
	width: 100%;
	height: 100%;
}

.desktop-ar-modal .modal-wrap .qrcprowrapper .qrc_qrcode img {
	width: 100%!important;
	height: 100%!important;
	object-fit: contain;
	background-color: var(--main-white);
}

.desktop-ar-modal .modal-wrap .ar-modal-close {
	position: absolute;
	right: 20px;
	top: 20px;
	width: 30px;
	height: 30px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

.desktop-ar-modal .modal-wrap .ar-modal-close::before, 
.desktop-ar-modal .modal-wrap .ar-modal-close::after {
	content: '';
	position: absolute;
	height: 4px;
	width: 120%;
	background-color: var(--main-primary);
}

.desktop-ar-modal .modal-wrap .ar-modal-close::before {
	transform: rotate(-45deg);
} 

.desktop-ar-modal .modal-wrap .ar-modal-close::after {
	transform: rotate(45deg);
}

.breadcrumbs-wrap {
	display: flex;
	position: relative;
	z-index: 2;
	margin-bottom: 15px;
}

.breadcrumbs-wrap ul.breadcrumbs {
	display: flex;
	align-items: center;
	list-style: none;
	padding: 0px;
	margin-bottom: 0px;
}

.breadcrumbs-wrap ul.breadcrumbs li {
	display: flex;
	align-items: center;
}

.breadcrumbs-wrap ul.breadcrumbs li:not(:last-child) {
	padding-right: 30px;
	position: relative;
}

.breadcrumbs-wrap ul.breadcrumbs li a {
	font-size: 1.2em;
	font-weight: 400;
	line-height: 130%;
	color: var(--main-white);
	text-decoration: none;
	white-space: nowrap;
	transition: var(--slow);
}

.breadcrumbs-wrap ul.breadcrumbs li:not(:last-child)::after {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 10px;
	content: '/';
	font-size: 1.2em;
	font-weight: 400;
	line-height: 130%;
	color: var(--main-white);
}

@media screen and (min-width: 576px) {
	.breadcrumbs-wrap ul.breadcrumbs li a:hover {
		color: var(--main-primary);
	}
}

@media screen and (max-width: 1299px) {
	.breadcrumbs-wrap ul.breadcrumbs li a {
		font-size: 1em;
	}

	.breadcrumbs-wrap ul.breadcrumbs li:not(:last-child)::after {
		font-size: 1em;
	}
}

@media screen and (max-width: 767px) {
	.breadcrumbs-wrap ul.breadcrumbs li:not(:last-child) {
		padding-right: 20px;
	}

	.breadcrumbs-wrap ul.breadcrumbs li:not(:last-child)::after {
		right: 6px;
	}
}

@media screen and (max-width: 575px) {
	.breadcrumbs-wrap {
		overflow-x: auto;
    overflow-y: hidden;
    margin: 0px -20px 15px;
    padding: 0px 20px;
    max-width: 100vw;
	}

	.breadcrumbs-wrap::-webkit-scrollbar {
		width: 0px;
		height: 0px;
	}
}

section.faq {
	padding: 60px 0px;
	background-color: var(--main-blue);
}

section.faq span.section-uppertitle {
	text-align: left;
}

section.faq h3.section-title {
	font-size: 2.25em;
	color: var(--main-white);
	line-height: 120%;
	font-weight: 700;
	margin-bottom: 20px;
}

.show-more-wrap {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.show-more-wrap.show .show-more-content {
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 8;
	line-clamp: 8;
	-webkit-box-orient: vertical;
    width: 100%;
}

.show-more-wrap .show-more-content > *:last-child {
	margin-bottom: 0px;
}

.show-more-wrap.open .show-more-content {
	display: block;
}

.show-more-wrap .show-more {
	display: none;
}

.show-more-wrap.show .show-more {
	display: flex;
	align-items: center;
	position: relative;
	margin-top: 16px;
	cursor: pointer;
}

.show-more-wrap .show-more span {
    font-family: "gotham", helvetica;
	font-size: 1em;
	line-height: 120%;
	font-weight: 700;
	color: var(--main-primary);
}

.show-more-wrap .show-more span.less {
	display: none;
}

.show-more-wrap.open .show-more span.more {
	display: none;
}

.show-more-wrap.open .show-more span.less {
	display: flex;
}

.show-more-wrap .show-more::after {
	content: '';
	width: 16px;
	height: 10px;
	margin-left: 6px;
	background-image: url( assets/img/menu-dropdown.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	transition: var(--slow);
}

.show-more-wrap.open .show-more::after {
	transform: rotate(-180deg);
}

section.faq p {
	font-size: 1em;
	color: var(--main-gray-text);
	font-weight: 400;
	line-height: 120%;
	margin-bottom: 16px;
}

section.faq p:has(a) {
	display: flex;
	justify-content: flex-start;
	margin-bottom: 0;
}

section.faq p a {
	font-size: 1em;
	color: var(--main-primary);
	display: flex;
	align-items: center;
	font-weight: 700;
	line-height: 120%;
	text-decoration: none;
	transition: var(--slow);
}

section.faq p a span {
	font-size: 1em;
	color: var(--main-primary);
	font-weight: 700;
	line-height: 120%;
}

section.faq p a::after {
	content: '';
	width: 18px;
	height: 18px;
	margin-left: 8px;
	background-image: url(assets/img/link-arrow-primary.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	transition: var(--slow);
}

@media screen and (min-width: 576px) {
	section.faq p a:hover {
		opacity: 0.8;
	}

	section.faq p a:hover::after {
    margin-left: 16px;
	}
}

section.faq ul,
section.faq ol {
	padding-left: 18px;
}

section.faq ul li,
section.faq ol li {
	font-size: 1em;
	color: var(--main-gray-text);
}

section.faq p.section-undertitle {
	text-align: left;
	margin-bottom: 30px;
}

.faq-container .card {
  border-radius: 26px;
  border: none;
  background-color: #10192C;
}

.faq-container .card:not(:last-child) {
	margin-bottom: 18px;
}

.faq-container .card .card-header {
  padding: 16px 34px 14px;
  border: none;
  border-radius: 100px;
  background-color: transparent;
}

.faq-container .card .card-header button {
  font-size: 1em;
  line-height: 150%;
  font-weight: 700;
  color: var(--main-white);
  position: relative;
  padding-right: 30px;
}

.faq-container .card .card-header button .cross {
  position: absolute;
  right: 0px;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  min-width: 20px;
  height: 13px;
  display: flex;
  align-items: center;
  justify-content: center;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	background-image: url(assets/img/menu-dropdown.svg);
	transition: var(--slow);
}

.faq-container .card .card-header button:not(.collapsed) .cross {
  transform: translateY(-50%) rotate(-180deg);
}

.faq-container .card .card-body {
  background-color: transparent;
  padding: 0px 34px 26px;
}

.faq-container .card .card-body p {
  margin: 0px;
  font-size: 1em;
  line-height: 140%;
  font-weight: 400;
  color: var(--main-gray-text);
}

div.solution-slide-slider.slick-slider .slick-list .slick-track {
	display: block;
}

section.archive-cases.archive-services .archive-cases-list {
	padding: 60px 80px;
	background-color: #06050BC9;
	border-radius: 25px;
	margin: 0px;
}

section.archive-cases.archive-services .archive-cases-list .services-item {
	width: calc(100% / 4);
}

section.archive-cases.archive-services .archive-cases-list .services-item .item-link {
	background-color: transparent;
}

section.archive-cases.archive-services .archive-cases-list .services-item .item-link .caption {
	max-width: 90%;
}

section.about-stats {
	padding: 60px 0px;
}

section.about-stats .about-stats-wrap {
	display: flex;
	margin: 0px -20px;
}

section.about-stats .about-stats-wrap.reverse {
	flex-direction: row-reverse;
}

section.about-stats .about-stats-wrap .thumbnail {
	width: 50%;
	padding-left: 20px;
	padding-right: 20px;
}

section.about-stats .about-stats-wrap .thumbnail .video-wrap {
	width: 100%;
	padding-top: 56.25%;
	position: relative;
	border-radius: 25px;
	overflow: hidden;
}

section.about-stats .about-stats-wrap .thumbnail .video-wrap iframe {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
}

section.about-stats .about-stats-wrap .thumbnail .img-wrap {
	width: 100%;
	border-radius: 25px;
	overflow: hidden;
	padding-top: 60%;
	position: relative;
}

section.about-stats .about-stats-wrap .thumbnail .img-wrap img {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

section.about-stats .about-stats-wrap .thumbnail:has(.img-gallery-item) {
	display: flex;
	flex-wrap: wrap;
}

section.about-stats .about-stats-wrap .thumbnail .img-gallery-item {
	width: 50%;
	padding: 15px;
}

section.about-stats .about-stats-wrap .thumbnail .img-gallery-item:nth-child(2n + 1) .img-wrap {
	padding-top: 80%;
}

section.about-stats .about-stats-wrap .thumbnail .img-gallery-item:nth-child(1),
section.about-stats .about-stats-wrap .thumbnail .img-gallery-item:nth-child(2) {
	align-self: flex-end;
}

section.about-stats .about-stats-wrap .thumbnail .img-gallery-item:nth-child(2n + 2) .img-wrap {
	padding-top: 65%;
}

section.about-stats .about-stats-wrap .caption {
	width: 50%;
	padding-left: 20px;
	padding-right: 20px;
}

section.about-stats .about-stats-wrap .caption .section-uppertitle {
	text-align: left;
}

section.about-stats .about-stats-wrap .caption .section-title {
	text-align: left;
	margin-bottom: 15px;
}

section.about-stats .about-stats-wrap .caption .section-undertitle {
	text-align: left;
}

section.about-stats .about-stats-wrap .caption .about-links-list {
	display: flex;
	flex-direction: column;
	margin-bottom: 20px;
}

section.about-stats .about-stats-wrap .caption .about-links-list .about-links-item {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding-left: 70px;
	position: relative;
	min-height: 56px;
	margin-bottom: 15px;
}

section.about-stats .about-stats-wrap .caption .about-links-list .about-links-item::before {
	position: absolute;
	left: 0px;
	top: 50%;
	transform: translateY(-50%);
	content: '';
	width: 56px;
	min-width: 56px;
	height: 56px;
	border-radius: 100%;
	background-color: #08122B;
	margin-right: 14px;
	background-image: url(assets/img/item-link-arrow-primary.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 25% 25%;
}

section.about-stats .about-stats-wrap .caption .about-links-list .about-links-item .value {
	font-size: 1.125em;
	line-height: 150%;
	font-weight: 700;
	color: var(--main-white);
	margin-bottom: 6px;
}

section.about-stats .about-stats-wrap .caption .about-links-list .about-links-item .name {
	font-size: 0.875em;
	line-height: 120%;
	font-weight: 400;
	color: var(--main-gray-text);
}

section.about-stats .about-stats-wrap .caption .about-stats-list {
	display: flex;
	margin: 0px -20px;
}

section.about-stats .about-stats-wrap .caption .about-stats-list .about-stats-item {
	display: flex;
	flex-direction: column;
	padding: 0px 20px;
}

section.about-stats .about-stats-wrap .caption .about-stats-list .about-stats-item img {
	width: 35px;
	min-width: 35px;
	height: 35px;
	object-fit: contain;
	margin-bottom: 13px;
}

section.about-stats .about-stats-wrap .caption .about-stats-list .about-stats-item span.value {
	font-size: 2.25em;
	line-height: 120%;
	font-weight: 700;
	color: var(--main-white);
	margin-bottom: 4px;
}

section.about-stats .about-stats-wrap .caption .about-stats-list .about-stats-item span.name {
	font-size: 1em;
	line-height: 120%;
	font-weight: 400;
	color: #9DA6BB;
}

section.about-stats.about-second {
	padding: 0px;
	background-color: var(--main-blue);
}

section.about-stats.about-second .about-stats-wrap .caption {
	padding: 90px 20px 90px 0px;
}

section.about-stats.about-second .about-stats-wrap .thumbnail {
	padding: 0px 0px 0px 20px;
}

section.about-stats.about-second .about-stats-wrap .thumbnail .img-wrap {
	height: 100%;
}

section.about-stats .about-stats-wrap .caption .about-logos-list {
	display: flex;
	flex-wrap: wrap;
	margin: 0px -15px;
}

section.about-stats .about-stats-wrap .caption .about-logos-list .about-logo-item {
	width: calc(100% / 3);
	padding: 0px 15px;
	display: flex;
	flex-direction: column;
}

section.about-stats .about-stats-wrap .caption .about-logos-list .about-logo-item .value {
	font-size: 1em;
	line-height: 120%;
	font-weight: 500;
	color: var(--main-white);
	margin-bottom: 15px;
}

section.about-stats .about-stats-wrap .caption .about-logos-list .about-logo-item img {
	width: 100%;
}

section.main.archive-page .main-wrap .main-caption.error-page {
	background-color: #06050B66;
	border-radius: 25px;
	max-width: 80%;
	margin: 0px auto;
	padding: 100px;
}

section.main.archive-page .main-wrap .main-caption.error-page h1 {
	font-size: 7em;
	color: var(--main-primary);
	margin-bottom: 20px;
}

section.main.archive-page .main-wrap .main-caption.error-page p.undertitle {
	font-weight: 700;
	margin-bottom: 20px;
}

section.main.archive-page .main-wrap .main-caption.error-page p.text {
	font-size: 1em;
	line-height: 120%;
	font-weight: 400;
	color: var(--main-white);
	margin-bottom: 20px;
}

.blog-post-item {
	display: flex;
	width: 100%;
}

.blog-post-item .item-link {
	display: flex;
	flex-direction: column;
	width: 100%;
	text-decoration: none;
}

.blog-post-item .item-link .thumbnail {
	width: 100%;
	margin-bottom: 20px;
	display: flex;
}

.blog-post-item .item-link .thumbnail .img-wrap {
	width: 100%;
	position: relative;
	padding-top: 50%;
	overflow: hidden;
	border-radius: 10px;
}

.blog-post-item .item-link .thumbnail .img-wrap img {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.blog-post-item .item-link .caption {
	width: 100%;
	display: flex;
	flex-direction: column;
}

.blog-post-item .item-link .caption p.h2 {
	font-size: 1em;
	line-height: 120%;
	font-weight: 700;
	color: var(--main-white);
	margin-bottom: 15px;
}

.blog-post-item .item-link .caption span.date {
	font-size: 1em;
	line-height: 100%;
	font-weight: 700;
	color: var(--main-primary);
	margin-bottom: 15px;
}

.blog-post-item .item-link .caption p.text {
	font-size: 0.875em;
	line-height: 120%;
	font-weight: 400;
	color: #9DA6BB;
	margin-bottom: 0px;
}

section.blog .archive-blog-list {
	display: flex;
	flex-wrap: wrap;
	margin: 0px -16px;
}

section.blog .archive-blog-list .blog-post-item {
	width: calc(100% / 3);
	padding: 0px 16px;
}

section.blog .archive-blog-list .blog-post-item:nth-child(1n + 4) {
	margin-top: 32px;
}

section.blog .popular-post-list {
	display: flex;
	flex-direction: column;
}

section.blog .popular-post-list .blog-post-item {
	width: 100%;
}

section.blog .popular-post-list .blog-post-item:nth-child(1n + 2) {
	margin-top: 32px;
}

section.blog .popular-post-list .blog-post-item .item-link {
	flex-direction: row;
}

section.blog .popular-post-list .blog-post-item .item-link .thumbnail {
	width: 170px;
	margin: 0px;
}

section.blog .popular-post-list .blog-post-item .item-link .caption {
	width: calc(100% - 170px);
	padding: 14px 0px 0px 12px;
}

section.blog .popular-post-list .blog-post-item .item-link .caption p.text {
	display: none;
}

section.blog .container-fluid .row .col-12 > p.h3 {
	font-size: 1.5em;
	line-height: 120%;
	font-weight: 700;
	color: var(--main-white);
	margin-bottom: 24px;
}

section.main .main-wrap .main-caption .meta-wrap {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 15px;
}

section.main .main-wrap .main-caption .meta-wrap span.date {
	font-size: 1em;
	line-height: 120%;
	font-weight: 700;
	color: var(--main-primary);
}

section.post-content {
	padding: 120px 0px;
}

section.post-content .post-content-wrap {
	background-color: #060C1C;
	border-radius: 10px;
	padding: 30px;
}

section.post-content .post-content-wrap .thumbnail {
	width: 100%;
	margin-top: -30px;
	border-radius: 10px;
	overflow: hidden;
	position: relative;
	padding-top: 65%;
	margin-bottom: 30px;
}

section.post-content .post-content-wrap .thumbnail img {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

section.post-content .post-content-wrap .comments-area h3 {
	font-size: 3em;
	line-height: 120%;
	font-weight: 700;
	color: var(--main-white);
	margin-top: 50px;
	margin-bottom: 24px;
}

section.post-content .post-content-wrap .comments-area form p {
	font-size: 1em;
	line-height: 120%;
	font-weight: 400;
	color: #9DA6BB;
}

section.post-content .post-content-wrap .comments-area form a {
	color: var(--main-primary);
	text-decoration: none;
	font-weight: 700;
}

section.post-content .post-content-wrap .comments-area form p label {
	width: 100%;
	margin-bottom: 10px;
}

section.post-content .post-content-wrap .comments-area form p input:not([type="submit"]),
section.post-content .post-content-wrap .comments-area form p textarea {
	width: 100%;
	border: 1px solid #273555;
	background-color: #10192C;
	border-radius: 30px;
	padding: 12px 24px;
	font-size: 1.2em;
	color: var(--main-white);
	outline: none;
	box-shadow: none;
	resize: none;
}

section.post-content .post-content-wrap .comments-area form p textarea {
	border-radius: 10px;
}

section.post-content .post-content-wrap .comments-area form p input[type="submit"] {
	border-radius: 200px;
	background: var(--main-gradient-hz);
	font-size: 1em;
	font-weight: 400;
	line-height: 120%;
	text-align: center;
	color: var(--main-white);
	border: none;
	box-shadow: none;
	outline: none;
	padding: 16px 40px;
	transition: var(--slow);
}

@media screen and (min-width: 576px) {
	section.post-content .post-content-wrap .comments-area form p input[type="submit"]:hover {
		opacity: 0.8;
	}
}

section.post-content .post-content-wrap .comments-area form p.comment-form-cookies-consent {
	display: flex;
	align-items: center;
}

section.post-content .post-content-wrap .comments-area form p.comment-form-cookies-consent input {
	width: auto;
}

section.post-content .post-content-wrap .comments-area form p.comment-form-cookies-consent label {
	width: auto;
	margin: 0px 0px 0px 12px;
}

section.blog .blog-slider .blog-post-item {
	padding: 0px 15px;
}

model-viewer {
  counter-reset: viewer-counter;
}

model-viewer .hotspot {
  counter-increment: viewer-counter;
  background: var(--main-white);
  border-radius: 32px;
  border: 0px;
  box-shadow: rgba(0, 0, 0, 0.25) 0px 2px 4px;
  box-sizing: border-box;
  cursor: pointer;
  height: 24px;
  position: relative;
  transition: opacity 0.3s ease 0s;
  width: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
	padding: 0px;
	color: var(--main-black);
}

model-viewer .hotspot::after {
  content: counter(viewer-counter);
	font-size: 1em;
	font-weight: 700;
	line-height: 24px;
}

model-viewer .hotspot .annotation {
	background: var(--main-white);
	border-radius: 4px;
	box-shadow: rgba(0, 0, 0, 0.25) 0px 2px 4px;
	color: var(--main-black);
	display: block;
	font-size: 1em;
	font-weight: 400;
	line-height: 130%;
	left: calc(100% + 10px);
	max-width: 300px;
	overflow-wrap: break-word;
	padding: 0.5em 1em;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: max-content;
	display: none;
}

model-viewer .hotspot.show .annotation {
	display: block;
}

model-viewer .hotspot-slider {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: 80px;
	align-items: center;
	justify-content: center;
	display: none;
}

model-viewer .hotspot-slider.show {
	display: flex;
}

model-viewer .hotspot-slider .hotspot-next,
model-viewer .hotspot-slider .hotspot-prev {
	width: 24px;
	height: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1em;
	border-radius: 32px;
	box-shadow: rgba(0, 0, 0, 0.25) 0px 2px 4px;
	transition: opacity 0.3s ease 0s;
	cursor: pointer;
	color: var(--main-black);
	background-color: var(--main-white);
	background-position: center left 60%;
	background-repeat: no-repeat;
	background-size: 60%;
	background-image: url(assets/img/next-icon.svg);
}

model-viewer .hotspot-slider .hotspot-prev {
	transform: rotate(180deg);
}

model-viewer .hotspot-slider .hotspot-caption {
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.125em;
	font-weight: 700;
	line-height: 30px;
	border-radius: 32px;
	box-shadow: rgba(0, 0, 0, 0.25) 0px 2px 4px;
	transition: opacity 0.3s ease 0s;
	color: var(--main-black);
	background-color: var(--main-white);
	margin: 0px 10px;
}

@media screen and (max-width: 991px) {
	model-viewer .hotspot .annotation {
		left: 50%;
		max-width: 250px;
		top: auto;
		bottom: calc(100% + 10px);
		transform: translateX(-50%);
	}

	model-viewer .hotspot-slider {
		bottom: 65px;
	}
}

section.app {
	padding: 60px 0px;
	display: flex;
	flex: 1;
}

section.app .container-fluid .row {
	height: 100%;
}

section.app .app-wrap {
	display: flex;
	flex-direction: column;
	position: relative;
	z-index: 2;
}

section.app .app-wrap h1.app-title {
	font-size: 5.375em;
	font-weight: 700;
	line-height: 120%;
	color: var(--main-white);
	position: relative;
	margin-bottom: 44px;
}

section.app .app-wrap p.after-btns {
	font-size: 2em;
	color: var(--main-white);
	font-weight: 400;
	line-height: 125%;
	margin-bottom: 0px;
}

section.app .app-wrap span.section-uppertitle {
	text-align: left;
}

section.app .app-wrap p.section-undertitle {
	text-align: left;
}

section.app .app-wrap .btns-wrap {
	display: flex;
	margin: 30px -12px 40px;
}

section.app .app-wrap .btns-wrap a {
	width: 280px;
	height: 84px;
	margin: 0px 12px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

section.app .app-wrap .btns-wrap a.appstore {
	background-image: url(assets/img/appstore.png);
}

section.app .app-wrap .btns-wrap a.googleplay {
	background-image: url(assets/img/googleplay.png);
}

section.app .image-wrap {
	display: flex;
	height: 100%;
	position: relative;
}

section.app .image-wrap::after {
	content: '';
	position: absolute;
	right: -20%;
	top: -20%;
	width: 80%;
	padding-top: 80%;
	background: radial-gradient(50% 50% at 50% 50%, #31A1C7 0%, rgba(1, 1, 3, 0) 100%);
}

section.app .image-wrap::before {
	content: '';
	position: absolute;
	left: -20%;
	bottom: -20%;
	width: 70%;
	padding-top: 70%;
	background: radial-gradient(50% 50% at 50% 50%, #BE1DB5 0%, rgba(1, 1, 3, 0) 100%);
}

section.app .image-wrap img {
	position: relative;
	z-index: 2;
	width: 100%;
	object-fit: contain;
}

@media screen and (max-width: 1599px) {
	section.app .app-wrap {
		padding-top: 20px;
	}

	section.app .app-wrap h1.app-title {
		font-size: 4.75em;
	}

	section.app .app-wrap p.after-btns {
		font-size: 1.75em;
	}

	section.app .app-wrap .btns-wrap {
		margin-top: 30px;
		margin-bottom: 30px;
	}

	section.app .app-wrap .btns-wrap a {
		width: 205px;
		height: 62px;
	}
}

@media screen and (max-width: 1399px) {
	section.app .app-wrap {
		padding-top: 15px;
	}

	section.app .app-wrap h1.app-title {
		font-size: 4.25em;
	}

	section.app .app-wrap .btns-wrap {
		margin: 0px -8px;
		margin-top: 20px;
		margin-bottom: 30px;
	}

	section.app .app-wrap .btns-wrap a {
		margin: 0px 8px;
		width: 175px;
		height: 52px;
	}
}

@media screen and (max-width: 1299px) {
	section.app {
		padding: 40px 0px;
	}

	section.app .app-wrap h1.app-title {
		font-size: 3.5em;
		margin-bottom: 26px;
	}
}

@media screen and (max-width: 1199px) {
	section.app .app-wrap a.logo {
		width: 240px;
	}

	section.app .app-wrap h1.app-title {
		font-size: 3em;
	}

	section.app .app-wrap p.after-btns {
		font-size: 1.5em;
	}

	section.app .app-wrap .btns-wrap a {
		width: 145px;
		height: 43px;
	}
}

@media screen and (max-width: 991px) {
	section.app .app-wrap {
		align-items: center;
		padding: 0px;
	}

	section.app .app-wrap h1.app-title {
		font-size: 2.5em;
		margin-bottom: 18px;
	}

	section.app .app-wrap p.after-btns {
		text-align: center;
		font-size: 1.25em;
	}

	section.app .app-wrap .btns-wrap a {
		width: 175px;
    height: 52px;
	}

	section.app .image-wrap {
		padding-top: 40px;
		max-height: none;
		margin: 0px auto;
	}
}

@media screen and (max-width: 767px) {
	section.app .app-wrap h1.app-title {
		font-size: 2.25em;
	}
}

@media screen and (max-width: 575px) {
	section.app {
		padding: 30px 0px 10px;
	}

	section.app .app-wrap h1.app-title {
		font-size: 2em;
	}

	section.app .app-wrap p.after-btns {
		font-size: 1em;
	}

	section.app .app-wrap .btns-wrap {
		margin: 0px -6px;
		margin-top: 15px;
		margin-bottom: 25px;
	}

	section.app .app-wrap .btns-wrap a {
		width: 130px;
		height: 40px;
		margin: 0px 6px;
	}

	section.app .image-wrap {
		padding-top: 30px;
	}

	section.main .main-wrap .main-caption .meta-wrap {
		margin-top: 0px;
	}
}

img-comparison-slider {
	clear: both;
	position: relative;
	width: 100%;
	margin: 16px 0px;
}

img-comparison-slider img {
	width: 100%;
}

@media screen and (min-width: 1400px) {
	img-comparison-slider {
		zoom: 95.25%;
	}
}

@media screen and (min-width: 1500px) {
	img-comparison-slider {
		zoom: 87%;
	}
}

@media screen and (min-width: 1600px) {
	img-comparison-slider {
		zoom: 83.35%;
	}
}

@media screen and (min-width: 1700px) {
	img-comparison-slider {
		zoom: 80%;
	}
}

section.cases .solutions-slider .cases-item {
	padding: 15px;
}

section.about-info .about-info-wrap .about-numbers-list {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	counter-reset: my-counter;
	margin: 20px 0px 40px;
}

section.about-info .about-info-wrap .about-numbers-list .about-numbers-item {
	width: calc(100% / 3);
	padding: 0px 15px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	counter-increment: my-counter;
}

section.about-info .about-info-wrap .about-numbers-list .about-numbers-item::before {
	content: counter(my-counter);
	font-size: 4em;
	line-height: 120%;
	font-weight: 700;
	margin-bottom: 12px;
	color: var(--main-primary);
	text-align: center;
}

section.about-info .about-info-wrap .about-numbers-list .about-numbers-item span {
	font-size: 1em;
	line-height: 120%;
	font-weight: 700;
	color: var(--main-white);
	text-align: center;
}

.archive-solution {
	padding: 30px 0px;
}

.archive-solution section.solution-slide {
	position: relative;
	top: auto;
	padding: 60px 0px;
}

.archive-solution section.solution-slide .solution-slide-wrap .thumbnail .img-wrap {
	padding-top: 65%;
}

@media screen and (max-width: 1599px) {
	section.main .main-wrap .main-caption {
		padding-top: 30px;
		padding-bottom: 60px;
	}

	section.main .main-wrap .main-caption h1 {
		font-size: 4.75em;
	}

	section.solution-slide .solution-slide-wrap .caption p.h2 {
		font-size: 2em;
	}

	section.solution-slide .solution-slide-wrap .caption ul li::before {
		width: 46px;
		min-width: 46px;
		height: 46px;
	}

	section.about-stats .about-stats-wrap .caption .about-links-list .about-links-item {
		padding-left: 60px;
		min-height: 46px;
	}

	section.about-stats .about-stats-wrap .caption .about-links-list .about-links-item::before {
		width: 46px;
		min-width: 46px;
		height: 46px;
	}

	h2.section-title {
		font-size: 2.5em;
	}

	.cases-item .item-link .caption p.h2 {
		font-size: 1.875em;
	}

	section.faq h3.section-title {
		font-size: 1.875em;
	}

	section.main.archive-page .main-wrap .main-caption h1 {
		font-size: 3em;
	}

	section.about-info .about-info-box {
		padding: 75px 0px;
	}

	section.archive-cases.archive-services .archive-cases-list {
		padding: 50px 70px;
	}

	section.about-stats .about-stats-wrap .caption .about-stats-list .about-stats-item span.value {
		font-size: 2em;
	}

	section.main.archive-page .main-wrap .main-caption.error-page {
		padding: 80px;
	}
	
	section.main.archive-page .main-wrap .main-caption.error-page h1 {
		font-size: 6em;
	}

	section.about-stats.about-second .about-stats-wrap .caption {
		padding: 60px 20px 60px 0px;
	}

	section.about-info .about-info-wrap .about-numbers-list .about-numbers-item::before {
		font-size: 3em;
	}

	.archive-solution {
		padding: 25px 0px;
	}

	.archive-solution section.solution-slide {
		padding: 50px 0px;
	}
}

@media screen and (max-width: 1399px) {
	span.top-btn {
		width: 40px;
		height: 40px;
		left: 20px;
	}

	section.main .main-wrap .main-caption {
		padding-top: 0px;
		padding-bottom: 30px;
	}

	section.main .main-wrap .main-caption h1 {
		font-size: 4.25em;
	}

	section.main .main-wrap .link.text-circle {
		width: 200px;
		height: 200px;
	}

	section.main .main-wrap .link.text-circle .rotate {
		font-size: 1.25em;
	}

	section.main .main-wrap .link.text-circle .rotate span {
		transform-origin: 0px 100px;
	}

	.services-item .item-link .caption .h2 {
		font-size: 1.375em;
	}

	section.solution-slide {
		padding-top: 120px;
		padding-bottom: 60px;
	}

	section.solution-slide .solution-slide-wrap .caption p.h2 {
		margin-bottom: 15px;
		font-size: 1.875em;
	}

	section.solution-slide .solution-slide-wrap .caption p.text {
		margin-bottom: 15px;
	}

	section.solution-slide .solution-slide-wrap .caption ul {
		margin-bottom: 15px;
	}

	section.solution-slide .solution-slide-wrap .caption ul li {
		margin-bottom: 8px;
	}

	h2.section-title {
		font-size: 2.25em;
	}

	header.header .header-wrap .social-menu .menu li {
		margin-right: 12px;
	}

	header.header .header-wrap .social-menu .menu li a {
		width: 26px;
		height: 26px;
	}

  section.cases-single .page-thumbnail .caption h1 {
    max-width: 80%;
  }

	footer.footer .footer-info a.logo {
		height: 23px;
	}

	section.main.archive-page .main-wrap .main-caption h1 {
		font-size: 2.5em;
	}

	section.contacts-content .contacts-left-wrap {
		padding: 30px;
	}

	section.contacts-content .contacts-right-wrap {
		padding: 30px 30px 30px 60px;
	}

	section.main.archive-page .main-wrap .main-caption.error-page {
		padding: 75px;
	}
	
	section.main.archive-page .main-wrap .main-caption.error-page h1 {
		font-size: 5em;
	}

	header.header .header-wrap .menu > li > a {
		font-size: 0.875em;
	}
}

@media screen and (max-width: 1299px) {
	header.header .header-wrap {
		padding: 20px 60px;
	}

	.container-fluid {
		padding: 0px 60px;
	}

	.button {
		padding: 10px 24px;
	}

	.button.primary {
		padding: 11px 25px;
	}

	header.header .header-wrap .logo {
		height: 22px;
		margin-right: 6px;
	}

	header.header .header-wrap .menu > li {
		margin: 0px 10px;
	}

	header.header .header-wrap .phone-btn {
		margin: 0px 12px;
	}

	header.header .header-wrap .phone-btn a::before {
		width: 18px;
		height: 18px;
	}

	header.header .header-wrap .language-menu {
		margin-left: 12px;
	}

	header.header .header-wrap .menu > li.menu-item-has-children > a::after {
		width: 14px;
		height: 8px;
		margin-left: 4px;
	}

	section.main .main-wrap {
		padding: 30px 0px 45px;
	}

	section.main .main-wrap .main-caption span.uppertitle {
		font-size: 1.125em;
	}

	section.main .main-wrap .main-caption h1 {
		font-size: 3.5em;
		margin-bottom: 26px;
	}

	section.main .main-wrap .main-caption h1::after {
		height: 6px;
	}

	section.main .main-wrap .main-caption p {
		font-size: 1.125em;
	}

	section.main .main-wrap .main-caption a.button {
		margin-top: 26px;
	}

	section.main .main-wrap .main-services {
		margin: 0px -10px;
	}

	section.main .main-wrap .main-services .main-item {
		padding: 10px;
	}

	section.main .main-wrap .main-services .main-item .item-link .caption {
		padding: 24px 18px;
	}

	section.main .main-wrap .main-services .main-item .item-link .caption::after {
		left: 18px;
		bottom: 24px;
		height: 6px;
	}

	@media screen and (min-width: 576px) {
		section.main .main-wrap .main-services .main-item .item-link:hover .caption::after {
			width: 85px;
		}
	}

	section.main .main-wrap .main-services .main-item .item-link .caption p.h2 {
		font-size: 1.25em;
	}

	section.services {
		padding: 40px 0px;
	}

	.services-item .item-link .thumbnail {
		width: 95px;
		height: 95px;
	}

	.services-item .item-link .caption .h2 {
		font-size: 1.25em;
	}

	section.solution-slide {
		padding-top: 100px;
		padding-bottom: 40px;
	}

	section.solution-slide .solution-slide-wrap .caption span.uppertitle {
		font-size: 1.125em;
	}

	section.solution-slide .solution-slide-wrap .caption p.h2 {
		font-size: 1.75em;
		line-height: 130%;
	}

	section.about {
		padding: 40px 0px;
	}

	h2.section-title {
		font-size: 2em;
	}

	section.about h2.section-title {
		padding-bottom: 38px;
	}

	section p.section-undertitle {
		font-size: 1.125em;
	}

	section.about h2.section-title::after {
		height: 6px;
	}

	section span.section-uppertitle {
		font-size: 1.125em;
		margin-bottom: 10px;
	}

	section.solutions {
		padding: 40px 0px;
	}

	.slider-arrows .slick-arrow {
		width: 36px;
    min-width: 36px;
    height: 30px;
	}

	section.solutions .title-wrap {
		margin-bottom: 20px;
	}

	.solutions-slider {
		margin: 0px -10px;
	}

	.solutions-slider .solutions-item {
		padding: 0px 10px;
	}

	.solutions-item .item-link .caption {
		padding: 22px 24px;
	}

	.solutions-slider .slick-slide .solutions-item .item-link .caption::before {
		margin-bottom: 8px;
	}

	.solutions-item .item-link .caption .number {
		margin-bottom: 8px;
	}

	.solutions-item .item-link .caption p.h2 {
		margin-bottom: 8px;
		font-size: 1.75em;
	}

	.solutions-item .item-link .caption .link {
		margin-top: 16px;
		padding: 16px 34px 14px;
	}

	section.banner {
		padding: 15px 0px;
	}

	section.banner .banner-wrap {
		padding: 24px 32px;
	}

	section.banner .banner-title p.text {
		font-size: 1.125em;
	}

	.mfp-content .banner-modal-wrap p.h3 {
		font-size: 1.5em;
		margin-bottom: 20px;
	}

	.mfp-content .banner-modal-wrap form p input:not([type="submit"]), 
	.mfp-content .banner-modal-wrap form p textarea {
		font-size: 1.125em;
		padding: 8px 0px;
	}

	.mfp-content .banner-modal-wrap form p:has(input[type="submit"]) {
		margin-top: 20px;
	}

	.mfp-content .banner-modal-wrap form p input[type="submit"] {
		padding: 16px 34px 14px;
	}

	section.cases {
		padding: 40px 0px;
	}

	section.cases h2.section-title {
		margin-bottom: 10px;
	}

	section p.section-undertitle {
		margin-bottom: 10px;
	}

	.cases-item .item-link .caption {
		padding: 20px 30px;
		left: 20px;
		right: 20px;
	}

	.cases-item .item-link .caption p.h2 {
		font-size: 1.5em;
	}

	section.cases .btn-wrap {
		margin-top: 15px;
	}

	section.reviews {
		padding: 40px 0px;
	}

	section.reviews h2.section-title {
		margin-bottom: 10px;
	}

	.reviews-item .item-link {
		padding: 20px 18px;
	}

	section.blog {
		padding: 40px 0px;
	}

	section.blog h2.section-title {
		margin-bottom: 20px;
	}

	.blog-item .item-link .caption {
		padding: 24px;
	}

	.blog-item .item-link .caption p.h2 {
		margin-bottom: 60px;
	}

	footer.footer {
		padding: 40px 0px;
	}

	footer.footer .footer-info a.logo {
		margin-bottom: 20px;
	}

	footer.footer .footer-info p.h4 {
		margin-bottom: 15px;
	}

	footer.footer .footer-info p.text {
		margin-bottom: 15px;
	}

	footer.footer .footer-info .footer-menu .menu li {
		margin-bottom: 12px;
	}

	footer.footer .footer-info .contact-info li {
		margin-bottom: 12px;
	}

	footer.footer .footer-info .btns-wrap {
		margin: 0px -6px;
	}

	footer.footer .footer-info .btns-wrap a {
		margin: 6px;
	}

	footer.footer .footer-info.footer-copyright {
		padding-top: 20px;
	}

	section.cases-single .page-thumbnail .caption {
		padding: 50px 0px 40px;
	}

	section.cases-single .page-thumbnail .caption h1 {
    font-size: 2.6em;
    margin-bottom: 36px;
  }

  section.cases-single .page-thumbnail .caption .share-wrap a {
    width: 50px;
    height: 50px;
    margin-right: 18px;
  }

	section.cases-single .page-thumbnail .caption .link-back {
		font-size: 1.125em;
		margin-right: 16px;
	}
	
	section.cases-single .page-thumbnail .caption .link-back::before {
		width: 24px;
		min-width: 24px;
		height: 22px;
	}

	.team-wrap {
    padding: 20px 0px;
  }

	.team-wrap .team-items .team-item {
		padding: 0px 15px;
	}

	.team-wrap .team-items .team-item p {
		font-size: 1.125em;
		margin-bottom: 4px;
	}

	.team-wrap .team-items .team-item span {
		font-size: 1em;
	}

  .press-wrap {
    padding: 20px 0px;
  }

  .press-wrap .press-slider .press-item a {
    padding: 15px 20px 20px;
  }

  .press-wrap .press-slider .press-item a p {
    font-size: 1.2em;
    margin: 25px 0px 0px;
  }

	section.archive-content {
		padding: 40px 0px;
	}

	section.cases-single.single-page .page-thumbnail .caption h1 {
		padding-bottom: 32px;
	}

	section.cases-single.single-page .page-thumbnail .caption h1::after {
		height: 6px;
	}

	.sub-nav {
		padding: 20px 0px;
	}

	.sub-nav .sub-nav-wrap a {
		padding: 16px 34px 14px;
	}

	section.contacts-content {
		padding: 40px 0px;
	}

	section.contacts-content .contacts-left-wrap ul {
		margin-bottom: 28px;
		padding-left: 50px;
	}

	section.contacts-content .contacts-left-wrap ul li {
		font-size: 1em;
	}

	section.contacts-content .contacts-left-wrap ul li:first-child::before {
		width: 25px;
		height: 25px;
	}

	section.contacts-content .contacts-right-wrap form p input:not([type="submit"]),
	section.contacts-content .contacts-right-wrap form p textarea {
		font-size: 1em;
		padding: 10px 20px;
	}

	section.contacts-content .contacts-right-wrap form p input[type="submit"] {
		padding: 11px 34px;
	}

	section.team {
		padding: 40px 0px;
	}

	section.press {
		padding: 40px 0px;
	}

	section.partners {
		padding: 40px 0px;
	}

	section.partners .partners-wrap .partners-items .partners-item {
		padding: 0px 24px;
	}

	section.faq {
		padding: 40px 0px;
	}

	section.faq h3.section-title {
		font-size: 1.5em;
		margin-bottom: 15px;
	}

	section.faq p.section-undertitle {
		margin-bottom: 20px;
	}

	.faq-container .card {
		border-radius: 28px;
	}

	.faq-container .card .card-header {
		padding: 10px 26px 8px;
	}

	.faq-container .card .card-body {
		padding: 0px 26px 16px;
	}

	header.header .header-wrap .app-btn {
		margin-left: 12px;
	}

	header.header .header-wrap .contact-btn {
		margin-left: 12px;
	}

	span.top-btn {
		left: 10px;
		bottom: 25px;
	}

	.reviews-slider.slick-slider .slick-dots {
		margin-top: 20px;
	}

	section.blog .slick-slider.blog-slider .slick-dots {
		margin-top: 20px;
	}

	section.main.archive-page .main-wrap {
		min-height: 300px;
	}

	section.main.archive-page .main-wrap .main-caption h1 {
		font-size: 2.25em;
	}

	section.archive-cases {
		padding: 40px 0px;
	}

	section.archive-cases .about-cases {
		padding: 15px 0px;
		max-width: 85%;
	}

	section.about-info .about-info-box {
		padding: 50px 0px;
	}

	section.about-info .about-info-wrap {
		max-width: 85%;
	}

	section.archive-cases.archive-services .archive-cases-list {
		padding: 40px;
	}

	section.about-stats {
		padding: 40px 0px;
	}

	section.about-stats .about-stats-wrap .caption .about-stats-list .about-stats-item span.value {
		font-size: 1.75em;
	}

	section.main.archive-page .main-wrap .main-caption.error-page {
		padding: 60px;
	}
	
	section.main.archive-page .main-wrap .main-caption.error-page h1 {
		font-size: 4.5em;
	}
	
	section.post-content {
		padding: 90px 0px;
	}
	
	section.post-content .post-content-wrap .comments-area h3 {
		font-size: 2.5em;
		margin-top: 30px;
	}
	
	section.post-content .post-content-wrap .comments-area form p input:not([type="submit"]),
	section.post-content .post-content-wrap .comments-area form p textarea {
		font-size: 1em;
    padding: 10px 20px;
	}
	
	section.post-content .post-content-wrap .comments-area form p input[type="submit"] {
		padding: 11px 34px;
	}

	section.about-stats.about-second .about-stats-wrap .caption {
		padding: 40px 20px 40px 0px;
	}

	.archive-solution {
		padding: 20px 0px;
	}

	.archive-solution section.solution-slide {
		padding: 30px 0px;
	}
}

@media screen and (max-width: 1199px) {
	header.header .header-wrap {
		padding: 15px 40px;
	}

	header.header .button {
		font-size: 0.875em;
		padding: 8px 18px;
	}

	header.header .button.primary {
		padding: 9px 19px;
	}

	.container-fluid {
		padding: 0px 40px;
	}

	section.archive-cases {
		padding: 25px 0px 40px;
	}

	section.cases-single .page-thumbnail .caption {
		padding: 60px 0px 30px;
	}

	header.header .header-wrap .menu-btn {
		display: flex;
    height: 25px;
    width: 25px;
    min-width: 25px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-image: url(assets/img/menu-burger.svg);
	}

	header.header .header-wrap .logo {
		margin: 0px auto;
	}

	header.header .header-wrap .header-menu {
		display: none;
	}

	header.header .header-wrap .contact-btn {
		display: none;
	}

	section.main .main-wrap .main-caption h1 {
		font-size: 3em;
	}

	section.main .main-wrap .link.text-circle {
		width: 180px;
		height: 180px;
	}

	section.main .main-wrap .link.text-circle .rotate {
		font-size: 1.125em;
	}

	section.main .main-wrap .link.text-circle .rotate span {
		transform-origin: 0px 90px;
	}

	section.services .main-services .services-item {
		width: calc(100% / 2);
	}

	.services-item .item-link {
		padding: 30px 20px;
	}

	section.solution-slide {
		padding-top: 80px;
	}

	.blog-item .item-link .caption p.h2 {
		margin-bottom: 40px;
	}

	section.main.archive-page .main-wrap {
		min-height: 250px;
	}

	section.archive-cases.archive-services .archive-cases-list .services-item {
		width: calc(100% / 2);
	}

	section.about-stats .about-stats-wrap .caption .about-stats-list {
		margin: 0px -10px;
	}

	section.about-stats .about-stats-wrap .caption .about-stats-list .about-stats-item {
		padding: 0px 10px;
	}

	section.about-stats .about-stats-wrap .caption .about-stats-list .about-stats-item span.value {
		font-size: 1.5em;
	}

	section.main.archive-page .main-wrap .main-caption.error-page {
		max-width: 90%;
		padding: 50px;
	}
	
	section.main.archive-page .main-wrap .main-caption.error-page h1 {
		font-size: 4em;
	}
	
	section.blog .archive-blog-list .blog-post-item {
		width: calc(100% / 2);
	}

	section.blog .archive-blog-list .blog-post-item:nth-child(1n + 3) {
		margin-top: 32px
	}
	
	section.blog .container-fluid .row .col-12 > p.h3 {
		font-size: 1.25em;
		line-height: 120%;
		font-weight: 700;
		color: var(--main-white);
		margin-bottom: 24px;
	}

	section.post-content {
		padding: 60px 0px;
	}

	section.about-stats .about-stats-wrap .thumbnail .img-gallery-item {
		padding: 6px;
	}

	section.about-stats .about-stats-wrap .caption .about-logos-list .about-logo-item {
		width: calc(100% / 2);
	}

	.team-wrap .team-items .team-item p {
		font-size: 1em;
		margin-bottom: 4px;
	}

	.team-wrap .team-items .team-item span {
		font-size: 0.875em;
	}
}

@media screen and (max-width: 991px) {
	header.header .header-wrap {
		padding: 15px 30px;
	}

	header.header .header-wrap .header-menu {
		display: none;
	}

	header.header .header-wrap .phone-btn {
		display: none;
	}

	header.header .header-wrap .language-menu {
		display: none;
	}

	header.header .header-wrap .social-menu {
		display: none;
	}

	header.header .header-wrap .header-phone {
		display: flex;
	}

	header.header .header-wrap .header-phone a {
		text-decoration: none;
		font-size: 0;
		color: transparent;
		display: flex;
		width: 25px;
		min-width: 25px;
		height: 25px;
		background-image: url(assets/img/footer-phone-icon.svg);
		background-position: center;
		background-repeat: no-repeat;
		background-size: 100% 100%;
		margin-left: 12px;
	}

	section.main .main-wrap .main-caption h1 {
		font-size: 2.5em;
    margin-bottom: 18px;
	}

	section.main .main-wrap .main-caption p {
    font-size: 1em;
	}

	section.main .main-wrap .main-caption a.button {
		margin-top: 22px;
	}

	section.main .main-wrap .main-services {
		margin-top: 22px;
	}

	section.main .main-wrap .main-services .main-item .item-link {
		padding-top: 0px;
		text-decoration: none;
	}

	section.main .main-wrap .main-services .main-item .item-link .caption {
		position: relative;
		padding: 20px 16px;
	}

	section.main .main-wrap .main-services .main-item .item-link .caption::after {
		left: 16px;
		bottom: 20px;
	}

	section.main .main-wrap .main-services .main-item .item-link .caption p.h2 {
		margin-bottom: 32px;
	}

	h2.section-title {
		font-size: 2.125em;
	}

	section.about h2.section-title {
		padding-bottom: 22px;
		margin-bottom: 20px;
	}

	.solutions-item .item-link .caption {
		padding: 20px 16px;
	}

	.solutions-item .item-link .caption p.h2 {
		font-size: 1.5em;
	}

	.solutions-item .item-link .caption .link {
		padding: 14px 26px 12px;
	}

	section.banner .banner-title::after {
		display: none;
	}

	section.banner .banner-info .link {
		padding: 11px 25px;
		margin-top: 15px;
	}

	.mfp-content .banner-modal-wrap {
		padding: 25px;
	}

	section.cases h2.section-title {
		margin-bottom: 10px;
	}

	section.cases .cases-list {
		margin: 0px -10px;
	}

	.cases-list .cases-item {
		padding: 10px;
	}

	section.cases .btn-wrap {
		margin-top: 10px;
	}

	.cases-item .item-link {
		margin-bottom: 20px;
	}

	.cases-item .item-link .caption {
		padding: 16px 20px;
		bottom: -20px;
		left: 10px;
		right: 10px;
	}

	.cases-item .item-link .caption::after {
		top: 20px;
		right: 20px;
		width: 32px;
		height: 32px;
	}

	@media screen and (min-width: 576px) {
		.cases-item .item-link:hover .caption::after {
			top: 14px;
			right: 14px;
		}
	}

	.cases-item .item-link .caption p.h2 {
		font-size: 1.375em;
	}

	.cases-item .item-link .caption p.text {
		margin-bottom: 10px;
	}

	.cases-item .item-link .thumbnail {
		padding-top: 70%;
	}

	.reviews-slider {
		margin: 0px -10px;
	}

	.reviews-slider .reviews-item {
		padding: 0px 10px;
	}

	.reviews-item .item-link {
		padding: 20px 16px;
	}

	.reviews-item .item-link .caption .link {
		padding: 14px 26px 12px;
	}

	footer.footer {
		padding: 30px 0px;
	}

	footer.footer .row .col-lg-3:nth-child(1n + 3) {
		margin-top: 20px;
	}

	.mfp-content .banner-modal-wrap form p input[type="submit"] {
		padding: 14px 26px 12px;
	}

	.cases-item .item-link .caption .tag {
		padding-right: 60px;
	}

	section.main.archive-page .main-wrap {
		min-height: 200px;
	}

	section.main.archive-page .main-wrap .main-caption h1 {
		font-size: 2em;
	}

	section.archive-cases {
		padding: 30px 0px;
	}

	section.archive-cases .archive-cases-list{
		margin: 0px -10px;
	}

	section.archive-cases .archive-cases-list .cases-item {
		padding: 10px;
	}

	#content .infinite-loader {
		padding: 10px;
	}

	section.cases-single .page-thumbnail .caption h1 {
    font-size: 2.25em;
		margin-bottom: 18px;
  }

  section.cases-single .page-thumbnail .caption .share-wrap a {
    width: 45px;
    height: 45px;
    margin-right: 15px;
  }

	section.cases-single .page-thumbnail .caption .share-wrap span {
    font-size: 1.25em;
  }

	section.cases-single .page-thumbnail .caption .link-back {
		font-size: 1em;
		margin-right: 10px;
	}
	
	section.cases-single .page-thumbnail .caption .link-back::before {
		width: 20px;
    min-width: 20px;
    height: 18px;
	}

	section.team {
		padding: 30px 0px;
	}

	.team-wrap h2 {
		margin-bottom: 10px;
	}

	.team-wrap .team-items {
		margin: 0px -10px;
	}

	.team-wrap .team-items .team-item {
		width: calc(100% / 3);
		padding: 0px 15px;
	}

	.team-wrap .team-items .team-item .caption {
		left: 30px;
    right: 30px;
	}

	section.partners {
		padding: 30px 0px;
	}

	.mfp-content .banner-modal-wrap .mfp-close {
		width: 30px;
		height: 30px;
	}

	.press-wrap .press-slider {
		margin: 0px -10px;
	}
	
	.press-wrap .press-slider .press-item {
		padding: 0px 10px;
	}

  .press-wrap .press-slider .press-item a {
    padding: 15px 15px;
  }

  .press-wrap .press-slider .press-item a span {
    font-size: 1.25em;
  }

  .press-wrap .press-slider .press-item a p {
    margin: 15px 0px 0px;
    font-size: 1.25em;
  }

	section.archive-cases .archive-cases-list .solutions-item {
		width: calc(100% / 2);
		padding: 10px;
	}

	section.cases-single.single-page .page-thumbnail .caption h1 {
		padding-bottom: 22px;
	}

	section.cases-single.single-page .page-thumbnail .caption h1::after {
		width: 80px;
	}

	.sub-nav .sub-nav-wrap {
		margin: 0px -6px;
	}
	
	.sub-nav .sub-nav-wrap a {
		padding: 14px 26px 12px;
		margin: 6px;
	}

	section.contacts-content {
		padding: 40px 0px;
	}

	section.contacts-content .contacts-left-wrap ul {
		margin-bottom: 18px;
	}

	section.contacts-content .contacts-right-wrap p {
		margin-bottom: 12px;
	}

	section.contacts-content .contacts-left-wrap ul {
		padding-left: 35px;
	}

	section.contacts-content .contacts-left-wrap ul li:first-child::before {
		width: 20px;
		height: 20px;
	}

	section.partners .partners-wrap .partners-items {
		margin: 0px -10px;
	}

	section.partners .partners-wrap .partners-items .partners-item {
		margin: 10px;
		width: calc((100% - 60px) / 3);
		padding: 0px 16px;
	}

	.show-more-wrap .show-more::after {
		width: 12px;
    height: 6px;
		margin-top: 4px;
	}

	section.faq p:has(a) {
		margin-bottom: 30px;
	}

	.faq-container .card:not(:last-child) {
		margin-bottom: 8px;
	}

	.faq-container .card {
		border-radius: 24px;
	}

  .faq-container .card .card-header {
    padding: 8px 16px 8px;
  }

  .faq-container .card .card-header button {
    padding-right: 26px;
  }

  .faq-container .card .card-header button .cross {
    width: 18px;
    min-width: 18px;
    height: 18px;
  }

  .faq-container .card .card-body {
    padding: 0px 16px 12px;
  }

	section.faq p.section-undertitle {
		margin-bottom: 15px;
	}

	.mobile-menu {
		padding: 20px 30px 30px 30px;
	}

	section.main .main-wrap .main-caption span.uppertitle {
		font-size: 1em;
		margin-bottom: 15px;
	}

	section.main .main-wrap .link.text-circle {
		width: 140px;
		height: 140px;
	}

	section.main .main-wrap .link.text-circle .rotate {
		font-size: 1em;
	}

	section.main .main-wrap .link.text-circle .rotate span {
		transform-origin: 0px 70px;
	}

	section.main .main-wrap {
		padding: 30px 0px;
	}

	section.main .main-wrap .main-caption {
		padding-bottom: 20px;
	}
	
	.mobile-menu .menus .header-menu .menu > li > a {
		font-size: 1.125em;
	}

	.mobile-menu .menus .socials-info span.h3 {
		font-size: 1.125em;
	}

	.container-fluid {
		padding: 0px 30px;
	}

	section.services {
		padding: 30px 0px;
	}

	.services-item .item-link {
		padding: 20px;
	}

	@media screen and (min-width: 576px) {
    .services-item .item-link:hover::before {
			left: -10px;
			top: -10px;
			right: -10px;
			bottom: -10px;
    }
	}

	.services-item .item-link .thumbnail {
		width: 70px;
		height: 70px;
		margin-bottom: 15px;
	}

	.services-item .item-link .caption .h2 {
		font-size: 1.125em;
	}

	div.solution-slide-slider {
		padding-top: 30px;
		padding-bottom: 30px;
	}

	section.solution-slide {
		background-color: var(--main-black);
		position: relative;
		top: auto;
		padding-top: 0px;
		padding-bottom: 0px;
	}

	section.solution-slide .solution-slide-wrap {
		flex-direction: column-reverse;
	}

	.app-solution-slider section.solution-slide.reverse .solution-slide-wrap {
		flex-direction: column-reverse;
	}

	section.solution-slide .solution-slide-wrap .thumbnail {
		width: 100%;
		padding: 20px 0px 0px;
	}

	section.solution-slide .solution-slide-wrap .thumbnail .img-wrap {
		padding-top: 60%;
	}

	.archive-solution section.solution-slide .solution-slide-wrap .thumbnail .img-wrap {
		padding-top: 60%;
	}

	section.solution-slide .solution-slide-wrap .caption {
		width: 100%;
		padding: 0px;
	}

	.app-solution-slider section.solution-slide.reverse .solution-slide-wrap .thumbnail {
		padding: 20px 0px 0px;
	}
	
	.app-solution-slider section.solution-slide.reverse .solution-slide-wrap .caption {
		padding: 0px;
	}

	section.solution-slide .solution-slide-wrap .caption span.uppertitle {
		font-size: 1em;
	}

	section.solution-slide .solution-slide-wrap .caption p.h2 {
		font-size: 1.5em;
	}

	section.solution-slide .solution-slide-wrap .caption p.text {
		font-size: 1em;
	}

	section.solution-slide .solution-slide-wrap .caption ul {
		margin-bottom: 7px;
	}

	section.solution-slide .solution-slide-wrap .caption ul li {
		font-size: 1em;
	}

	section.solution-slide .solution-slide-wrap .caption ul li::before {
		width: 36px;
		min-width: 36px;
		height: 36px;
		margin-right: 8px;
	}

	section.cases {
		padding: 30px 0px;
	}

	section span.section-uppertitle {
		font-size: 1em;
	}

	h2.section-title {
		font-size: 1.875em;
	}

	section p.section-undertitle {
		font-size: 1em;
	}

	section.reviews {
		padding: 30px 0px;
	}

	.reviews-item .item-link .caption p.text {
		margin-bottom: 20px;
	}

	.reviews-item .item-link .caption .title-wrap .thumbnail {
		margin-right: 16px;
	}

	section.banner .banner-wrap {
		padding: 20px 26px;
	}

	section.banner .banner-title p.h3 {
		font-size: 1.375em;
	}

	section.banner .banner-title p.text {
		font-size: 1em;
	}

	section.blog {
		padding: 30px 0px;
	}

	section.blog .blog-slider {
		margin: 0px -10px;
	}

	section.blog .blog-slider .blog-item {
		padding: 0px 10px;
	}

	section.blog .blog-slider .blog-post-item {
		padding: 0px 10px;
	}

	.blog-item .item-link .caption {
		padding: 20px 16px;
	}

	.blog-item .item-link .caption p.h2 {
		font-size: 1.125em;
		line-height: 130%;
		margin-bottom: 20px;
	}

	section.faq {
		padding: 30px 0px;
	}

	section.faq .show-more-wrap {
		padding-bottom: 30px;
	}

	section.archive-cases .about-cases {
		max-width: none;
	}

	section.about-info .about-info-box {
		padding: 35px 0px;
	}

	section.about-info .about-info-wrap {
		max-width: none;
	}

	section.archive-cases.archive-services .archive-cases-list {
		padding: 20px;
	}

	section.about-stats {
		padding: 30px 0px;
	}

	section.about-stats .about-stats-wrap {
		flex-direction: column-reverse;
		margin: 0px;
	}

	section.about-stats .about-stats-wrap.reverse {
		flex-direction: column-reverse;
	}

	section.about-stats .about-stats-wrap .thumbnail {
		width: 100%;
		padding: 20px 0px 0px;
	}

	section.about-stats .about-stats-wrap .caption {
		width: 100%;
		padding: 0px;
	}

	section.about-stats .about-stats-wrap .caption .about-stats-list .about-stats-item img {
		width: 26px;
    min-width: 26px;
    height: 26px;
	}

	section.about-stats .about-stats-wrap .caption .about-stats-list .about-stats-item span.value {
		font-size: 1.25em;
	}

	section.contacts-content {
		padding: 30px 0px;
	}

	section.contacts-content .contacts-main-wrap {
		flex-direction: column;
	}

	section.contacts-content .contacts-left-wrap {
		width: 100%;
	}

	section.contacts-content .contacts-right-wrap {
		width: 100%;
		padding: 30px;
	}

	section.main.archive-page .main-wrap .main-caption.error-page {
		max-width: none;
		padding: 40px;
	}
	
	section.main.archive-page .main-wrap .main-caption.error-page h1 {
		font-size: 3.5em;
	}
	
	.blog-post-item .item-link .thumbnail {
		margin-bottom: 15px;
	}
	
	.blog-post-item .item-link .caption p.h2 {
		margin-bottom: 10px;
	}
	
	.blog-post-item .item-link .caption span.date {
		margin-bottom: 10px;
	}
	
	section.blog .archive-blog-list {
		margin: 0px -10px;
	}
	
	section.blog .archive-blog-list .blog-post-item {
		padding: 0px 10px;
	}
	
	section.blog .archive-blog-list .blog-post-item:nth-child(1n + 3) {
		margin-top: 20px;
	}
	
	section.blog .popular-post-list .blog-post-item:nth-child(1n + 2) {
		margin-top: 20px;
	}
	
	section.blog .popular-post-list .blog-post-item .item-link .thumbnail {
		width: 170px;
		margin: 0px;
	}
	
	section.blog .container-fluid .row .col-12 > p.h3 {
		margin-bottom: 20px;
	}

	section.blog .container-fluid .row .col-12 > p.h3 + .blog-post-item {
		margin-bottom: 30px;
	}

	section.post-content {
		padding: 40px 0px;
	}

	section.post-content .post-content-wrap .comments-area h3 {
		font-size: 2em;
	}

	section.about-stats .about-stats-wrap .caption .about-links-list {
		margin-bottom: 12px;
	}

	section.about-stats .about-stats-wrap .caption .about-links-list .about-links-item {
		padding-left: 44px;
		min-height: 36px;
	}

	section.about-stats .about-stats-wrap .caption .about-links-list .about-links-item::before {
		width: 36px;
		min-width: 36px;
		height: 36px;
		margin-right: 8px;
	}

	section.about-stats .about-stats-wrap .caption .about-links-list .about-links-item .value {
		font-size: 1em;
	}

	section.about-stats.about-second .about-stats-wrap {
		flex-direction: column;
	}

	section.about-stats.about-second .about-stats-wrap .caption {
		padding: 30px 0px 0px 0px;
	}

	section.about-stats.about-second .about-stats-wrap .thumbnail {
		padding: 20px 0px 0px;
	}

	section.about-stats .about-stats-wrap .caption .about-logos-list .about-logo-item .value {
		margin-bottom: 8px;
	}

	section.cases .solutions-slider .cases-item {
		padding: 10px;
	}

	section.app .app-wrap span.section-uppertitle {
		text-align: center;
	}

	section.app .app-wrap p.section-undertitle {
		text-align: center;
	}

	section.app .app-wrap h1.app-title {
		text-align: center;
	}

	.archive-solution {
		padding: 15px 0px;
	}

	.archive-solution section.solution-slide {
		padding: 20px 0px;
	}
}

@media screen and (max-width: 767px) {
	header.header .header-wrap {
		padding: 10px 20px;
	}

	.container-fluid {
		padding: 0px 20px;
	}

	section.main .main-wrap {
		padding: 20px 0px 20px;
	}

	section.about {
		padding: 20px 0px;
	}

	section.solutions {
		padding: 20px 0px;
	}

	section.cases {
		padding: 20px 0px;
	}

	section.cases .cases-list {
		display: block;
	}

	.cases-list .cases-item {
		padding: 0px 10px;
	}

	.cases-list.slick-slider .slick-dots {
		margin-top: 15px;
	}

	section.cases .btn-wrap {
		margin-top: 20px;
	}

	section.reviews {
		padding: 20px 0px;
	}

	span.top-btn {
		left: 20px;
		bottom: 20px;
	}

	.mfp-content .banner-modal-wrap form p input:not([type="submit"]), 
	.mfp-content .banner-modal-wrap form p textarea {
		font-size: 1em;
	}

	section.cases h2.section-title {
		margin-bottom: 10px;
	}

	header.header .header-wrap .logo {
		height: 20px;
		margin: 0px auto;
	}

	header.header .header-wrap .logo img {
		object-position: center;
	}

	.mobile-menu {
		padding: 15px 20px 20px 20px;
		max-width: 380px;
	}

	.mobile-menu .menus .modal-header .menu-btn-close::before {
		width: calc(100vw - 380px);
	}

	.mobile-menu .menus .header-menu .menu > li > a {
		font-size: 1.125em;
	}

	.mobile-menu .menus .header-menu .menu > li > .sub-menu > li > a {
		font-size: 1.125em;
	}

	section.archive-cases {
		padding: 20px 0px;
	}

	section.archive-cases .archive-cases-list .cases-item {
		width: 100%;
	}

	section.cases-single .page-thumbnail .caption {
		padding: 40px 0px 30px;
	}

	section.cases-single .page-thumbnail .caption .share-wrap span {
    font-size: 1.125em;
  }

	.team-wrap h2 {
		margin-bottom: 20px;
	}

	.team-wrap .team-items .team-item {
		width: calc(100% / 2);
		padding: 0px 15px;
	}

  .press-wrap .press-slider .press-item a span {
    font-size: 1.125em;
  }

  .press-wrap .press-slider .press-item a p {
    font-size: 1.125em;
    margin-top: 10px;
  }

	section.archive-content {
		padding: 30px 0px;
	}

	section.archive-cases .archive-cases-list .solutions-item {
		width: 100%;
	}

	.sub-nav .sub-nav-wrap {
		margin: 0px -6px;
	}
	
	.sub-nav .sub-nav-wrap a {
		font-size: 0.875em;
		padding: 8px 14px 9px;
		margin: 6px;
	}

	.ar-model-wrap {
		padding-top: calc(60vh);
	}

	.ar-model-wrap::before {
		width: 60px;
		height: 60px;
	}

	section.contacts-content .contacts-left-wrap ul {
		padding-left: 0px;
	}

	section.contacts-content .contacts-left-wrap ul li {
		font-size: 1em;
	}

	section.contacts-content .contacts-left-wrap ul li:first-child {
		padding-left: 30px;
	}

	section.contacts-content .contacts-right-wrap form p input:not([type="submit"]),
	section.contacts-content .contacts-right-wrap form p textarea {
		font-size: 1em;
		border-radius: 20px;
		padding: 8px 16px;
	}

	section.team {
		padding: 30px 0px;
	}

	section.press {
		padding: 30px 0px;
	}

	section.partners {
		padding: 30px 0px;
	}

	section.partners .partners-wrap h2 {
		margin-bottom: 20px;
	}
	
	section.partners .partners-wrap .partners-items .partners-item {
		width: calc((100% - 40px) / 2);
	}

	section.faq {
		padding: 30px 0px;
	}

	section.faq h3.section-title {
		font-size: 1.75em;
	}

	section.main .main-wrap .main-caption h1 {
		font-size: 2.25em;
	}

	.button {
		padding: 8px 16px;
	}

	.button.primary {
		padding: 9px 17px;
	}

	section.main .main-wrap .link.text-circle {
		width: 120px;
		height: 120px;
	}

	section.main .main-wrap .link.text-circle .rotate {
		font-size: 0.875em;
	}

	section.main .main-wrap .link.text-circle .rotate span {
		transform-origin: 0px 60px;
	}

	section.services {
		padding: 20px 0px;
	}

	div.solution-slide-slider {
		padding: 20px 0px;
	}

	section.solution-slide {
		padding: 0px;
	}

	section.solution-slide .solution-slide-wrap .caption span.uppertitle {
		margin-bottom: 10px;
	}

	section.solution-slide .solution-slide-wrap .caption p.h2 {
		margin-bottom: 10px;
	}

	section.solution-slide .solution-slide-wrap .caption p.text {
		margin-bottom: 10px;
	}

	.cases-item .item-link .thumbnail {
		padding-top: 55%;
	}

	.reviews-item .item-link .caption p.text {
		font-size: 1em;
		margin-bottom: 15px;
	}

	.reviews-item .item-link .caption::after {
		width: 40px;
		height: 30px;
	}

	.reviews-slider.slick-slider .slick-dots {
		margin-top: 15px;
	}

	section.banner .banner-wrap {
		padding: 15px 20px;
	}

	section.blog {
		padding: 20px 0px;
	}

	section.blog h2.section-title {
		margin-bottom: 10px;
	}

	section.faq {
		padding: 20px 0px;
	}

	footer.footer {
		padding: 20px 0px;
	}

	footer.footer .row .col-lg-3:nth-child(1n + 2) {
		margin-top: 20px;
	}

	section.faq .show-more-wrap {
		padding-bottom: 20px;
	}

	section.solution-slide .solution-slide-wrap .thumbnail .img-wrap {
		padding-top: 50%;
	}
	
	.archive-solution section.solution-slide .solution-slide-wrap .thumbnail .img-wrap {
		padding-top: 50%;
	}

	section.about-stats {
		padding: 20px 0px;
	}

	section.about-stats .about-stats-wrap .caption .about-stats-list {
		flex-wrap: wrap;
	}

	section.about-stats .about-stats-wrap .caption .about-stats-list .about-stats-item {
		min-width: 50%;
	}

	section.about-stats .about-stats-wrap .caption .about-stats-list .about-stats-item:nth-child(1n + 3) {
		margin-top: 20px;
	}
	
	section.contacts-content .contacts-left-wrap {
		padding: 20px;
	}

	section.contacts-content .contacts-right-wrap {
		padding: 20px;
	}

	section.contacts-content .contacts-main-wrap hr {
		margin-bottom: 30px;
	}

	section.contacts-content .contacts-right-wrap form {
		margin: 0px -10px;
	}

	section.contacts-content .contacts-right-wrap form p {
		padding: 0px 10px;
	}

	section.contacts-content .contacts-right-wrap form .wpcf7-response-output {
		margin: 1em 10px 0px;
	}

	section.contacts-content .contacts-right-wrap form p input[type="submit"] {
		padding: 9px 26px;
	}

	section.main.archive-page .main-wrap .main-caption.error-page {
		padding: 30px;
	}
	
	section.main.archive-page .main-wrap .main-caption.error-page h1 {
		font-size: 3em;
	}

	section.blog .archive-blog-list .blog-post-item {
		width: 100%;
	}

	section.blog .archive-blog-list .blog-post-item:nth-child(1n + 2) {
		margin-top: 20px;
	}

	section.post-content {
		padding: 30px 0px;
	}

	section.post-content .post-content-wrap {
		padding: 20px;
	}

	section.post-content .post-content-wrap .thumbnail {
		margin-top: -20px;
		margin-left: -20px;
		margin-right: -20px;
		width: calc(100% + 40px);
		margin-bottom: 20px;
	}

	section.post-content .post-content-wrap .comments-area h3 {
		font-size: 1.5em;
		margin-top: 24px;
		margin-bottom: 20px;
	}

	section.post-content .post-content-wrap .comments-area form p input:not([type="submit"]), 
	section.post-content .post-content-wrap .comments-area form p textarea {
		border-radius: 20px;
		padding: 8px 16px;
		font-size: 1em;
	}

	section.post-content .post-content-wrap .comments-area form p input[type="submit"] {
		padding: 9px 26px;
	}

	section.about-stats.about-second .about-stats-wrap .caption {
		padding: 20px 0px 0px 0px;
	}

	section.team {
		padding: 20px 0px;
	}

	section.partners {
		padding: 20px 0px;
	}

	section.about-info .about-info-wrap .about-numbers-list .about-numbers-item {
		width: 100%;
		flex-direction: row;
	}

	section.about-info .about-info-wrap .about-numbers-list .about-numbers-item:nth-child(1n + 2) {
		margin-top: 20px;
	}

	section.about-info .about-info-wrap .about-numbers-list .about-numbers-item::before {
		font-size: 2em;
		margin: 0px 12px 0px 0px;
	}
}

@media screen and (max-width: 575px) {
	section.main .main-wrap .link.text-circle {
		width: 100px;
		height: 100px;
	}

	section.main .main-wrap .link.text-circle .rotate {
		font-size: 0.75em;
	}

	.slick-slider .slick-dots {
		margin-top: 15px;
	}

	section.main .main-wrap .link.text-circle .rotate span {
		transform-origin: 0px 50px;
	}

	section.main .main-wrap .main-caption {
		padding-top: 0px;
	}

	section.main .main-wrap .main-caption h1 {
		font-size: 2em;
	}

	section.main .main-wrap .main-caption a.button {
		width: 100%;
		text-align: center;
	}

	section.main .main-wrap .main-services {
		display: block;
	}

	section.main .main-wrap .main-services .main-item {
		padding: 0px 10px;
		height: 100%;
	}

	section.main .main-wrap .main-services .main-item .item-link {
		display: flex;
		height: 100%;
	}

	section.main .slick-slider .slick-dots li button {
		border-color: var(--main-white);
	}

	section.main .slick-slider .slick-dots li.slick-active button {
		background-color: var(--main-white);
	}

	h2.section-title {
		font-size: 1.5em;
	}

	.solutions-item .item-link .caption .link {
		width: 100%;
	}

	section.banner .banner-info {
		flex-direction: column;
	}

	section.banner .banner-info p.text {
		margin: 0px 0px 20px 0px;
	}

	section.banner .banner-info .link {
		width: 100%;
	}

	.mfp-content .banner-modal-wrap p.h3 {
		font-size: 1.375em;
	}

	.mfp-content .banner-modal-wrap form p input[type="submit"] {
		width: 100%;
	}

	.cases-item .item-link .caption p.h2 {
		font-size: 1.25em;
		display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    -webkit-box-orient: vertical;
	}

	.cases-item .item-link .caption .tag {
		padding-right: 45px;
	}

	.reviews-slider.slick-slider .slick-list {
		overflow: hidden;
	}

	.reviews-slider.slick-slider .slick-list .slick-track {
		display: block;
	}

	.reviews-slider .reviews-item .item-link {
		width: 100%;
		flex-direction: column-reverse;
		position: relative;
	}

	.reviews-item .item-link .thumbnail {
		justify-content: flex-start;
		padding-left: 0px;
		margin-bottom: 8px;
	}

	.reviews-item .item-link .caption .number {
		position: absolute;
		left: 16px;
		top: 20px;
		display: none;
	}

	.reviews-item .item-link .caption .link {
		width: 100%;
	}

	footer.footer .footer-wrap .footer-caption .footer-contact-wrap h3 {
		font-size: 1.75em;
	}

	footer.footer .footer-wrap .footer-caption .footer-form-wrap {
		padding-top: 20px;
	}

	footer.footer .footer-wrap .footer-caption .footer-form-wrap form p input[type="submit"] {
		width: 100%;
	}

	footer.footer .footer-copyright .footer-copyright-wrap .socials-wrap {
		flex-direction: column;
	}

	footer.footer .footer-copyright .footer-copyright-wrap .socials-wrap .social-menu {
		margin-left: 0px;
		margin-top: 12px;
	}

	.mobile-menu {
		max-width: none;
	}

	.mobile-menu .menus .modal-header .menu-btn-close::before {
		display: none;
	}

	section.cases-single .page-thumbnail .caption {
		padding: 30px 0px 30px;
	}

	section.cases-single .page-thumbnail .caption h1 {
    font-size: 1.75em;
    max-width: 100%;
  }

  section.cases-single .page-thumbnail .caption .share-wrap a {
    width: 40px;
    height: 40px;
    margin-right: 8px;
  }

  section.cases-single .page-thumbnail .caption .share-wrap span {
    font-size: 1em;
  }

	section.cases-single .page-thumbnail .caption .link-back::before {
		width: 18px;
    min-width: 18px;
    height: 18px;
    margin-right: 8px;
	}

	.team-wrap .team-items {
		display: block;
		margin: 0px -20px;
	}

	.team-wrap .team-items .team-item {
		margin: 0px;
		padding: 0px 10px;
		width: 100%;
	}

	.team-items.slick-slider .slick-list {
		overflow: hidden;
		padding: 0px 10px;
	}

	.team-items.slick-slider .slick-list .slick-track {
		display: block;
	}

	.mfp-content .banner-modal-wrap {
    padding: 20px 15px;
	}

	.press-wrap .press-slider .slick-list {
		overflow: hidden;
	}
	
	.press-wrap .press-slider .slick-track {
		display: block;
	}

	.sub-nav {
		padding: 15px 0px;
	}

	.sub-nav .sub-nav-wrap {
		flex-wrap: nowrap;
    overflow: auto;
    justify-content: flex-start;
		padding: 0px 14px;
    margin: 0px -20px;
	}

	.sub-nav .sub-nav-wrap::-webkit-scrollbar {
		width: 0px;
	}

	.sub-nav .sub-nav-wrap a {
		white-space: nowrap;
		margin: 0px 6px;
	}

	section.partners .partners-wrap .partners-items .partners-item {
		width: calc(100% - 20px);
	}

	section.faq h3.section-title {
		font-size: 1.375em;
	}

	header.header .header-wrap .app-btn {
		display: none;
	}

	header.header .header-wrap .logo {
		margin: 0px auto;
	}

	.mobile-menu {
		padding-top: 10px;
	}

	section.main .main-wrap .main-caption p {
		max-width: none;
	}

	.services-item .item-link {
		padding: 15px;
	}

	.services-item .item-link .thumbnail {
		width: 50px;
		height: 50px;
	}

	.services-item .item-link .thumbnail span {
		width: 100%;
		height: 100%;
	}

	section.solution-slide .solution-slide-wrap .caption p.h2 {
		font-size: 1.375em;
	}

	.button {
		width: 100%;
	}

	.cases-item .item-link .thumbnail {
		padding-top: 80%;
	}

	.cases-item .item-link .caption {
		padding: 15px;
	}

	section.banner .banner-title p.h3 {
		font-size: 1.25em;
	}

	span.top-btn {
		width: 30px;
		height: 30px;
		left: 5px;
		bottom: 10px;
	}

	footer.footer .footer-info .btns-wrap a {
		width: 130px;
		height: 38px;
	}

	footer.footer .footer-info .contact-info li {
		padding-left: 30px;
	}

	section.blog .blog-slider {
		margin: 0px -20px;
	}

	section.blog .blog-slider .slick-list {
		padding: 0px 10px;
	}

	.reviews-slider {
		margin: 0px -20px;
	}

	.reviews-slider.slick-slider .slick-list {
		padding: 0px 10px;
	}

	section.main.archive-page .main-wrap .main-caption h1 {
		font-size: 1.75em;
	}

	section.archive-cases.archive-services .archive-cases-list {
		padding: 0px;
		border-radius: 12px;
	}

	section.archive-cases.archive-services .archive-cases-list .services-item {
		width: 100%;
	}

	section.contacts-content .contacts-main-wrap p {
		margin-bottom: 15px;
	}

	section.contacts-content .contacts-right-wrap form p:has(input:not([type="submit"])) {
		width: 100%;
	}

	section.contacts-content .contacts-right-wrap form p input[type="submit"] {
		width: 100%;
	}

	section.main.archive-page .main-wrap .main-caption.error-page {
		padding: 20px;
	}

	section.main.archive-page .main-wrap .main-caption.error-page p.text {
		font-size: 0.875em;
	}

	section.blog .popular-post-list .blog-post-item .item-link {
		flex-direction: column;
	}

	section.blog .popular-post-list .blog-post-item .item-link .thumbnail {
		width: 100%;
		margin-bottom: 15px;
	}

	section.blog .popular-post-list .blog-post-item .item-link .caption {
		width: 100%;
		padding: 0px;
	}

	section.blog .container-fluid .row .col-12 > p.h3 {
		margin-bottom: 15px;
	}

	section.post-content .post-content-wrap .comments-area form p input[type="submit"] {
		width: 100%;
	}

	section.main.archive-page .main-wrap .main-caption .meta-wrap + h1 {
		font-size: 1.5em;
	}
}