@font-face {
	font-family: CourierNew;
	font-display: swap;
	src: url(../fonts/CourierNew.woff2) format("woff2");
	font-weight: 400;
	font-style: normal
}

:root {
	--white: #fff;
	--gray-900: #121926;
	--gray-600: #4b5565;
	--gray-500: #697586;
	--gray-400: #9aa4b2;
	--gray-200: #e3e8ef;
	--gray-100: #eef2f6;
	--gray-50: #f8fafc;
	--brand-900: #0d1965;
	--brand-700: #263f77;
	--brand-200: #b1c2e4;
	--brand-100: #d5ddf0;
	--brand-50: #eef1f8;
	--yellow-900: #78540c;
	--yellow-700: #b88a15;
	--yellow-600: #deae22;
	--yellow-500: #f8c935;
	--yellow-100: #fff5cc;
	--error-500: #f04438;
	--green-light-700: #3b7c0f;
	--green-light-200: #d0f8ab;
	--green-light-50: #f3fee7
}

* {
	padding: 0;
	margin: 0;
	border: 0;
	-webkit-tap-highlight-color: transparent
}

*,
*::after,
*::before {
	box-sizing: border-box
}

*::after,
*::before {
	display: inline-block
}

body,
html {
	height: 100%;
	min-width: 320px
}

body {
	color: #121926;
	line-height: 1;
	font-family: Raleway;
	font-size: .875rem;
	-ms-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale
}

button,
input,
textarea {
	font-family: Raleway;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	color: inherit;
	background-color: rgba(0, 0, 0, 0)
}

input,
textarea {
	width: 100%
}

label {
	display: inline-block
}

button,
option,
select {
	cursor: pointer
}

a {
	display: inline-block;
	color: inherit;
	text-decoration: none
}

ul li {
	list-style: none
}

img {
	vertical-align: top
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: inherit;
	font-size: inherit
}

.lock body {
	overflow: hidden;
	touch-action: none;
	-ms-scroll-chaining: none;
	overscroll-behavior: none
}

.wrapper {
	min-height: 100%;
	display: flex;
	flex-direction: column;
	overflow: hidden
}

@supports (overflow:clip) {
	.wrapper {
		overflow: clip
	}
}

.wrapper>main {
	flex: 1 1 auto
}

.wrapper>* {
	min-width: 0
}

[class*=__container] {
	max-width: 75rem;
	margin: 0 auto;
	padding: 0 .9375rem
}

[class*="--gc"] {
	display: grid;
	min-width: 0;
	grid-template-columns: .9375rem 1fr minmax(auto, 73.125rem) 1fr .9375rem
}

[class*="--gc"]>* {
	min-width: 0;
	grid-column: 3/4
}

.menu {
	display: none
}

.menu__content {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	row-gap: 2rem
}

.icon-menu {
	display: none
}

.ibg {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}

.ibg--top {
	-o-object-position: top;
	object-position: top
}

.ibg--bottom {
	-o-object-position: bottom;
	object-position: bottom
}

.ibg--left {
	-o-object-position: left;
	object-position: left
}

.ibg--right {
	-o-object-position: right;
	object-position: right
}

.ibg--contain {
	-o-object-fit: contain;
	object-fit: contain
}

.container {
	max-width: 83.5rem;
	padding-left: 3.75rem;
	padding-right: 3.75rem;
	margin: 0 auto
}

.section-pt {
	padding-top: 6.25vw
}

.section-pb {
	padding-bottom: 6.25vw
}

.section-bg {
	background-color: var(--gray-50)
}

.page-title {
	padding-top: 3.75rem;
	padding-bottom: 3.75rem
}

.page-title.centred {
	text-align: center
}

.page-image {
	position: relative;
	aspect-ratio: 1440/640
}

.page-image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}

.heading-1,
h1 {
	font-weight: 700;
	font-size: 4.5rem;
	line-height: 108%;
	color: var(--white)
}

.heading-2,
h2 {
	font-weight: 700;
	font-size: 4rem;
	line-height: 125%;
	color: var(--gray-900)
}

.body-l-m-regular {
	font-family: CourierNew, sans-serif;
	font-weight: 400;
	font-size: 1.25rem;
	color: var(--gray-900)
}

.body-2xl-l-regular {
	font-weight: 400;
	font-size: 2rem;
	line-height: 125%;
	color: var(--gray-900)
}

.body-xl-l-regular {
	font-weight: 400;
	font-size: 1.5rem;
	line-height: 125%;
	color: var(--gray-900)
}

.body-l-s-regular {
	font-weight: 400;
	font-size: 1.25rem;
	line-height: 140%;
	color: var(--gray-500)
}

.body-s-semi {
	font-weight: 600;
	font-size: .875rem;
	line-height: 114%;
	color: var(--brand-900)
}

.body-s-medium {
	font-weight: 500;
	font-size: .875rem;
	line-height: 114%;
	color: var(--gray-500)
}

.body-s-regular {
	font-weight: 400;
	font-size: .875rem;
	line-height: 114%;
	color: var(--gray-900)
}

.body-l-regular {
	font-weight: 400;
	font-size: 1.25rem;
	line-height: 140%;
	color: var(--gray-900)
}

.btn {
	display: flex;
	align-items: center;
	justify-content: center;
	-webkit-column-gap: .375rem;
	-moz-column-gap: .375rem;
	column-gap: .375rem;
	border: .0625rem solid var(--brand-900);
	border-radius: 6.25rem;
	padding: .75rem 1.125rem .75rem 1.25rem;
	transition: all .5s ease
}

.btn svg {
	width: 1rem;
	height: 1rem;
	-o-object-fit: contain;
	object-fit: contain;
	transition: all .5s ease
}

.btn svg path {
	transition: all .5s ease
}

.btn-white {
	background-color: rgba(0, 0, 0, 0);
	color: var(--brand-900)
}

.btn-white svg path {
	stroke: var(--brand-900)
}

.btn-white:disabled {
	border-color: var(--gray-400);
	color: var(--gray-400)
}

.btn-white:disabled svg path {
	stroke: var(--gray-400)
}

.btn-blue {
	background-color: var(--brand-900);
	color: var(--white)
}

.btn-blue svg path {
	stroke: var(--white)
}

.btn-blue:disabled {
	background: var(--gray-100);
	color: var(--gray-400)
}

.btn-blue:disabled svg path {
	stroke: var(--gray-400)
}

.header {
	position: relative;
	z-index: 100
}

.header__body {
	position: relative;
	z-index: 99;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 1.5rem 1.25rem;
	background-color: var(--white)
}

.header__navigation {
	display: flex;
	flex-wrap: wrap;
	align-items: center
}

.header__navigation a {
	padding: .5rem 1rem;
	color: var(--gray-900)
}

.header .logo {
	position: relative;
	z-index: 101;
	flex: 0 0 5.75rem;
	width: 5.75rem;
	height: 2.75rem
}

.header .logo img {
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	object-fit: contain
}

.languages {
	display: flex;
	align-items: center;
	border: .0625rem solid var(--gray-200);
	border-radius: 6.25rem;
	padding: .125rem;
	background-color: var(--white)
}

.languages a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.75rem;
	height: 1.75rem;
	border-radius: 6.25rem;
	color: var(--gray-500)
}

.languages a.active {
	color: var(--yellow-900);
	background-color: var(--yellow-500);
	cursor: default;
	pointer-events: none
}

.footer-main__content {
	padding-top: 4rem;
	padding-bottom: 3rem;
	display: flex;
	align-items: flex-start;
	-webkit-column-gap: 4rem;
	-moz-column-gap: 4rem;
	column-gap: 4rem
}

.footer-main__leftside {
	flex: 0 0 calc(29% - 2rem);
	display: flex;
	flex-direction: column;
	row-gap: 1.5rem
}

.footer-main__columns {
	flex: 0 0 calc(71% - 2rem);
	display: flex;
	-webkit-column-gap: 2rem;
	-moz-column-gap: 2rem;
	column-gap: 2rem
}

.footer-main .navigation-column {
	flex: 0 0 calc(50% - 1rem)
}

.footer-main .logo {
	width: 8.75rem;
	height: 4.375rem
}

.footer-main .logo img {
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	object-fit: contain
}

.footer-bottom {
	background: var(--gray-50)
}

.footer-bottom__content {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-top: 1.5rem;
	padding-bottom: 1.5rem
}

.navigation-column {
	display: flex;
	flex-direction: column;
	row-gap: 1rem
}

.navigation-column ul {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	row-gap: .75rem;
	color: var(--gray-900)
}

.navigation-column ul a {
	display: flex;
	align-items: center;
	-webkit-column-gap: .5rem;
	-moz-column-gap: .5rem;
	column-gap: .5rem
}

.navigation-column ul a img,
.navigation-column ul a svg {
	flex: 0 0 1.25rem;
	width: 1.25rem;
	height: 1.25rem;
	-o-object-fit: contain;
	object-fit: contain
}

.hero {
	position: relative;
	width: 100%;
	height: calc(100vh - 5.75rem)
}

.hero__image {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%
}

.hero__image img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}

.hero__image::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .32)
}

.hero .container {
	height: 100%
}

.hero__body {
	height: 100%;
	position: relative;
	z-index: 2;
	display: flex;
	align-items: flex-end;
	padding: 9.375rem 0;
	color: var(--white)
}

.hero__body .heading-1 {
	max-width: 45rem
}

.section-top {
	display: flex;
	align-items: flex-start;
	-webkit-column-gap: .5rem;
	-moz-column-gap: .5rem;
	column-gap: .5rem
}

.section-top:not(:last-child) {
	margin-bottom: 3.75rem
}

.section-leftside {
	flex: 0 0 calc(50% - .25rem);
	position: sticky;
	top: 1.25rem
}

.section-title {
	position: relative;
	display: flex;
	align-items: center
}

.section-title::before {
	content: "";
	flex: 0 0 .875rem;
	width: .875rem;
	height: .875rem;
	background: var(--brand-900);
	margin-right: .5rem
}

.section-content {
	flex: 0 0 calc(50% - .25rem)
}

.section-content-text {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	row-gap: 2rem
}

.section-images {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	-webkit-column-gap: .5rem;
	-moz-column-gap: .5rem;
	column-gap: .5rem;
	row-gap: .5rem
}

.section-image {
	position: relative;
	aspect-ratio: 605/575;
	border-radius: 1.25rem;
	overflow: hidden
}

.section-image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}

.news__slider.swiper {
	overflow: visible
}

.news-item__image {
	position: relative;
	aspect-ratio: 1/1;
	border-radius: 1.25rem;
	overflow: hidden
}

.news-item__image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}

.news-item__content {
	padding-top: 1.25rem;
	display: flex;
	flex-direction: column;
	row-gap: .75rem
}

.custom-pagination {
	margin-top: 2.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
	-webkit-column-gap: .5rem;
	-moz-column-gap: .5rem;
	column-gap: .5rem
}

.custom-pagination .swiper-pagination-bullet {
	width: .75rem;
	height: .75rem;
	border-radius: .625rem;
	background-color: var(--gray-100);
	cursor: pointer;
	transition: all .5s ease
}

.custom-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
	width: 2rem;
	background-color: var(--brand-900)
}

.projects {
	display: flex;
	flex-direction: column;
	row-gap: 6.25vw
}

.projects-item {
	display: flex;
	align-items: stretch;
	-webkit-column-gap: .5rem;
	-moz-column-gap: .5rem;
	column-gap: .5rem
}

.projects-item__leftside {
	flex: 0 0 calc(50% - .25rem);
	padding-right: 2.5rem
}

.projects-item__image {
	position: relative;
	border-radius: 1.25rem;
	overflow: hidden;
	width: 100%;
	height: 100%
}

.projects-item__image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}

.projects-item__content {
	flex: 0 0 calc(50% - .25rem);
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	row-gap: 2rem
}

.projects-item:nth-child(2n+2) {
	flex-direction: row-reverse
}

.projects-item:nth-child(2n+2) .projects-item__leftside {
	padding-right: 0;
	padding-left: 2.5rem
}

.join-us__wrapper {
	position: relative
}

.join-us__wrapper>img {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}

.join-us__wrapper::before {
	content: "";
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	backdrop-filter: blur(8px);
	background: rgba(0, 0, 0, .32)
}

.join-us .container {
	height: 100%
}

.join-us__content {
	position: relative;
	z-index: 3;
	padding-top: 5.2083333333vw;
	padding-bottom: 5.2083333333vw;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	row-gap: 2rem;
	color: var(--white)
}

.join-us__content .body-2xl-l-regular {
	color: var(--white)
}

.our-values-spollers {
	display: flex;
	flex-direction: column;
	row-gap: 2rem
}

.our-values-spoller__title {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	-webkit-column-gap: .75rem;
	-moz-column-gap: .75rem;
	column-gap: .75rem;
	cursor: pointer
}

.our-values-spoller__title span {
	width: 2.5rem;
	height: 2.5rem;
	position: relative;
	background-color: var(--brand-900);
	border-radius: 50%
}

.our-values-spoller__title span::after,
.our-values-spoller__title span::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	background-color: var(--white);
	transition: all .5s ease
}

.our-values-spoller__title span::after {
	width: .125rem;
	height: .75rem
}

.our-values-spoller__title span::before {
	width: .75rem;
	height: .125rem
}

.our-values-spoller__title._spoller-active span::after {
	-webkit-transform: translate(-50%, -50%) rotate(90deg);
	transform: translate(-50%, -50%) rotate(90deg)
}

.our-values-spoller__body {
	padding-top: .75rem;
	display: flex;
	flex-direction: column;
	row-gap: .5rem
}

.our-team {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	row-gap: 1rem;
	-webkit-column-gap: .5rem;
	-moz-column-gap: .5rem;
	column-gap: .5rem
}

.our-team-item__image {
	position: relative;
	aspect-ratio: 298/313;
	border-radius: 1.25rem;
	overflow: hidden
}

.our-team-item__image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}

.our-team-item__content {
	padding-top: .75rem;
	display: flex;
	flex-direction: column;
	row-gap: .5rem
}

.documents {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	row-gap: 2rem
}

.document-item {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	-webkit-column-gap: .75rem;
	-moz-column-gap: .75rem;
	column-gap: .75rem
}

.document-item a {
	width: 2.5rem;
	height: 2.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background-color: var(--brand-900)
}

.document-item a img,
.document-item a svg {
	width: 1rem;
	height: 1rem;
	-o-object-fit: contain;
	object-fit: contain
}

.document-item__content {
	display: flex;
	flex-direction: column;
	row-gap: .25rem
}

.contacts-section {
	display: flex;
	flex-direction: column;
	row-gap: 2rem
}

.contacts-section-item {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	-webkit-column-gap: .75rem;
	-moz-column-gap: .75rem;
	column-gap: .75rem
}

.contacts-section-item__content {
	display: flex;
	flex-direction: column;
	row-gap: .25rem
}

.our-partners {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	row-gap: .5rem;
	-webkit-column-gap: .5rem;
	-moz-column-gap: .5rem;
	column-gap: .5rem
}

.our-partners-item {
	position: relative;
	aspect-ratio: 298/150;
	border-radius: 1.25rem;
	overflow: hidden
}

.our-partners-item img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}

.contact-us {
	display: flex;
	flex-direction: column;
	row-gap: 2rem
}

.contact-us__top {
	display: flex;
	flex-direction: column;
	row-gap: .75rem
}

.contact-us-form {
	display: flex;
	flex-direction: column;
	row-gap: 2rem;
	max-width: 25rem
}

.contact-us-form__inputs {
	display: flex;
	flex-direction: column;
	row-gap: 1.5rem
}

.input-box {
	position: relative
}

.input-box label {
	position: absolute;
	padding: 0 .25rem;
	left: 1rem;
	top: -.375rem;
	background-color: var(--white);
	color: var(--gray-500);
	transition: all .5s ease
}

.input-box.error input {
	border-color: var(--error-500)
}

.input-box.error label {
	color: var(--error-500)
}

.input-box.error .input-box-info {
	color: var(--error-500)
}

.input-box.error .input-box-info .error {
	display: block
}

.input-box.error .input-box-info .support {
	display: none
}

.input {
	border: .0625rem solid var(--gray-200);
	border-radius: .625rem;
	padding: .625rem 1rem;
	height: 3rem;
	background-color: var(--white);
	outline: 0;
	transition: all .5s ease
}

.input:focus {
	border-color: var(--brand-900)
}

.input::-webkit-input-placeholder {
	font-weight: 400;
	font-size: 1.25rem;
	line-height: 140%;
	color: var(--gray-400)
}

.input:-ms-input-placeholder {
	font-weight: 400;
	font-size: 1.25rem;
	line-height: 140%;
	color: var(--gray-400)
}

.input::-ms-input-placeholder {
	font-weight: 400;
	font-size: 1.25rem;
	line-height: 140%;
	color: var(--gray-400)
}

.input::placeholder {
	font-weight: 400;
	font-size: 1.25rem;
	line-height: 140%;
	color: var(--gray-400)
}

.input-box-info {
	display: block;
	padding-top: .375rem;
	padding-left: 1rem;
	color: var(--gray-500)
}

.input-box-info .error {
	display: none
}

.socials-qr {
	display: flex;
	flex-direction: column;
	row-gap: 2rem
}

.socials-qr__image {
	width: 15.625rem;
	height: 15.625rem
}

.socials-qr__image img {
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	object-fit: contain
}

.search-input {
	position: relative
}

.search-input svg {
	position: absolute;
	top: 50%;
	left: .75rem;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 1.5rem;
	height: 1.5rem;
	-o-object-fit: contain;
	object-fit: contain
}

.search-input input {
	padding: .625rem .75rem .625rem 2.625rem
}

.blog__body {
	display: flex;
	flex-direction: column;
	row-gap: 2.5rem
}

.blog__items {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	-webkit-column-gap: .5rem;
	-moz-column-gap: .5rem;
	column-gap: .5rem;
	row-gap: 1rem
}

.blog-item__image {
	display: block;
	position: relative;
	aspect-ratio: 604/400;
	border-radius: 1.25rem;
	overflow: hidden
}

.blog-item__image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}

.blog-item__content {
	padding-top: 1.25rem;
	display: flex;
	flex-direction: column;
	row-gap: .75rem
}

.blog-item__wrapper {
	display: flex;
	align-items: center;
	justify-content: space-between;
	-webkit-column-gap: .75rem;
	-moz-column-gap: .75rem;
	column-gap: .75rem
}

.blog-item__wrapper>a {
	white-space: nowrap;
	padding: .4375rem .75rem .4375rem 1rem
}

.filters {
	display: flex;
	align-items: center;
	-webkit-column-gap: .5rem;
	-moz-column-gap: .5rem;
	column-gap: .5rem
}

.filters button {
	display: flex;
	align-items: center;
	justify-content: center;
	border: .0625rem solid var(--yellow-700);
	border-radius: 6.25rem;
	padding: .5rem 1rem;
	color: var(--yellow-700);
	white-space: nowrap;
	transition: all .5s ease
}

.filters button.active {
	border-color: var(--yellow-500);
	background: var(--yellow-500);
	color: var(--yellow-900)
}

.projects-page__body {
	display: flex;
	flex-direction: column;
	row-gap: 2.5rem
}

.projects-page__items {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	-webkit-column-gap: .5rem;
	-moz-column-gap: .5rem;
	column-gap: .5rem;
	row-gap: 1rem
}

.projects-page-item__image {
	display: block;
	position: relative;
	aspect-ratio: 604/378;
	border-radius: 1.25rem;
	overflow: hidden
}

.projects-page-item__image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}

.projects-page-item__content {
	padding-top: 1.25rem;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	row-gap: 1.25rem
}

.projects-page-item__info {
	width: 100%;
	display: flex;
	flex-direction: column;
	row-gap: .5rem
}

.projects-page-item__wrapper {
	display: flex;
	align-items: flex-start;
	align-self: stretch;
	justify-content: space-between
}

.projects-label {
	border-radius: 6.25rem;
	padding: .25rem .625rem
}

.blue-label {
	color: var(--brand-900);
	border: .0625rem solid var(--brand-200);
	background: var(--brand-50)
}

.green-label {
	color: var(--green-light-700);
	border: 1px solid var(--green-light-200);
	background: var(--green-light-50)
}

.gray-label {
	color: var(--gray-600);
	border: .0625rem solid var(--gray-200);
	background: var(--gray-50)
}

.services__body {
	display: flex;
	flex-direction: column;
	row-gap: 2.5rem
}

.services__items {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	-webkit-column-gap: .5rem;
	-moz-column-gap: .5rem;
	column-gap: .5rem;
	row-gap: 1rem
}

.service-item__image {
	display: block;
	position: relative;
	aspect-ratio: 604/378;
	border-radius: 1.25rem;
	overflow: hidden
}

.service-item__image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}

.service-item__content {
	padding-top: 1.25rem;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	row-gap: .5rem
}

.members__body {
	display: flex;
	flex-direction: column;
	row-gap: 2.5rem
}

.members__top {
	display: flex;
	-webkit-column-gap: 1.5rem;
	-moz-column-gap: 1.5rem;
	column-gap: 1.5rem
}

.members__top .search-input {
	min-width: 20rem
}

.members__items {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	-webkit-column-gap: .5rem;
	-moz-column-gap: .5rem;
	column-gap: .5rem;
	row-gap: 1rem
}

.members__dropdown {
	min-width: 18.75rem
}

.members-item__image {
	display: block;
	position: relative;
	aspect-ratio: 604/400;
	border-radius: 1.25rem;
	overflow: hidden
}

.members-item__image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}

.members-item__content {
	padding-top: 1.25rem;
	display: flex;
	flex-direction: column;
	row-gap: .5rem
}

.members-map {
	position: relative;
	aspect-ratio: 1216/810
}

.members-map img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	object-fit: contain
}

.zoom-buttons {
	display: none
}

.custom-drop-down {
	position: relative
}

.custom-drop-down .dropdown-list button.selected {
	background-color: var(--gray-100)
}

.custom-drop-down .dropdown-list button.selected::after {
	opacity: 1;
	visibility: visible
}

.custom-drop-down>button {
	display: flex;
	align-items: center;
	justify-content: space-between;
	-webkit-column-gap: .375rem;
	-moz-column-gap: .375rem;
	column-gap: .375rem;
	width: 100%;
	border: .0625rem solid var(--gray-200);
	border-radius: .625rem;
	padding: .625rem 1rem;
	height: 3rem;
	background-color: var(--white);
	transition: all .5s ease
}

.custom-drop-down>button span {
	width: 100%;
	text-align: left;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	overflow: hidden
}

.custom-drop-down>button img,
.custom-drop-down>button svg {
	flex: 0 0 1.25rem;
	width: 1.25rem;
	height: 1.25rem;
	-o-object-fit: contain;
	object-fit: contain;
	transition: all .5s ease
}

.custom-drop-down ul {
	position: absolute;
	z-index: 5;
	top: calc(100% + .5rem);
	left: 0;
	width: 100%;
	max-height: 16rem;
	overflow-y: auto;
	padding: .25rem;
	display: flex;
	flex-direction: column;
	row-gap: .25rem;
	border: .0625rem solid var(--gray-50);
	border-radius: .625rem;
	box-shadow: 0 3px 3px -2px rgba(10, 13, 18, .04), 0 8px 8px -4px rgba(10, 13, 18, .03), 0 20px 24px -4px rgba(10, 13, 18, .08);
	background: var(--white);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	-webkit-transform: translateY(-5px);
	transform: translateY(-5px);
	transition: all .5s ease
}

.custom-drop-down ul a,
.custom-drop-down ul button,
.custom-drop-down ul span {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	text-align: left;
	padding: .5rem .75rem;
	border-radius: .5rem;
	background: var(--white);
	transition: all .5s ease
}

.custom-drop-down ul a::after,
.custom-drop-down ul button::after,
.custom-drop-down ul span::after {
	content: "";
	flex: 0 0 1.25rem;
	width: 1.25rem;
	height: 1.25rem;
	background-image: url("data:image/svg+xml,%3Csvg width=%2720%27 height=%2720%27 viewBox=%270 0 20 20%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M2.29163 12.5781L7.49996 16.875L17.7083 3.125%27 stroke=%27%230D1965%27 stroke-width=%271.5%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 /%3E%3C/svg%3E");
	background-size: 1.25rem 1.25rem;
	background-repeat: no-repeat;
	background-position: center;
	opacity: 0;
	visibility: hidden;
	transition: all .5s ease;
	pointer-events: none
}

.custom-drop-down.active>button img,
.custom-drop-down.active>button svg {
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg)
}

.custom-drop-down.active ul {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	-webkit-transform: translateY(0);
	transform: translateY(0)
}

.project__content {
	max-width: 45rem;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	row-gap: 2.5rem
}

.project__bottom {
	display: flex;
	flex-direction: column;
	row-gap: 2.5rem
}

.project__bottom .project-info {
	border-radius: 1.25rem;
	padding: 1.5rem;
	background: var(--gray-50)
}

.project__label {
	padding-top: 1.5rem;
	border-top: .0625rem solid var(--brand-200);
	display: flex;
	justify-content: flex-start
}

.info-text>*:not(:last-child) {
	display: block;
	margin-bottom: 1.25rem
}

.info-text h2 {
	padding-top: 1.25rem;
	font-weight: 600;
	font-size: 2rem;
	line-height: 125%;
	color: #181d27
}

.info-text b,
.info-text strong {
	font-weight: 600;
	font-size: 1.5rem;
	line-height: 125%;
	color: var(--gray-900)
}

.info-text ol,
.info-text p,
.info-text ul {
	font-weight: 400;
	font-size: 1.25rem;
	line-height: 140%;
	color: var(--gray-900)
}

.info-text ol,
.info-text ul {
	padding-left: 1.875rem
}

.info-text em {
	font-weight: 400;
	font-size: 1.5rem;
	line-height: 125%;
	color: var(--gray-900);
	font-style: normal
}

.info-text span {
	font-weight: 400;
	font-size: .875rem;
	line-height: 114%;
	color: var(--gray-500)
}

.info-text .vertical-image {
	width: 100%;
	height: 60rem;
	-o-object-fit: cover;
	object-fit: cover;
	border-radius: .75rem;
	overflow: hidden
}

.info-text .horizontal-image {
	width: 100%;
	height: 33.25rem;
	-o-object-fit: cover;
	object-fit: cover;
	border-radius: .75rem;
	overflow: hidden
}

.swiper {
	overflow: hidden
}

.swiper-initialized {
	touch-action: pan-y
}

.swiper-wrapper {
	width: 100%;
	height: 100%;
	box-sizing: content-box;
	display: flex;
	position: relative
}

.swiper-vertical .swiper-wrapper {
	flex-direction: column
}

.swiper-autoheight .swiper-wrapper {
	align-items: flex-start
}

.swiper-initialized .swiper-slide {
	flex-shrink: 0
}

.swiper-android .swiper-slide,
.swiper-android .swiper-wrapper {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0)
}

.swiper-button-lock {
	display: none !important
}

@media (max-width:991.98px) {
	.section-content[data-aos=fade-left] {
		-webkit-transform: translateX(-100px) !important;
		transform: translateX(-100px) !important
	}

	.section-content[data-aos=fade-left].aos-animate {
		-webkit-transform: translateX(0) !important;
		transform: translateX(0) !important
	}
}

@media (max-width:74.99875em) {
	.container {
		padding-left: 2rem;
		padding-right: 2rem
	}

	.section-pt {
		padding-top: 4rem
	}

	.section-pb {
		padding-bottom: 4rem
	}

	.page-title {
		padding-top: 2rem;
		padding-bottom: 2rem
	}

	.heading-1,
	h1 {
		font-weight: 600;
		font-size: 2rem;
		line-height: 125%
	}

	.heading-2,
	h2 {
		font-weight: 600;
		font-size: 2rem
	}

	.body-l-m-regular {
		line-height: 125%;
		color: var(--gray-900)
	}

	.body-2xl-l-regular {
		font-size: 1.25rem;
		line-height: 140%
	}

	.body-xl-l-regular {
		font-size: 1.25rem;
		line-height: 140%
	}

	.body-l-s-regular {
		font-size: .875rem;
		line-height: 114%
	}

	.header__navigation a {
		padding: .25rem .5rem
	}

	.footer-main__content {
		padding-top: 2.5rem;
		padding-bottom: 2.5rem;
		flex-direction: column;
		align-items: stretch;
		row-gap: 2rem
	}

	.footer-main__leftside {
		flex: 0 0 100%;
		flex-direction: row;
		align-items: center;
		-webkit-column-gap: 1.5rem;
		-moz-column-gap: 1.5rem;
		column-gap: 1.5rem
	}

	.footer-main__columns {
		flex: 0 0 100%
	}

	.projects {
		row-gap: 4rem
	}

	.info-text h2 {
		font-size: 1.5rem
	}

	.info-text ol,
	.info-text p,
	.info-text ul {
		font-size: .875rem;
		line-height: 114%
	}

	.info-text .vertical-image {
		height: 28.625rem
	}

	.info-text .horizontal-image {
		height: 15.625rem
	}
}

@media (max-width:61.99875em) {
	.menu__body {
		position: fixed;
		z-index: 98;
		width: 100%;
		height: 100vh;
		left: 0;
		top: 0;
		overflow: auto;
		padding: 6rem 1rem 2.5rem 1rem;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		row-gap: 2rem;
		background-color: var(--white);
		opacity: 0;
		visibility: hidden;
		-webkit-transform: translateY(-100%);
		transform: translateY(-100%);
		pointer-events: none;
		transition: all .5s ease
	}

	.menu-open .menu__body {
		opacity: 1;
		visibility: visible;
		-webkit-transform: translateY(0);
		transform: translateY(0);
		pointer-events: auto
	}

	.menu {
		display: block
	}

	.icon-menu {
		display: block;
		position: relative;
		width: 1.625rem;
		height: 1.125rem;
		z-index: 5
	}

	.icon-menu span,
	.icon-menu::after,
	.icon-menu::before {
		content: "";
		transition: all .3s ease 0s;
		right: 0;
		position: absolute;
		width: 100%;
		height: .125rem;
		border-radius: 6.25rem;
		overflow: hidden;
		background-color: var(--brand-900)
	}

	.icon-menu::before {
		top: 0
	}

	.icon-menu::after {
		bottom: 0
	}

	.icon-menu span {
		top: calc(50% - .0625rem)
	}

	.menu-open .icon-menu span {
		width: 0
	}

	.menu-open .icon-menu::before {
		top: calc(50% - .0625rem);
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg)
	}

	.menu-open .icon-menu::after {
		bottom: calc(50% - .0625rem);
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg)
	}

	.container {
		padding-left: 1rem;
		padding-right: 1rem
	}

	.page-image {
		aspect-ratio: 375/250
	}

	.header__body {
		padding: .75rem 1rem
	}

	.header__body>.languages {
		display: none
	}

	.header__navigation {
		display: none
	}

	.header .logo {
		flex: 0 0 5rem;
		width: 5rem;
		height: 2.5rem
	}

	.footer {
		border-top: .0625rem solid var(--gray-200)
	}

	.hero {
		aspect-ratio: 375/216;
		height: auto
	}

	.hero__body {
		padding: 1.25rem 0
	}

	.section-top {
		flex-direction: column;
		align-items: stretch;
		row-gap: .75rem
	}

	.section-top:not(:last-child) {
		margin-bottom: 2.5rem
	}

	.section-leftside {
		flex: 0 0 100%;
		position: relative;
		top: 0
	}

	.section-content {
		flex: 0 0 100%
	}

	.section-content-text {
		row-gap: 1rem
	}

	.projects-item__leftside {
		padding-right: 1.25rem
	}

	.projects-item:nth-child(2n+2) .projects-item__leftside {
		padding-left: 1.25rem
	}

	.join-us__content {
		padding-top: 2rem;
		padding-bottom: 2rem
	}

	.our-values-spollers {
		row-gap: 1.5rem
	}

	.our-values-spoller__body {
		padding-top: .25rem
	}

	.our-team {
		overflow-x: auto;
		overflow-y: hidden;
		display: flex;
		width: calc(100% + 2rem);
		padding-left: 1rem;
		padding-right: 1rem;
		margin-left: -1rem
	}

	.our-team::-webkit-scrollbar {
		display: none
	}

	.our-team-item {
		flex: 0 0 40%
	}

	.documents {
		row-gap: 1.5rem
	}

	.contacts-section {
		row-gap: 1.5rem
	}

	.our-partners {
		overflow-x: auto;
		overflow-y: hidden;
		display: flex;
		width: calc(100% + 2rem);
		padding-left: 1rem;
		padding-right: 1rem;
		margin-left: -1rem
	}

	.our-partners::-webkit-scrollbar {
		display: none
	}

	.our-partners-item {
		flex: 0 0 40%
	}

	.contact-us {
		row-gap: 1.5rem
	}

	.contact-us__top {
		row-gap: .5rem
	}

	.contact-us-form {
		max-width: 100%
	}

	.filters {
		overflow-x: auto;
		overflow-y: hidden;
		display: flex;
		width: calc(100% + 2rem);
		padding-left: 1rem;
		padding-right: 1rem;
		margin-left: -1rem
	}

	.filters::-webkit-scrollbar {
		display: none
	}

	.projects-page-item__info {
		row-gap: .375rem
	}

	.service-item__content {
		padding-top: .5rem;
		row-gap: .375rem
	}

	.members-item__content {
		padding-top: .5rem
	}

	.zoom-buttons {
		position: absolute;
		bottom: 0;
		right: 0;
		display: flex;
		flex-direction: column;
		row-gap: .75rem
	}

	.zoom-buttons button {
		width: 2.5rem;
		height: 2.5rem;
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 50%;
		background-color: var(--brand-900)
	}

	.zoom-buttons button svg {
		width: 1rem;
		height: 1rem;
		-o-object-fit: contain;
		object-fit: contain
	}
}

@media (max-width:61.99875em)and (any-hover:none) {
	.icon-menu {
		cursor: default
	}
}

@media (max-width:47.99875em) {
	.page-title.centred {
		text-align: left
	}

	.footer-main__columns {
		flex-direction: column;
		row-gap: 2rem
	}

	.footer-main .navigation-column {
		flex: 0 0 100%
	}

	.footer-main .logo {
		flex: 0 0 5rem;
		width: 5rem;
		height: 2.5rem
	}

	.footer-bottom__content {
		flex-direction: column;
		row-gap: .75rem
	}

	.projects {
		display: flex;
		flex-direction: row;
		-webkit-column-gap: .5rem;
		-moz-column-gap: .5rem;
		column-gap: .5rem;
		width: calc(100% + 2rem);
		margin-left: -1rem;
		padding-left: 1rem;
		padding-right: 1rem;
		overflow-x: auto;
		overflow-y: hidden
	}

	.projects::-webkit-scrollbar {
		display: none
	}

	.projects-item__leftside {
		flex: 0 0 auto;
		align-self: stretch;
		padding-right: 0
	}

	.projects-item__image {
		aspect-ratio: 320/254
	}

	.projects-item__content {
		flex: 0 0 auto;
		padding-top: 1rem;
		row-gap: .75rem
	}

	.projects-item__content .body-2xl-l-regular {
		display: -webkit-box;
		-webkit-line-clamp: 3;
		-webkit-box-orient: vertical;
		overflow: hidden
	}

	.projects-item__content .btn {
		margin-top: .75rem
	}

	.projects-item__content .section-title::before {
		display: none
	}

	.projects-item:nth-child(2n+2) .projects-item__leftside {
		padding-left: 0
	}

	.projects-item {
		flex: 0 0 100%;
		flex-direction: column;
		align-items: flex-start
	}

	.projects-item:nth-child(2n+2) {
		flex-direction: column
	}

	.our-team-item {
		flex: 0 0 60%
	}

	.contacts-section-item {
		flex-direction: column;
		row-gap: 1.25rem
	}

	.our-partners-item {
		flex: 0 0 60%
	}

	.blog__items {
		grid-template-columns: repeat(1, 1fr);
		row-gap: 2rem
	}

	.projects-page__items {
		grid-template-columns: repeat(1, 1fr);
		row-gap: 2rem
	}

	.services__items {
		grid-template-columns: repeat(1, 1fr);
		row-gap: 2rem
	}

	.members__top {
		flex-direction: column;
		row-gap: 1rem
	}

	.members__top .search-input {
		min-width: 100%;
		width: 100%
	}

	.members__items {
		grid-template-columns: repeat(1, 1fr);
		row-gap: 2rem
	}

	.members__dropdown {
		min-width: 100%;
		width: 100%
	}
}

@media (max-width:29.99875em) {
	.section-images {
		grid-template-columns: repeat(1, 1fr)
	}

	.section-image {
		aspect-ratio: 343/250
	}

	.projects-item {
		flex: 0 0 92%
	}

	.our-team-item {
		flex: 0 0 92%
	}

	.our-partners-item {
		flex: 0 0 92%
	}

	.socials-qr__image {
		width: 100%;
		height: 100%
	}

	.projects-page-item__wrapper {
		flex-direction: column-reverse;
		row-gap: .75rem
	}
}

@media (any-hover:hover) {
	.btn-white:hover {
		background-color: var(--brand-100)
	}

	.btn-blue:hover {
		background-color: var(--brand-700);
		box-shadow: 0 3px 3px -2px rgba(0, 18, 179, .04), 0 8px 8px -4px rgba(0, 18, 179, .03), 0 20px 24px -4px rgba(0, 18, 179, .08)
	}

	.header__navigation a:hover {
		text-decoration: underline
	}

	.footer-bottom__content a:hover {
		text-decoration: underline
	}

	.navigation-column ul a:hover {
		text-decoration: underline
	}

	.join-us__content .btn-blue:hover {
		background-color: var(--gray-50)
	}

	.blog-item__content>a:hover {
		text-decoration: underline
	}

	.blog-item__wrapper>a:hover svg {
		-webkit-transform: translate(0);
		transform: translate(0)
	}

	.filters button.active:hover {
		border-color: var(--yellow-600);
		background: var(--yellow-600)
	}

	.filters button:hover {
		background: var(--yellow-100)
	}

	.service-item__content a:hover {
		text-decoration: underline
	}

	.members-item__content>a:hover {
		text-decoration: underline
	}
}