@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&display=swap');

body {
	background: #E8E4E1;
	width: 100%;
	overflow-x: hidden;
	color: #071C35;
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	min-height: 100vh;
}

body.dark {
	background: linear-gradient(90deg, #161242, #030018);
	color: #fff;
}

.light-element {
	display: none;
}

body.dark .light-element {
	display: block;
}

body.dark .dark-element {
	display: none;
}

a {
	text-decoration: none !important;
}

.component-wrapper {
	padding: 150px 0;
	min-height: 70vh;
	position: relative !important;
}

.bg-elements {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	overflow: hidden;
}

.bg-elements>div {
	position: absolute;
}

.bg-element-01 {
	right: 0;
	top: 0;
	transform: translate(20%, -30%);
	width: 55vw;
	height: 55vw;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	background: radial-gradient(50% 50% at 50% 50%, #B99AD5 0%, rgba(195, 176, 223, 0.770833) 36.46%, rgba(231, 250, 255, 0) 100%);
	filter: blur(36px);
}

body.dark .bg-element-01 {
	background: radial-gradient(50% 50% at 50% 50%, rgba(156, 244, 239, 0.5) 0%, rgba(231, 250, 255, 0) 100%);
}

.bg-element-02 {
	right: 0;
	top: 0;
	transform: translate(40%, 25%);
	width: 45vw;
	height: 45vw;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	background: radial-gradient(50% 50% at 50% 50%, rgba(165, 181, 238, 0.882) 0%, rgba(176, 192, 241, 0.735) 48.96%, rgba(231, 250, 255, 0) 100%);
	filter: blur(36px);
}

body.dark .bg-element-02 {
	background: radial-gradient(50% 50% at 50% 50%, rgba(165, 181, 238, 0.49) 0%, rgba(231, 250, 255, 0) 100%);
}

.bg-element-03 {
	right: 0;
	top: 0;
	transform: translate(0%, -2%);
	width: 100%;
	height: 100vh;
	background: url('../images/bg-wave.png') 100% 0 no-repeat;
}

.bg-element-04 {
	left: 0;
	top: 0;
	width: 100%;
	height: 100vh;
	background: url('../images/bg-spiral.png') 0% 50% no-repeat;
}

@media screen and (max-width: 576px) {

	.bg-element-03,
	.bg-element-04 {
		display: none;
	}

	body.dark .bg-element-09 {
		display: none;
	}
}

.bg-element-05 {
	left: 0;
	top: 0;
	transform: translate(-35%, 10%);
	width: 50vw;
	height: 50vw;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	background: radial-gradient(50% 50% at 50% 50%, rgba(235, 190, 173, 0.8) 0%, rgba(237, 208, 160, 0.096) 100%);
	filter: blur(16px);
}

body.dark .bg-element-05 {
	background: radial-gradient(50% 50% at 50% 50%, rgb(22 18 66) 0%, rgba(237, 208, 160, 0.096) 100%);
	filter: blur(36px);
}

.bg-element-10 {
	left: 0;
	top: 0;
	transform: translate(-10%, 25%);
	width: 25vw;
	height: 25vw;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	background: radial-gradient(50% 50% at 50% 50%, rgba(255, 212, 57, 0.4) 0%, rgba(237, 208, 160, 0.048) 100%);
	filter: blur(16px);
}

body.dark .bg-element-10 {
	display: none;
}

.bg-element-06 {
	left: 0;
	top: 50%;
	transform: translate(-15%, 50%);
	width: 50vw;
	height: 50vw;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	background: radial-gradient(50% 50% at 50% 50%, rgba(185, 154, 213, 0.9) 0%, rgba(231, 250, 255, 0) 100%);
	filter: blur(36px);
}

.bg-element-07 {
	right: 0;
	top: 50%;
	transform: translate(-15%, 50%);
	width: 25vw;
	height: 25vw;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	background: radial-gradient(50% 50% at 50% 50%, rgba(165, 181, 238, 0.49) 0%, rgba(231, 250, 255, 0) 100%);
	filter: blur(36px);
}

.bg-element-08 {
	left: 0;
	bottom: 120px;
	width: 100%;
	height: 100vh;
	background: url('../images/bg-wave-footer.png') 0% 0 no-repeat;
	/* background-size: 100% auto; */
	/* transition: filter .25s ease; */
}

.bg-element-09 {
	right: 0;
	top: 100vh;
	transform: translate(5%, 20%);
	width: 100%;
	height: 100vh;
	background: url('../images/bg-wave-sphere.png') 100% 0 no-repeat;
}

.inner {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
	padding: 0 5px;
}

.inner-small {
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
	position: relative;
	padding: 0 5px;
}

.inner-larger {
	width: 100%;
	max-width: 1300px;
	margin: 0 auto;
	position: relative;
	padding: 0 5px;
}

.inner-largest {
	width: 100%;
	max-width: 1700px;
	margin: 0 auto;
	position: relative;
	padding: 0 5px;
}

.inner-plate {
	width: 100%;
	max-width: 1084px;
	margin: 0 auto;
	position: relative;
	padding: 0 5px;
}

.inner-plate.inner-plate-bigger {
	max-width: 1100px;
}

.inner-slider {
	width: 100%;
	max-width: 1124px;
	margin: 0 auto;
	position: relative;
	padding: 0 5px;
}

@media screen and (max-width: 900px) {
	[class*="inner"] {
		padding: 0 15px;
	}
}

.inner-leftPadded {
	padding-left: 55px;
}

header {
	position: absolute;
	width: 100%;
	top: 0;
	left: 0;
}

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

.header-fixed .mob-header-logo {
	display: block;
}

.header-fixed header {
	position: fixed;
	z-index: 2;
	background: rgba(255, 255, 255, 0);
	transform: translate(0, -100%);
	box-shadow: 0 5px 10px 0 rgba(0, 0, 0, .1);
}

.header-fixed.header-fixed-shown header {
	transition: transform .3s ease, background .5s ease;
	transform: translate(0, 0%);
	background: rgba(255, 255, 255, 1);
}

.header-fixed .navigation-content {
	padding-top: 0px !important;
}

header a {
	color: #141414;
}

body.dark header a {
	color: #fff;
}

body.dark.header-fixed header {
	background: linear-gradient(180deg, rgb(77 116 132) 0%, rgb(50 59 83) 100%);
}

body.dark.header-fixed a {
	color: #000;
}

.mainmenu-link-wrapper {
	padding: 5px;
}

@media screen and (max-width:780px) {
	.navigation-wrapper {
		text-align: right;
	}
}

@media screen and (min-width:781px) {
	.mainmenu-link-wrapper {
		padding: 5px 75px 5px 0px;
	}
}

.header-lang {
	display: block;
	width: 48px;
	height: 48px;
	line-height: 45px;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	text-align: center;
	border: 2px solid #141414;
	color: #141414;
}

body.dark .header-lang {
	border-color: #fff;
	color: #fff;
}

.header-lang.current,
.header-lang:hover {
	background: #141414;
	color: #fff;
}

body.dark .header-lang.current,
body.dark .header-lang:hover {
	background: #fff;
	color: #475261;
}

.navigation-wrapper {
	position: relative;
	z-index: 2;
}

.navigation-heading {
	display: none;
}

.navigation-content {}

@media screen and (max-width:780px) {
	.navigation-heading {
		display: block;
		/* position: absolute;
		top: 0;
		right: 0; */

		width: 100%;
	}

	.header-fixed .navigation-heading {
		background: #fff;
	}

	.navigation-content {
		display: none;
		background: #fff;
	}

	.navigation-content>.navigation-items {
		display: block !important;
		text-align: right;
	}

	.lang-wrapper {
		-webkit-box-pack: end !important;
		-ms-flex-pack: end !important;
		justify-content: flex-end !important;
	}
}

.open-menu .navigation-content {
	display: inline-block !important;
	padding: 10px;
}

.hamburger-wrapper {
	padding: 10px;
	text-align: right;
}

.hamburger-icon {
	position: relative;
	width: 32px;
	/* height: 40px; */
	cursor: pointer;
	display: inline-block;
}

.hamburger-icon>span {
	display: block;
	width: 100%;
	height: 5px;
	background: #fff;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	margin-top: 6px;
	transition: transform .2s ease;
}

.hamburger-icon>span:first-child {
	margin-top: 0;
}

.header-fixed .hamburger-icon>span {
	background: #071C35;
}

.open-menu .hamburger-icon>span:last-child {
	transform: translate(100px, 5px);
}

.open-menu .hamburger-icon>span:nth-child(1) {
	transform: rotate(45deg) translate(10px, 5px);
}

.open-menu .hamburger-icon>span:nth-child(2) {
	transform: rotate(-45deg) translate(2px, 2px);
}

section#welcome {
	padding-top: 55px;
}

section#welcome .section-wrapper {
	padding-top: 110px;
	/* padding-left: 70px;
	padding-right: 70px; */
}

section#welcome .section-heading {}

section#welcome .section-title {
	position: relative;
	font-size: 3.5rem;
	font-weight: 800;
	text-transform: uppercase;
	display: inline-block;
}

section#welcome .section-title span {
	position: relative;
}

section#welcome .section-title:before {
	content: "";
	position: absolute;
	height: 225%;
	width: 100%;
	background: url(../images/welcome-title-before.png) 0 center no-repeat;
	background-size: auto 100%;
	transform: translate(-5%, -31%);
	left: 0;
	top: 0;
}

body.dark section#welcome .section-title:before {
	background-image: url(../images/welcome-title-before-light.png);
}

.section-content {
	font-size: 16px;
	line-height: 1.5;
}

.welcome-intro-wrapper {
	/* padding: 65px 55px 75px; */
	padding: 55px;
	background: linear-gradient(180deg, rgba(234, 199, 190, 1) 0%, rgba(234, 215, 177, 1) 100%);
	border-radius: 50px;
	filter: drop-shadow(-5px -5px 10px rgba(0, 0, 0, 0.2));
}

#about-2 .welcome-intro-wrapper {
	background: linear-gradient(180deg, #C5B5DE 0%, #8B9FC3 100%);
	padding: 10px 55px 35px;
}

body.dark .welcome-intro-wrapper {
	background: linear-gradient(180deg, rgba(156, 244, 239, 0.476) 0%, rgba(202, 251, 248, 0.203) 100%);
}

@media screen and (max-width: 600px) {
	.welcome-intro-wrapper {
		padding: 35px;
		font-size: 15px !important;
	}

	section#welcome .section-wrapper {
		padding-top: 10px;
	}
}


.boxContainer {
	display: flex;
	justify-content: space-between;
	height: 250px;
	--boxSize: 7px;
	--gutter: 5px;
	opacity: .4;
}

.box {
	transform: scaleY(.5);
	height: 100%;
	width: var(--boxSize);
	/* background: #5E45FE; */

	animation-duration: 1.2s;
	animation-timing-function: ease-in-out;
	animation-iteration-count: infinite;
	border-radius: 50%;
}

.section-block {}

.section-block .section-title {
	font-size: 2rem;
	font-weight: 700;
}

@keyframes float-small {
	0% {

		transform: translate(15%, -160%);
	}

	50% {

		transform: translate(15%, -150%);
	}

	100% {

		transform: translate(15%, -160%);
	}
}

@keyframes float-large {
	0% {

		transform: translate(0, -10%);
	}

	50% {

		transform: translate(0, -5%);
	}

	100% {

		transform: translate(0, -10%);
	}
}

.has-decorative-elements {
	position: relative;
	display: inline-block;
}

.decorative-elements-wrapper {
	position: absolute;
	left: 100%;
	top: 0;
}

@media screen and (max-width: 600px) {
	.decorative-elements-wrapper {
		display: none;
	}

	section:not(#welcome) .section-heading {
		text-align: center;
	}
}

.decorative-element-small {
	transform: translate(15%, -160%);
	animation: float-small 2.6s ease-in-out infinite;
}

.decorative-element-large {
	transform: translate(0%, -10%);
	animation: float-large 2.5s ease-in-out infinite;
}

.slide-padding {
	padding: 20px;
}

@media screen and (min-width:991px) {
	.slide-wrapper {
		min-height: 425px;
	}
}

.products-and-tech-slider .slide-wrapper {
	border-radius: 50px;
	-moz-border-radius: 50px;
	-webkit-border-radius: 50px;
	padding: 50px 35px 50px 50px;
	background-size: 100% 100%;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	filter: drop-shadow(-5px -5px 10px rgba(0, 0, 0, 0.2));
}

@media screen and (max-width: 576px) {
	.products-and-tech-slider .slide-wrapper {
		min-height: 450px;
		padding: 50px 17.5px 50px 25px;
		text-align: justify;
		filter: none;
	}
}

.products-and-tech-slider .btn-slide {
	background: #FFFFFF;
	border-radius: 10px;
	padding: 10px 35px;
	color: #141414;
}

.bg-slide-01 .slide-wrapper {
	background-image: url('../images/bg-slide-01.png');
}

body.dark .bg-slide-01 .slide-wrapper {
	background-image: url('../images/bg-slide-01-light.png');
}

.bg-slide-02 .slide-wrapper {
	background-image: url('../images/bg-slide-02.png');
}

body.dark .bg-slide-02 .slide-wrapper {
	background-image: url('../images/bg-slide-02-light.png');
}

.bg-slide-03 .slide-wrapper {
	background-image: url('../images/bg-slide-03.png');
}

body.dark .bg-slide-03 .slide-wrapper {
	background-image: url('../images/bg-slide-03-light.png');
}

.products-and-tech-slider .slide-heading {
	min-height: 50px;
}

.products-and-tech-slider .slide-content {
	min-height: 250px;
	overflow: hidden;
}

@media screen and (max-width: 1160px) {
	.products-and-tech-slider .slide-content {
		min-height: auto;
	}

	.products-and-tech-slider .slide-heading {
		min-height: auto;
	}
}

@media screen and (max-width: 1160px) and (min-width: 1121px) {
	.products-and-tech-slider .slide-wrapper {
		padding: 40px 30px 40px 40px;
	}
}

@media screen and (max-width: 1120px) and (min-width: 1065px) {
	.products-and-tech-slider .slide-wrapper {
		padding: 40px 25px 40px 30px;
	}
}

.slick-prev,
.slick-next {
	width: 35px;
	height: 34px;
}

.slick-prev:before,
.slick-next:before {
	content: none;
}

.slick-prev {
	left: -75px;
	margin-top: -17px;
	background: url(../images/slider-arrow-left.png) center center no-repeat;
	background-size: 100% 100%;
}

.slick-next {
	right: -75px;
	margin-top: -17px;
	background: url(../images/slider-arrow-right.png) center center no-repeat;
	background-size: 100% 100%;
}

body.dark .slick-prev,
body.dark .slick-next {
	filter: invert(1);
}

#projects .decorative-elements-wrapper {
	transform: translate(0, -10%);
}

.projects-slider {}

.projects-slider .slide-padding {
	padding: 20px;
}

body.dark .projects-slider .slide-wrapper {
	color: #000;
	/* background: rgba(255,255,255,.9); */
}

.projects-slider .slick-prev {
	display: none !important
}

.projects-slider .slide-wrapper {
	position: relative;
	background: #fff;
	border-radius: 50px;
	-moz-border-radius: 50px;
	-webkit-border-radius: 50px;
	padding: 30px 18px;
}

.projects-slider .slide-outer {
	position: relative;
}

.projects-slider .slide-outer:before {
	content: "";
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, .25);
	position: absolute;
	top: 0;
	left: 0;
	transform: translate(-10px, -10px);
	border-radius: 50px;
	-moz-border-radius: 50px;
	-webkit-border-radius: 50px;
	width: calc(100% + 20px);
	width: -moz-calc(100% + 20px);
	width: -webkit-calc(100% + 20px);
	height: calc(100% + 20px);
	height: -moz-calc(100% + 20px);
	height: -webkit-calc(100% + 20px);
	background: url('../images/bg-projects.png') center center no-repeat;
	background-size: cover;
}

.project-slide-section {
	padding: 20px 30px;
}

.project-slide-section:first-child {}

.projects-slider .btn-details {
	border-bottom: 1px solid;
}

.projects-slider .btn-details {
	border: none;
	padding: 10px 35px;
	background: linear-gradient(180deg, #ad6c24 0%, #402625 100%);
	box-shadow: 0px 20px 40px rgba(0, 0, 0, 0.12), 0px 4px 0px rgba(255, 255, 255, 0.8);
	backdrop-filter: blur(10px);
	border-radius: 10px;
	color: #fff;
}

body.dark .projects-slider .btn-details {
	background: linear-gradient(180deg, #A577DF 0%, #5446AE 100%);
}

.section-left-line {
	border-left: 1px solid #000;
	padding: 20px 30px;
}

.projects-slider-arrow {
	width: 55px;
	height: 34px;
	transform: translate(50%, 0);
	background: url(../images/slider-arrow-right.png) 0 center no-repeat;
	background-size: auto 100%;
	cursor: pointer;
	transition: background .25s ease;
	-moz-transition: background .25s ease;
	-webkit-transition: background .25s ease;
}

.projects-slider-arrow:hover {
	background-position: 100% center;
}

@media screen and (max-width: 1014px) {
	.projects-slider .slide-wrapper>div {
		display: block !important;
	}

	.section-left-line {
		border: none;
		border-top: 1px solid #000;
		padding: 20px 0px;
	}

	.projects-slider .btn-details {
		border: none;
	}
}

.partners-slide-outer {
	padding: 0 20px;
}

.partners-slide-plate {
	padding: 10px;
	border-radius: 20px;
	-moz-border-radius: 20px;
	-webkit-border-radius: 20px;
	text-align: center;
	/* width: 255px; */
	height: 133px;
	background: #fff;
}

.partners-slide-plate img {
	max-width: 90%;
}

footer {
	background: #071C35;
	padding: 25px 0;
	position: relative;
}

footer a {
	color: #fff;
}

.footer-lang {
	display: block;
	width: 48px;
	height: 48px;
	line-height: 45px;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	text-align: center;
	border: 2px solid #fff;
	color: #fff;
}

.footer-lang.current,
.footer-lang:hover {
	background: #fff;
	color: #000;
}

.partners-slider .slick-dots {
	bottom: -40px;
}

body.dark .slick-dots {
	filter: invert(1);
}

.slick-dots li button:before {
	font-size: 36px;
}

@media screen and (max-width:750px) {
	.footer-lang-wrapper {
		width: 100%;
	}
}

.sk-logo-header {
	width: 200px;
}

.sk-logo {
	width: 300px;
}

/* #contacts {
	background: #071C35;
    padding: 25px 0;
    position: relative;
	color: #fff;
	line-height: 1.3!important;
} */

.about-image {
	width: 212px;
}

.pointer {
	cursor: pointer;
}


.section-content-welcome {
	max-width: 670px;
}

@media screen and (min-width:992px) {
	.section-content-welcome {
		width: 670px;
	}
}

.form-outer-wrapper {
	display: none;
}

.form-outer-wrapper.shown {
	display: block;
}

.popup-body {
	background: #fff;
	border-radius: 25px;
	-moz-border-radius: 25px;
	-webkit-border-radius: 25px;
	padding: 15px 30px 15px;
	width: 355px;
	overflow: hidden;
}

.form-container {
	-webkit-box-orient: vertical !important;
	-webkit-box-direction: normal !important;
	-ms-flex-direction: column !important;
	flex-direction: column !important;
}


@media screen and (min-width: 1094px) {
	.form-container {
		-webkit-box-orient: horizontal !important;
		-webkit-box-direction: normal !important;
		-ms-flex-direction: row !important;
		flex-direction: row !important;
	}

	.popup-body {
		margin-right: -50px;
		margin-top: -75px;
	}
}

@media screen and (min-width: 1150px) {
	.popup-body {
		/* margin-right: -75px; */
	}
}

@media screen and (min-width: 1250px) {
	.popup-body {
		/* margin-right: -125px; */
	}
}

.popup-btn-close {
	position: absolute;
	top: 0;
	right: 0;
	width: 45px;
	height: 45px;
	background: url(../images/close-black.svg) center center no-repeat;
	cursor: pointer;
	z-index: 1;
	border-radius: 0 0 0 20px;
	-moz-border-radius: 0 0 0 20px;
	-webkit-border-radius: 0 0 0 20px;
}

.popup-btn-close.filled {
	background-color: #434d58;
	background-image: url(../images/close.svg);
	transition: all .25s ease;
	-moz-transition: all .25s ease;
	-webkit-transition: all .25s ease;
}

.popup-wrapper .input-text {
	border-radius: 15px;
	-moz-border-radius: 15px;
	-moz-border-radius: 15px;
	height: 41px;
	width: 100%;
	max-width: 460px;
	margin: 0 auto;
	padding: 0 15px;
	outline: none;
	border: none !important;
	background: #E7E5E3;
	box-shadow: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
}

.popup-wrapper .popup-btn {
	border-radius: 8px;
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
	border: 3px solid #000 !important;
	background: #071C35;
	padding: 0.75rem 1.3rem;
	display: inline-block;
	color: #fff;
	font-size: 1.1rem;
	cursor: pointer;
}

.form-disclaimer {
	font-size: 11px !important;
	color: #C0A7D9;
	/* font-weight: 500; */
}

.loading {
	position: relative
}

.loading:after {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255, 255, 255, .9);
	content: "";
}


.slick-track {
	display: flex !important;
}

.slick-slide {
	height: inherit !important;
}

.footer {
	border-radius: 50px 50px 0 0;
	-moz-border-radius: 50px 50px 0 0;
	-webkit-border-radius: 50px 50px 0 0;
	padding: 75px 5px 35px;
	background: linear-gradient(180deg, #EAD7B1 1.56%, #EAC7BE 100%);
	line-height: 1.5;
	font-size: 16px;
	color: #000 !important;
}

.footer a {
	color: #000;
}

.footer-contact-plate {
	background: #fff;
	border-radius: 10px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	width: 50px;
	height: 50px;
	text-align: center;
}

.footer-contact-plate img {
	display: inline-block;
}

.footer-sk {
	margin-top: -32px;
}

.footer-contact {
	width: 260px;
	display: inline-block;
	text-align: left;
}

.document {
	margin-top: 40px;
}

.document-title {
	text-align: center;
	line-height: 30px;
}

.document-subtitle {
	text-align: center;
	font-size: 20px;
	margin-top: 40px;
	margin-bottom: 20px;
	line-height: 25px;
	font-weight: 500;
}

.document-text.document-text-end {
	text-align: end;
	padding: 8px 0px;
	margin-top: 0px;
}

.document-text {
	margin-top: 15px;
	line-height: 25px;
}

.document ul {
	margin-left: 30px;
}

.document ul li {
	margin-top: 15px;
	line-height: 25px;
}

.document-block {
	margin-top: 15px;
}

@media screen and (max-width: 780px) {
	.document {
		margin-top: 0px;
	}
}

.footer-contact-link {
	border-bottom: 1px solid black;
}

/* 
.button-form-mobile {
	display: none;
}

@media screen and (max-width: 780px) {
	.button-form-desktop {
		display: none;
	}

	.button-form-mobile {
		display: block;
	}
} */