@charset "utf-8";
/* CSS Document */

/******************************

[Table of Contents]

1. Fonts
2. Body and some general stuff



******************************/

/***********
1. Fonts
***********/

@import url('https://fonts.googleapis.com/css2?family=Fira+Sans:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
@font-face
{
	font-family: 'Tex';
	src: url('../fonts/TeXGyreAdventor-Bold.ttf')  format('truetype');
	font-weight: 700;
}
@font-face
{
	font-family: 'Tex';
	src: url('../fonts/TeXGyreAdventor-Regular.ttf') format('truetype');
	font-weight: 400;
}

/*********************************
2. Body and some general stuff
*********************************/

:root
{
	--font1: "Fira Sans", sans-serif;
	--white: #ffffff;
	--black: #000000;
	--blue: #449FE5;
	--background-dark: #1a1a1e;
	--textColor: #333326;
	--hColor: #333326;
}
*
{
	margin: 0;
	padding: 0;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	-o-font-smoothing: antialiased;
	-webkit-text-shadow: rgba(0,0,0,.01) 0 0 1px;
	-moz-text-shadow: rgba(0,0,0,.01) 0 0 1px;
	-o-text-shadow: rgba(0,0,0,.01) 0 0 1px;
	text-shadow: rgba(0,0,0,.01) 0 0 1px;
}
body
{
	font-family: var(--font1);
	font-size: 16px;
	font-weight: 400;
	background: var(--white);
	color: var(--textColor);
}
.texture
{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url(../images/texture.webp);
	background-attachment: fixed;
	opacity: 0.3;
}
div
{
	display: block;
	position: relative;
	-webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
ul
{
	list-style: none;
	margin-bottom: 0px;
	padding-left: 0;
}
p
{
	font-family: var(--font1);
	font-size: 16px;
	line-height: 1.5;
	font-weight: 400;
	color: var(--textColor);
	-webkit-font-smoothing: antialiased;
	-webkit-text-shadow: rgba(0,0,0,.01) 0 0 1px;
	text-shadow: rgba(0,0,0,.01) 0 0 1px;
	margin-bottom: 0;
}
p a
{
	display: inline;
	position: relative;
	color: inherit;
	border-bottom: solid 1px #ffa07f;
	-webkit-transition: all 200ms ease;
	-moz-transition: all 200ms ease;
	-ms-transition: all 200ms ease;
	-o-transition: all 200ms ease;
	transition: all 200ms ease;
}
p:last-of-type
{
	margin-bottom: 0;
}
a
{
	-webkit-transition: all 200ms ease;
	-moz-transition: all 200ms ease;
	-ms-transition: all 200ms ease;
	-o-transition: all 200ms ease;
	transition: all 200ms ease;
}
a, a:hover, a:visited, a:active, a:link
{
	text-decoration: none;
	-webkit-font-smoothing: antialiased;
	-webkit-text-shadow: rgba(0,0,0,.01) 0 0 1px;
	text-shadow: rgba(0,0,0,.01) 0 0 1px;
}
p a:active
{
	position: relative;
	color: #FF6347;
}
h1{font-size: 276px;}
h2{font-size: 70px;}
h3{font-size: 40px;}
h4{font-size: 18px;}
h5{font-size: 14px;}
h1, h2, h3, h4, h5, h6
{
	font-family: 'Tex';
	-webkit-font-smoothing: antialiased;
	-webkit-text-shadow: rgba(0,0,0,.01) 0 0 1px;
	text-shadow: rgba(0,0,0,.01) 0 0 1px;
	line-height: 1.2;
	margin-bottom: 0;
	color: var(--hColor);
	font-weight: 700;
	letter-spacing: 0.01em;
}
img
{
	max-width: 100%;
}
button:active
{
	outline: none;
}
section
{
	display: block;
	position: relative;
	box-sizing: border-box;
}
.clear
{
	clear: both;
}
.clearfix::before, .clearfix::after
{
	content: "";
	display: table;
}
.clearfix::after
{
	clear: both;
}
.clearfix
{
	zoom: 1;
}
.float_left
{
	float: left;
}
.float_right
{
	float: right;
}
.trans_200
{
	-webkit-transition: all 200ms ease;
	-moz-transition: all 200ms ease;
	-ms-transition: all 200ms ease;
	-o-transition: all 200ms ease;
	transition: all 200ms ease;
}
.trans_300
{
	-webkit-transition: all 300ms ease;
	-moz-transition: all 300ms ease;
	-ms-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
}
.trans_400
{
	-webkit-transition: all 400ms ease;
	-moz-transition: all 400ms ease;
	-ms-transition: all 400ms ease;
	-o-transition: all 400ms ease;
	transition: all 400ms ease;
}
.trans_500
{
	-webkit-transition: all 500ms ease;
	-moz-transition: all 500ms ease;
	-ms-transition: all 500ms ease;
	-o-transition: all 500ms ease;
	transition: all 500ms ease;
}
.fill_height
{
	height: 100%;
}
.super_container
{
	width: 100%;
	overflow: hidden;
}
.prlx_parent
{
	overflow: hidden;
}
.prlx
{
	height: 130% !important;
}
.parallax-window
{
    min-height: 400px;
    background: transparent;
}
.parallax_background
{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.background_image
{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}
.nopadding
{
	padding: 0px !important;
}
.owl-carousel,
.owl-carousel .owl-stage-outer,
.owl-carousel .owl-stage,
.owl-carousel .owl-item
{
	height: 100%;
}
.slide
{
	height: 100%;
}
figure
{
	margin: 0;
}
.loader-container
{
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	background-color: var(--blue);
	z-index: 3000;
	visibility: hidden;
	pointer-events: none;
	opacity: 0;
	transition: all 300ms ease;
}
.loader-container.active
{
	visibility: visible;
	opacity: 1;
}
.loader
{
	width:45px;
	height:40px;
	background:
	linear-gradient(#0000 calc(1*100%/6),#fff 0 calc(3*100%/6),#0000 0),
	linear-gradient(#0000 calc(2*100%/6),#fff 0 calc(4*100%/6),#0000 0),
	linear-gradient(#0000 calc(3*100%/6),#fff 0 calc(5*100%/6),#0000 0);
	background-size:10px 400%;
	background-repeat: no-repeat;
	animation:matrix 1s infinite linear;
}
@keyframes matrix
{
	0% {background-position: 0% 100%, 50% 100%, 100% 100% }
	100% {background-position: 0% 0%, 50% 0%, 100% 0% }
}
body.preload-active
{
	overflow: hidden;
}

/* animate adjustments for fadeInUp */
@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 25px, 0) scale3d(1, 1, 1);
    transform: translate3d(0, 25px, 0) scale3d(1, 1, 1);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100px, 0) scale3d(1, 1, 1);
    transform: translate3d(0, 100px, 0) sscale3d(1, 1, 1);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
  animation-timing-function: cubic-bezier(0,.5,.5,.99);
  animation-delay: 0.3s;
  animation-duration: 1s !important;
}
/* Animate adjustments for fadeInRight */
@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(75px, 0, 0);
    transform: translate3d(75px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(75px, 0, 0);
    transform: translate3d(75px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}
/* Animate adjustments for fadeInLeft */
@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-75px, 0, 0);
    transform: translate3d(-75px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-75px, 0, 0);
    transform: translate3d(-75px, 0, 0);
  }

  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}
.wow-delay
{
	animation-delay: 300ms;
}

/*********************************
3. Menu
*********************************/

.hamburger-button
{
	display: none;
	position: fixed;
	top: 16px;
	right: 16px;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	overflow: hidden;
	z-index: 1001;
	outline: none;
	border: none;
	padding: 8px;
	background-color: transparent;
}
.hamburger
{
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background-color: var(--white);
	overflow: hidden;
}
.hamburger span
{
	background-color: var(--blue);
	border-radius: 1px;
	height: 2px;
	transition: all 300ms ease;
}
.hamburger span:first-child, .hamburger span:last-child
{
	width: 12px;
}
.hamburger span:nth-child(2)
{
	width: 18px;
}
.hamburger span:not(:last-child)
{
	margin-bottom: 4px;
}
.hamburger-button:hover .hamburger
{
	box-shadow: 0px 3px 6px rgba(0,0,0,0.2);
}
.hamburger-button:hover .hamburger span
{
	width: 18px;
}
.menu
{
	visibility: hidden;
	position: fixed;
	top: 0;
	right: 0;
	width: 100%;
	height: 100vh;
	overflow-y: visible;
	z-index: 1002;
	background: #449FE5;
	background: -webkit-linear-gradient(to right, rgba(68, 159, 229, 1) 0%, rgba(103, 177, 234, 1) 100%);
	background: -moz-linear-gradient(to right, rgba(68, 159, 229, 1) 0%, rgba(103, 177, 234, 1) 100%);
	background: linear-gradient(to right, rgba(68, 159, 229, 1) 0%, rgba(103, 177, 234, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#449FE5", endColorstr="#67B1EA", GradientType=0);
}
.menu.active
{
	visibility: visible;
}
.hamburger-close
{
	position: absolute;
	top: 8px;
	right: 8px;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	overflow: hidden;
	outline: none;
	border: none;
	padding: 8px;
	background-color: transparent;
}
.close-btn
{
	display: block;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background-color: var(--white);
	overflow: hidden;
}
.close-btn::before, .close-btn::after
{
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: 16px;
	background-color: var(--blue);
	border-radius: 1px;
	height: 2px;
	content: '';
}
.close-btn::before
{
	-webkit-transform: translate(-50%, -50%) rotate(45deg);
	-moz-transform: translate(-50%, -50%) rotate(45deg);
	-ms-transform: translate(-50%, -50%) rotate(45deg);
	-o-transform: translate(-50%, -50%) rotate(45deg);
	transform: translate(-50%, -50%) rotate(45deg);
}
.close-btn::after
{
	-webkit-transform: translate(-50%, -50%) rotate(-45deg);
	-moz-transform: translate(-50%, -50%) rotate(-45deg);
	-ms-transform: translate(-50%, -50%) rotate(-45deg);
	-o-transform: translate(-50%, -50%) rotate(-45deg);
	transform: translate(-50%, -50%) rotate(-45deg);
}
.hamburger-close:hover .close-btn::before, .hamburger-close .close-btn::after
{
	opacity: 0.6;
}
.hamburger-close:hover .close-btn .hamburger
{
	box-shadow: 0px 3px 6px rgba(0,0,0,0.2);
}
.menu-nav ul li
{
	opacity: 0;
	transform: translateY(15px);
}
.menu.active .menu-nav ul li
{
	transition: all 700ms ease;
	opacity: 1;
	transform: translateY(0px);
}
.menu-nav ul li a
{
	display: inline-block;
	font-family: 'Tex', sans-serif;
	font-size: 16px;
	font-weight: 400;
	color:rgba(255, 255, 255, 0.6);
	line-height: 2.5;
	letter-spacing: 0.01em;
}
.menu-nav ul li a:hover
{
	color:rgba(255, 255, 255, 1);
}
.menu-nav ul li:not(:last-child)
{
	margin-bottom: 13px;
}
.language-selector-menu
{
	margin-left: 0px !important;
	margin-top: 22px;
}
.menu.active .menu-nav ul li:first-child {transition-delay: 100ms;}
.menu.active .menu-nav ul li:nth-child(2) {transition-delay: 200ms;}
.menu.active .menu-nav ul li:nth-child(3) {transition-delay: 300ms;}
.menu.active .menu-nav ul li:nth-child(4) {transition-delay: 400ms;}
.menu.active .menu-nav ul li:nth-child(5) {transition-delay: 500ms;}
.language-selector-menu
{
	opacity: 0;
	transform: translateY(15px);
}
.menu.active .language-selector-menu
{
	transition: all 700ms ease;
	transition-delay: 800ms;
	opacity: 1;
	transform: translateY(0px);
}

/*********************************
4. Header
*********************************/

.header
{
	position: absolute;
	top: 35px;
	left: 0;
	width: 100%;
	z-index: 1000;
}
.header.hidden
{
	position: fixed;
	top: -100px;
}
.header.scrolled
{
	top: 16px;
	transition: all 300ms ease;
}
.header.scrolled .header-content
{
	background: #449FE5;
	background: -webkit-linear-gradient(to bottom right, rgba(68, 159, 229, 0.9) 0%, rgba(149, 180, 203, 0.9) 100%);
	background: -moz-linear-gradient(to bottom right, rgba(68, 159, 229, 0.9) 0%, rgba(149, 180, 203, 0.9) 100%);
	background: linear-gradient(to bottom right, rgba(68, 159, 229, 0.9) 0%, rgba(149, 180, 203, 0.9) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#449FE5", endColorstr="#95B4CB", GradientType=0);
	border: solid 1px rgba(255, 255, 255, 0.3);
}
.header-inner
{
	width: 100%;
	max-width: 1710px;
	padding-right: 24px;
}
.header-content
{
	padding-left: 32px;
	padding-right: 39px;
	padding-top: 16px;
	padding-bottom: 16px;
	background-color: transparent;
	border-radius: 16px;
}
.main-nav-links
{
	gap: 40px;
}
.main-nav-links li a
{
	font-family: 'Tex', sans-serif;
	font-size: 20px;
	font-weight: 400;
	letter-spacing: 0.01em;
	color: rgba(255,255,255,0.6);;
}
.main-nav-links li a:hover, .main-nav-links li a.active
{
	color: var(--white);
}
.language-selector
{
	position: relative;
	display: inline-block;
	cursor: pointer;
	margin-left: 40px;
}
.language-selector .selected-flag
{
	width: 36px;
	height: 36px;
	border: solid 2px rgba(255,255,255,1);
	border-radius: 50%;
	overflow: hidden;
	transition: all 0.2s ease;
}
.language-selector .selected-flag:hover
{
	border: solid 2px rgba(255,255,255,0.5);
}
.language-selector .selected-flag img
{
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 50%;
}
.language-selector .dropdown
{
	position: absolute;
	top: calc(100% + 8px);
	left: -9px;
	background: white;
	border: 1px solid #ccc;
	padding: 4px;
	border-radius: 6px;
	z-index: 100;
	box-shadow: 0 4px 8px rgba(0,0,0,0.1);
	opacity: 0;
	transform: translateY(10px);
	transition: all 0.1s ease;
	min-width: auto;
}
.language-selector .dropdown.show
{
	max-height: 200px;
	opacity: 1;
	transform: translateY(0);
}
.language-selector .dropdown li
{
	list-style: none;
	padding: 8px;
	border-radius: 50%;
}
.language-selector .dropdown li a
{
	display: block;
}
.language-selector .dropdown li:hover
{
  	background-color: #f0f0f0;
}
.language-selector .dropdown img
{
	max-width: 28px;
	width: 28px;
	height: 28px;
	border-radius: 50%;
}

/*********************************
5. Hero
*********************************/

.hero
{
	width: 100%;
	height: 100vh;
	background: #449FE5;
	background: -webkit-linear-gradient(to bottom right, rgba(68, 159, 229, 1) 0%, rgba(149, 180, 203, 1) 100%);
	background: -moz-linear-gradient(to bottom right, rgba(68, 159, 229, 1) 0%, rgba(149, 180, 203, 1) 100%);
	background: linear-gradient(to bottom right, rgba(68, 159, 229, 1) 0%, rgba(149, 180, 203, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#449FE5", endColorstr="#95B4CB", GradientType=0);
	overflow: hidden;
}
.hero_content_container
{
	width: 100%;
	max-width: 1710px;
	height: 100%;	
	margin-left: auto;
	margin-right: auto;
}
.hero_pic
{
	position: absolute;
	left: calc(50% + 30px);
	bottom: 0;
	width: auto;
	height: 83.5%;
	z-index: 0;
}
.hero_pic img
{
	margin-top: auto;
	pointer-events: none;
	user-select: none;
}
.hero_content
{
	height: 100%;
	z-index: 1;
	padding-left: 120px;
	padding-top: 26px;
}
.hero-title
{
	font-size: 276px;
	/* font-size: 14.4vw; */
	font-weight: 700;
	line-height: 0.865;
	color: var(--white);
	width: min-content;
	letter-spacing: 0.0138em;
}
.hero-subtext
{
	margin-top: 59px;
	font-family: 'Tex', sans-serif;
	font-size: 20px;
	font-weight: 400;
	letter-spacing: 0.01em;
	line-height: 1.5;
	color: var(--white);
	padding-left: 10px;
}
.hero-buttons-container
{
	margin-top: 41px;
	padding-left: 9px;
	gap: 18px;
}
.button
{
	height: 47px;
	padding-left: 25px;
	padding-right: 25px;
	border-radius: 12px;
	overflow: hidden;
	font-family: var(--font1);
	font-size: 22px;
	font-weight: 400;
	color: var(--blue);
	line-height: 47px;
	user-select: none;
	letter-spacing: 0.01em;
}
.button-primary
{
	background-color: var(--white);
}
.button-primary:hover
{
	background-color: rgba(255,255,255,0.7);
}
.button-secondary
{
	border: solid 1px var(--white);
	border-radius: 12px;
	color: var(--white);
	line-height: 45px;
}
.button-secondary:hover
{
	background-color: var(--white);
	color: var(--blue);
}
.hero-buttons-mobile
{
	display: none !important;
}

/*********************************
6. About
*********************************/

.section-title
{
	display: inline-block;
	position: relative;
}
.section-title.title-underline::after
{
	display: block;
	position: absolute;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	transform: translateX(-50%);
	bottom: -26px;
	content: '';
	width: 65%;
	height: 9px;
	background-color: var(--blue);
}
.section-subtitle
{
	font-size: 24px;
	font-weight: 400;
	letter-spacing: 0.01em;
	margin-top: 50px;
}
.about
{
	padding-top: 126px;
}
.about-text
{
	padding-right: 40px;
	margin-top: 84px;
	padding-bottom: 224px;
}
.about-text p
{
	font-family: var(--font1);
	font-size: 20px;
	line-height: 1.2;
	margin-bottom: 24px;
	letter-spacing: 0.01em;
}
.about-text > div::after
{
	display: block;
	position: absolute;
	left: -14px;
	bottom: -82px;
	width: 97%;
	height: 44px;
	content: '';
	background-image: url('../images/underline.svg');
	background-size: contain;
	background-repeat: no-repeat;
}
.about-pic
{
	padding-right: 50px;
}
.about-pic img
{
	position: absolute;
	left: 50%;
	-webkit-transform: translateX(-50%);
	-moz-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	-o-transform: translateX(-50%);
	transform: translateX(-50%);
	top: 32px;
	max-width: max-content;
	pointer-events: none;
}

/*********************************
7. Technologies
*********************************/

.technologies
{
	padding-top: 54px;
	padding-bottom: 208px;
}
.tech-items
{
	margin-top: 56px;
	--bs-gutter-x: 32px;
}
.tech-items>*
{
	margin-top: 0;
}
.tech-item
{
	position: relative;
	padding: 32px;
	height: 498px;
	background-color: var(--blue);
	border-radius: 50px;
	overflow: hidden;
	margin-bottom: 44px;
}
.tech-item-subtitle
{
	display: inline-block;
	height: 22px;
	border-radius: 5px;
	background-color: #D0E8FB;
	padding-left: 6px;
	padding-right: 8px;
	z-index: 1;
}
.tech-pic
{
	position: absolute;
	z-index: 0;
	user-select: none;
	pointer-events: none;
}
.tech-pic-1
{
	width: 383px;
	bottom: 0;
	right: 45px;
}
.tech-pic-2
{
	width: 254px;
	right: 99px;
	bottom: -39px;
}
.tech-pic-3
{
	width: 264px;
	right: 104px;
	bottom: -19px;
}
.tech-pic-4
{
	width: 231px;
	right: 57px;
	bottom: -53px;
}
.tech-decor
{
	position: absolute;
}
.tech-decor-1
{
	right: 78px;
	bottom: 156px;
}
.tech-decor-2
{
	width: 192px;
	right: 28px;
	bottom: 155px;
}
.tech-decor-3
{
	width: 300px;
	right: -55px;
	bottom: 60px;
}
.tech-decor-4
{
	width: 160px;
	right: 46px;
	bottom: 229px;
}
.tech-item-subtitle > div p
{
	font-family: 'Tex', sans-serif;
	text-transform: uppercase;
	font-size: 12px;
	font-weight: 700;
	color: var(--blue);
	line-height: 22px;
	letter-spacing: 0.01em;
}
.tech-item-subtitle > div img
{
	margin-right: 11px;
}
.tech-item-title
{
	position: relative;
	color: rgba(255,255,255,0.94);
	margin-top: 16px;
	letter-spacing: 0.01em;
	z-index: 1;
}
.tech-list
{
	display: block;
	position: relative;
	margin-top: 22px;
	z-index: 10;
}
.tech-list li:not(:last-child)
{
	margin-bottom: 10px;
}
.tech-list li img
{
	width: 24px;
	height: 24px;
	margin-right: 10px;
}
.tech-list li span
{
	font-family: var(--font1);
	font-size: 20px;
	font-weight: 400;
	color: rgba(255,255,255,0.94);
}

/*********************************
8. Testimonials
*********************************/

.testimonials
{
	padding-top: 106px;
	padding-bottom: 140px;
	background-color: transparent;
}
.parallax-mirror
{
	z-index: 1 !important;
}
.testimonial-slider-container
{
	margin-top: 67px;
}
.testimonials-title-container
{
	z-index: 2 !important;
}
.testimonials-title
{
	color: var(--white);
}
.testimonial
{
	background-color: rgba(255,255,255,0.95);
	border-radius: 19px;
	overflow: hidden;
	padding-top: 16px;
	padding-bottom: 16px;
	padding-left: 16px;
	padding-right: 16px;
	height: 222px;
}
.testimonial-quote
{
	font-family: var(--font1);
	font-size: 16px;
	letter-spacing: 0.01em;
	line-height: 20px;
	color: rgba(0,0,0,.8);
}
.avatar
{
	width: 40px;
	height: 40px;
	margin-right: 10px;
}
.testimonial-author span span
{
	display: block;
}
.testimonial-author span span:first-child
{
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.01em;
	line-height: 17.5px;
	color: var(--black);
}
.testimonial-author span span:last-child
{
	font-size: 11px;
	font-weight: 400;
	letter-spacing: 0.01em;
	color: rgba(0,0,0,.8);
	line-height: 13.75px;
}
.avatar-icon
{
	display: block;
	position: absolute;
	right: -5px;
	bottom: -5px;
	width: 20px !important;
	height: 20px;
}
.owl-nav button
{
	width: 40px;
	height: 40px;
	border-radius: 50% !important;
	overflow: hidden;
	background-color: var(--white) !important;
}
.owl-nav button:hover span
{
	color: var(--background-dark);
	opacity: 0.5;
}
.owl-theme .owl-nav
{
	margin-top: 16px;
}

/*********************************
9. Projects
*********************************/

.projects
{
	padding-top: 118px;
	padding-bottom: 120px;
}
.projects .section-subtitle
{
	max-width: 410px;
	margin-left: auto;
	margin-right: auto;
}
.project-subtext
{
	height: 22px;
	padding-left: 6px;
	padding-right: 6px;
	border-radius: 5px;
	background-color: #D0E8FB;
	overflow: hidden;
}
.project-subtext img
{
	width: 16px;
	height: 16px;
	margin-right: 10px;
}
.project-subtext span
{
	font-family: 'Tex', sans-serif;
	font-size: 12px;
	font-weight: 700;
	color: var(--blue);
	letter-spacing: 0.01em;
	text-transform: uppercase;
	white-space: nowrap;
}
.project-items
{
	margin-top: 93px;
}
.project-items > article:not(:last-of-type)
{
	margin-bottom: 138px;
}
.project-items > article:nth-child(odd) .project-content
{
	padding-right: 60px;
}
.project-items > article:nth-child(even) .project-content
{
	padding-left: 60px;
}
.project-content
{
	padding-top: 88px;
}
.project-title-container
{
	margin-top: 2px;
}
.project-title
{
	font-size: 48px;
}
.project-list
{
	margin-top: 27px;
}
.project-list li:not(:last-of-type)
{
	margin-bottom: 20px;
}
.project-list li img
{
	margin-right: 16px;
}
.project-list li p
{
	font-size: 16px;
	font-weight: 400;
	color: #333326B2;
	line-height: 1.5;
	letter-spacing: 0.01em;
}

/*********************************
10. Footer
*********************************/

.footer
{
	position: relative;
	background-color: var(--blue);
	overflow: hidden;
}
.footer .container-fluid
{
	max-width: 1710px;
}
.footer-content
{
	padding-top: 105px;
	padding-bottom: 139px;
}
.footer-title
{
	color: var(--white);
	white-space: nowrap;
}
.footer-subtext
{
	font-family: var(--font1);
	font-size: 24px;
	font-weight: 400;
	line-height: 32.64px;
	color: rgba(255,255,255,0.8);
	max-width: 638px;
	margin-top: 14px;
	letter-spacing: 0.01em;
}
.footer-buttons
{
	margin-top: 24px;
	gap: 18px;
	flex-wrap: wrap;
}
.footer-button
{
	height: 68px;
	background-color: rgba(255, 255, 255, 1);
	border-radius: 12px;
	padding-left: 24px;
	padding-right: 24px;
}
.footer-button img
{
	margin-right: 10px;
}
.footer-button span
{
	font-size: 24px;
	font-weight: 400;
	color: var(--blue);
	letter-spacing: 0.01em;
	white-space: nowrap;
}
.footer-button:hover
{
	background-color: rgba(255, 255, 255, 0.8);
}
.terms-and-conditions
{
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%) rotate(-90deg);
	-moz-transform: translateY(-50%) rotate(-90deg);
	-ms-transform: translateY(-50%) rotate(-90deg);
	-o-transform: translateY(-50%) rotate(-90deg);
	transform: translateY(-50%) rotate(-90deg);
	right: -142px;
	padding-bottom: 21px;
}
.terms-and-conditions nav ul
{
	gap: 10px;
}
.terms-and-conditions nav ul li a
{
	font-family: 'Tex', sans-serif;
	font-size: 14px;
	font-weight: 400;
	color: rgba(255,255,255,0.8);
	letter-spacing: 0.01em;
	line-height: 1.4;
}
.terms-and-conditions nav ul li a:hover
{
	color: rgba(255,255,255,1);
}
.contact-form-container
{
	padding-left: 100px;
	padding-right: 100px;
	padding-bottom: 131px;
}
.contact-form
{
	display: block;
	width: 100%;
}
.contact-form > div
{
	gap: 12px;
}
.contact-input
{
	display: block;
	position: relative;
	width: 100%;
	height: 60px;
	background-color: rgba(255,255,255,0.67);
	border-radius: 12px;
	border: none;
	outline: none;
	padding-left: 20px;
	padding-right: 20px;
}
.contact-input:focus
{
	outline: solid 2px #ffffff;
}
.contact-input::-webkit-input-placeholder
{
	font-family: var(--font1) !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	color: var(--blue) !important;
	letter-spacing: 0.01em !important;
}
.contact-input:-moz-placeholder
{
	font-family: var(--font1) !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	color: var(--blue) !important;
	letter-spacing: 0.01em !important;
}
.contact-input::-moz-placeholder
{
	font-family: var(--font1) !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	color: var(--blue) !important;
	letter-spacing: 0.01em !important;
} 
.contact-input:-ms-input-placeholder
{ 
	font-family: var(--font1) !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	color: var(--blue) !important;
	letter-spacing: 0.01em !important;
}
.contact-input::input-placeholder
{
	font-family: var(--font1) !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	color: var(--blue) !important;
	letter-spacing: 0.01em !important;
}
.contact-message
{
	display: block;
	position: relative;
	width: 100%;
	height: 120px;
	border-radius: 12px;
	background-color: rgba(255,255,255,0.67);
	border: none;
	outline: none;
	margin-top: 12px;
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 16px;
	padding-bottom: 16px;
}
.contact-message:focus
{
	outline: solid 2px #ffffff;
}
.contact-message::-webkit-input-placeholder
{
	font-family: var(--font1) !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	color: var(--blue) !important;
	letter-spacing: 0.01em !important;
}
.contact-message:-moz-placeholder
{
	font-family: var(--font1) !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	color: var(--blue) !important;
	letter-spacing: 0.01em !important;
}
.contact-message::-moz-placeholder
{
	font-family: var(--font1) !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	color: var(--blue) !important;
	letter-spacing: 0.01em !important;
} 
.contact-message:-ms-input-placeholder
{ 
	font-family: var(--font1) !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	color: var(--blue) !important;
	letter-spacing: 0.01em !important;
}
.contact-message::input-placeholder
{
	font-family: var(--font1) !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	color: var(--blue) !important;
	letter-spacing: 0.01em !important;
}
.contact-button
{
	margin-top: 12px;
	display: block;
	position: relative;
	width: 100%;
	height: 60px;
	background-color: rgba(255,255,255,1);
	border-radius: 12px;
	border: none;
	outline: none;
	font-family: var(--font1);
	font-size: 24px;
	font-weight: 400;
	letter-spacing: 0.01em;
	color: var(--blue);
}
.contact-button:hover
{
	background-color: rgba(255,255,255,0.67);
}
.form-status
{
	font-size: 14px;
	color: rgba(255,255,255,0.67);
	margin-top: 8px;
	letter-spacing: 0.01em;
}