:root {
	--page-width: 1280px;
	--gutter: 80px;
	--gutter-tablet: 40px;
	--gutter-mobile: 20px;
	--bleed: max(0px, (100vw - var(--page-width)) / 2);
	--edge: calc(var(--gutter) + var(--bleed));
	--content-width: calc(var(--page-width) - (var(--gutter) * 2));
	--primary-color: #1D6D9D;
	--secondary-color: #555555;
	--tertiary-color: #ffffff;
	--text-color: #555555;
	--font-family: 'Roboto', sans-serif;
	--font-family-secondary: 'Montserrat', sans-serif;
	--wave-duration: 2.4s;
	--wave-easing: cubic-bezier(0.22, 0.61, 0.36, 1);
	--wave-stagger: 0.26;
	--why-overlay: linear-gradient(
		181deg,
		rgba(15, 55, 79, 0.88) 1.2%,
		rgba(15, 55, 79, 0.74) 47.33%,
		rgba(15, 55, 79, 0.88) 99.56%
	);
	--bullets: linear-gradient(
		90deg,
		#1D6D9D 0.09%,
		rgba(21, 80, 115, 0.46) 76.37%,
		rgba(15, 55, 79, 0) 99.91%
	);
}

body {
	color: var(--text-color);
	font-family: var(--font-family);
}

.site-header,
#primary,
.site-footer__inner {
	width: 100%;
	max-width: none;
	margin-inline: auto;
	padding-inline: var(--edge);
	box-sizing: border-box;
}

.entry-content>.wpb-content-wrapper>.vc_row[data-vc-full-width="true"] {
	width: 100vw !important;
	max-width: 100vw;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	padding-left: var(--edge) !important;
	padding-right: var(--edge) !important;
	box-sizing: border-box;
}

#clients_carousel {
	background-color: var(--tertiary-color);
	padding-block: 40px;

	> .wpb_column > .vc_column-inner {
		padding: 0;
	}

	.clients-carousel {
		overflow: hidden;
	}

	.clients-carousel.clients-marquee-ready .clients-marquee-track {
		display: flex;
		width: max-content;
		will-change: transform;
		animation: clients-marquee 36s linear infinite;
	}

	.clients-carousel.clients-marquee-ready .clients-marquee-group {
		display: flex;
		flex: 0 0 max-content;
		gap: 48px;
		padding-right: 48px;
		box-sizing: border-box;
	}

	.clients-carousel .swiper-slide {
		width: auto;
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.clients-carousel .swiper-slide img {
		display: block;
		width: auto;
		max-height: 50px;
		object-fit: contain;
	}
}

@keyframes clients-marquee {
	from {
		transform: translate3d(0, 0, 0);
	}
	to {
		transform: translate3d(-50%, 0, 0);
	}
}

@media (prefers-reduced-motion: reduce) {
	#clients_carousel .clients-marquee-track {
		animation-play-state: paused;
	}
}

#location {
	position: relative;
	isolation: isolate;
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 32px 20px;
	padding-block: 80px;
	padding-inline: var(--edge);
	box-sizing: border-box;
	background-image: url('../../uploads/2026/07/Group-24.jpg');
	background-size: cover !important;
	background-position: center !important;
	background-repeat: no-repeat !important;

	&.vc_row-fluid::before,
	&.vc_row-fluid::after {
		display: none !important;
	}

	&::before {
		content: '';
		position: absolute;
		inset: 0;
		z-index: 0;
		pointer-events: none;
		background: linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.92) 0%,
			rgba(244, 249, 252, 0.88) 100%
		);
	}

	> .wpb_column {
		position: relative;
		z-index: 1;
		width: 100% !important;
		max-width: none !important;
		float: none !important;
		flex: none !important;
		padding: 0;
		min-width: 0;
	}

	> .wpb_column:nth-child(1) {
		grid-column: 1 / -1;

		> .vc_column-inner {
			padding: 0;
		}

		.__title {
			margin-bottom: 12px !important;

			* {
				color: var(--primary-color);
				font-family: var(--font-family-secondary);
				font-size: 34px;
				font-weight: 700;
				line-height: 36px;
				letter-spacing: -0.85px;
			}
		}

		.__text {
			margin-bottom: 0 !important;
			max-width: 720px;

			* {
				color: var(--text-color);
				font-size: 16px;
				font-weight: 400;
				line-height: 26px;
			}
		}
	}

	> .wpb_column:nth-child(2) {
		grid-column: 1 / -1;

		> .vc_column-inner {
			padding: 0;
		}

		.vc_inner.vc_row-fluid {
			display: grid !important;
			grid-template-columns: repeat(4, minmax(0, 1fr));
			gap: 0;
			margin: 0;

			&::before,
			&::after {
				display: none;
			}

			> .wpb_column {
				width: 100% !important;
				max-width: none !important;
				float: none !important;
				flex: none !important;
				padding: 0;
				min-width: 0;

				> .vc_column-inner {
					height: 100%;
					padding: 0 28px;
					border-right: 1px solid rgba(29, 109, 157, 0.22);
					box-sizing: border-box;
				}

				&:first-child > .vc_column-inner {
					padding-left: 0;
				}

				&:last-child > .vc_column-inner {
					padding-right: 0;
					border-right: 0;
				}
			}
		}

		.wpb_wrapper {
			display: flex;
			align-items: flex-start;
			gap: 16px;
			height: 100%;
		}

		.wpb_single_image.animate-icon {
			margin: 0;
			flex-shrink: 0;

			.vc_single_image-wrapper {
				display: flex;
				align-items: center;
				justify-content: center;
				width: 48px;
				height: 48px;
				background: var(--primary-color);
				border-radius: 50%;

				&::before {
					background: rgba(29, 109, 157, 0.2);
				}

				&::after {
					background: rgba(29, 109, 157, 0.1);
				}
			}

			img {
				width: 24px;
				height: 24px;
			}
		}

		.__text {
			margin: 0 !important;
			flex: 1;
			min-width: 0;

			* {
				color: var(--text-color);
				font-size: 15px;
				font-weight: 400;
				line-height: 22px;
			}
		}
	}

	> .wpb_column:nth-child(3),
	> .wpb_column:nth-child(4) {
		min-width: 0;

		> .vc_column-inner {
			padding: 0;
			height: 100%;
		}

		> .vc_column-inner > .wpb_wrapper {
			display: grid;
			grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr);
			align-items: stretch;
			min-height: 232px;
			background: var(--tertiary-color);
			border-radius: 10px;
			box-shadow: 0 4px 30px rgba(15, 55, 79, 0.12);
			overflow: hidden;
		}

		.wpb_gmaps_widget,
		.wpb_raw_code {
			margin: 0;
			min-width: 0;
			min-height: 100%;

			.wpb_wrapper,
			.wpb_map_wraper {
				height: 100%;
				min-height: 232px;
			}

			iframe {
				display: block;
				width: 100%;
				height: 100% !important;
				min-height: 232px;
				border: 0;
			}
		}

		.wpb_gmaps_widget + .wpb_text_column,
		.wpb_raw_code + .wpb_text_column {
			margin: 0;
			padding: 24px 28px;
			display: flex;
			flex-direction: column;
			justify-content: center;

			p {
				margin: 0 0 18px;

				strong {
					color: var(--primary-color);
					font-family: var(--font-family-secondary);
					font-size: 20px;
					font-weight: 700;
					line-height: 1.2;
				}
			}

			ul {
				display: flex;
				flex-direction: column;
				gap: 14px;
				margin: 0;
				padding: 0;
				list-style: none;
			}

			li {
				display: flex;
				align-items: flex-start;
				gap: 12px;
				color: var(--text-color);
				font-size: 15px;
				line-height: 22px;

				&::before {
					flex-shrink: 0;
					font-family: 'Material Symbols Outlined';
					font-size: 20px;
					line-height: 1;
					color: var(--primary-color);
				}

				&:nth-child(1)::before {
					content: 'mail';
				}

				&:nth-child(2)::before {
					content: 'location_on';
				}

				&:nth-child(3)::before {
					content: 'call';
				}

				a,
				a:visited {
					color: inherit;
					text-decoration: none;
				}
			}
		}
	}

	> .wpb_column:nth-child(3) {
		order: 2;
	}

	> .wpb_column:nth-child(4) {
		order: 1;
	}
}

#our-solutions {
	padding-block: 80px;
	padding-inline: var(--edge);
	box-sizing: border-box;

	> .wpb_column > .vc_column-inner {
		padding: 0;
	}

	.vc_inner.vc_row-fluid {
		display: grid !important;
		grid-template-columns: repeat(6, minmax(0, 1fr));
		gap: 24px;
		margin: 0;

		&::before,
		&::after {
			display: none;
		}

		> .wpb_column {
			width: 100% !important;
			max-width: none !important;
			float: none;
			flex: none !important;
			padding: 0;
			grid-column: auto;
			grid-row: auto;

			&:nth-child(1),
			&:nth-child(2),
			&:nth-child(3) {
				grid-column: span 2;
			}

			&:nth-child(4) {
				grid-column: 1 / span 3;
			}

			&:nth-child(5) {
				grid-column: 4 / span 3;
			}

			&:nth-child(4) > .vc_column-inner,
			&:nth-child(5) > .vc_column-inner {
				min-height: 250px;
			}

			> .vc_column-inner {
				position: relative;
				display: flex;
				flex-direction: column;
				justify-content: flex-end;
				min-height: 340px;
				height: 100%;
				padding: 0 !important;
				border-radius: 10px;
				overflow: hidden;
				background-size: cover !important;
				background-position: center !important;
				isolation: isolate;
				box-shadow: 0 12px 28px rgba(15, 55, 79, 0.12);
				transition: transform 0.3s ease, box-shadow 0.3s ease;

				&:hover {
					transform: translateY(-6px);
					box-shadow: 0 18px 36px rgba(15, 55, 79, 0.2);
				}
			}

			> .vc_column-inner > .wpb_wrapper {
				position: relative;
				z-index: 2;
				width: 100%;
				padding: 18px 20px 18px;
				box-sizing: border-box;

				&::before {
					content: '';
					position: absolute;
					left: 0;
					right: 0;
					bottom: 0;
					top: -55px;
					z-index: -1;
					border-radius: 0 0 10px 10px;
					background: linear-gradient(
						180deg,
						rgba(15, 55, 79, 0) 0%,
						rgba(8, 26, 40, 0.22) 36%,
						rgba(8, 26, 40, 0.92) 100%
					);
				}
			}

			.wpb_text_column,
			.wpb_text_column > .wpb_wrapper {
				position: static;
				background: none !important;
				background-image: none !important;
				backdrop-filter: none !important;
				-webkit-backdrop-filter: none !important;
				border-radius: 0;
				padding: 0;
			}

			.wpb_text_column.__title,
			.wpb_text_column.__text {
				margin-bottom: 0 !important;
			}

			.__title {
				* {
					font-family: var(--font-family);
					font-size: 21px;
					font-weight: 900;
					line-height: 1.25;
					color: var(--tertiary-color);
					letter-spacing: 0;
				}
			}

			.__text {
				max-height: 0;
				opacity: 0;
				overflow: hidden;
				margin-top: 0;
				transition: max-height 0.35s ease, opacity 0.25s ease, margin-top 0.25s ease;

				* {
					font-family: var(--font-family);
					font-size: 16px;
					font-weight: 400;
					line-height: 24px;
					color: var(--tertiary-color);
				}
			}

			&:hover .__text,
			&:focus-within .__text {
				max-height: 12em;
				opacity: 1;
				margin-top: 10px;
			}

		}
	}
}

.section {
	position: relative;
	isolation: isolate;
	display: grid !important;
	grid-template-columns: minmax(0, 1fr);
	grid-template-areas:
		'clients'
		'bottom';
	row-gap: 0;
	padding-block: 0;
	padding-inline: var(--edge);
	box-sizing: border-box;
	overflow: visible;
	background-color: #0F374F;
	background-size: cover !important;
	background-position: center bottom !important;
	background-repeat: no-repeat !important;

	/* ponytail: WPBakery clearfix uses ::before/::after — hijack ::before as overlay, kill only ::after */
	&.vc_row-fluid::after {
		display: none !important;
	}

	&.vc_row-fluid::before {
		content: '' !important;
		display: block !important;
		position: absolute;
		inset: 0;
		left: 50%;
		width: 100vw;
		height: 100%;
		transform: translateX(-50%);
		z-index: 0;
		pointer-events: none;
		background: linear-gradient(
			180deg,
			rgba(15, 55, 79, 0.97) 0%,
			rgba(15, 55, 79, 0.94) 46.9%,
			rgba(15, 55, 79, 0.97) 100%
		);
	}

	> .wpb_column {
		position: relative;
		z-index: 1;
		width: 100% !important;
		max-width: none !important;
		float: none !important;
		flex: none !important;
		padding: 0;
		min-width: 0;

		> .vc_column-inner {
			padding: 0;
		}
	}

	> .wpb_column:nth-child(1) {
		grid-area: clients;
		padding-top: 65px;
		padding-bottom: 64px;

		.__title {
			margin-bottom: 15px !important;

			> .wpb_wrapper {
				position: relative;
				padding-left: 50px;

				&::before,
				&::after {
					content: '';
					position: absolute;
					top: 7px;
					left: 0;
					width: 40px;
					height: 40px;
					background-repeat: no-repeat;
					background-position: center;
					background-size: contain;
					pointer-events: none;
					transform-origin: center center;
				}

				&::before {
					background-image: url('../assets/img/values-pulse-core.svg');
					z-index: 2;
				}

				&::after {
					background-image: url('../assets/img/values-pulse-waves.svg');
					z-index: 0;
					--icon-wave-from: calc(6 / 14);
					animation: animate-icon-wave-scale var(--wave-duration) var(--wave-easing) infinite;
				}
			}

			* {
				color: var(--tertiary-color);
				font-size: 39px;
				font-weight: 700;
				line-height: 48px;
			}
		}

		.__text {
			margin-bottom: 32px !important;

			* {
				color: var(--tertiary-color);
				font-size: 16px;
				font-weight: 400;
				line-height: 26px;
			}
		}

		.vc_inner.vc_row-fluid {
			display: grid !important;
			grid-template-columns: minmax(0, 1fr);
			gap: 0;
			margin: 0;
			justify-items: center;

			&::before,
			&::after {
				display: none;
			}

			> .wpb_column {
				width: 100% !important;
				max-width: none !important;
				float: none !important;
				flex: none !important;
				padding: 0;
			}
		}

		.__list {
			margin-bottom: 0 !important;

			ul {
				display: grid;
				grid-template-columns: repeat(2, minmax(0, 1fr));
				gap: 8px;
				margin: 0;
				padding: 0;
				list-style: none;
			}

			li {
				display: block;
				padding: 12px 16px;
				border-radius: 10px;
				background: var(--bullets);
				color: var(--tertiary-color);
				font-size: 16px;
				line-height: 24px;
				font-weight: 400;
				text-align: center;
			}
		}

		.wpb_single_image {
			margin: 0 auto !important;
			text-align: center !important;
			width: 100%;

			.vc_figure,
			.vc_single_image-wrapper {
				display: flex !important;
				justify-content: center;
				margin: 0 auto;
			}

			img {
				display: block;
				width: auto;
				max-width: 100%;
				height: 403px;
				object-fit: contain;
				margin-inline: auto;
			}
		}
	}

	> .wpb_column:nth-child(2) {
		grid-area: bottom;
		padding: 0;

		> .vc_column-inner {
			padding: 0 !important;
		}
	}

	.promotional-banner {
		position: relative;
		isolation: isolate;
		margin: 0 !important;
		padding-inline: 0;
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw) !important;
		padding-left: var(--edge);
		padding-right: var(--edge);
		background:
			linear-gradient(
				180deg,
				rgba(255, 255, 255, 0) 0%,
				rgba(255, 255, 255, 0.04) 38%,
				rgba(255, 255, 255, 0.06) 58%,
				rgba(0, 0, 0, 0.03) 78%,
				rgba(0, 0, 0, 0.14) 100%
			),
			rgba(255, 255, 255, 0.04);
		backdrop-filter: blur(32px) saturate(0.42) brightness(1.08);
		-webkit-backdrop-filter: blur(32px) saturate(0.42) brightness(1.08);
		background-color: #0f374fc4;

		> .wpb_column > .vc_column-inner {
			position: relative;
			z-index: 1;
		}
	}

	.__dark {
		position: relative;
		isolation: isolate;
		display: grid !important;
		grid-template-columns: minmax(0, 1fr);
		margin: 0 !important;
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw) !important;
		box-sizing: border-box;
		padding: 80px var(--edge);
		background: rgba(0, 0, 0, 0.9);

		&::before,
		&::after {
			display: none !important;
		}

		&.vc_row-fluid::after {
			display: none !important;
		}

		> .wpb_column {
			position: relative;
			z-index: 2;
			width: 100% !important;
			max-width: none !important;
			float: none !important;
			flex: none !important;
			padding: 0 !important;
			min-width: 0;
		}

		> .wpb_column > .vc_column-inner {
			padding: 0;
		}

		.__title {
			margin-bottom: 15px !important;

			> .wpb_wrapper {
				position: relative;
				padding-left: 50px;

				&::before,
				&::after {
					content: '';
					position: absolute;
					top: 7px;
					left: 0;
					width: 40px;
					height: 40px;
					background-repeat: no-repeat;
					background-position: center;
					background-size: contain;
					pointer-events: none;
					transform-origin: center center;
				}

				&::before {
					background-image: url('../assets/img/values-pulse-core.svg');
					z-index: 2;
				}

				&::after {
					background-image: url('../assets/img/values-pulse-waves.svg');
					z-index: 0;
					--icon-wave-from: calc(6 / 14);
					animation: animate-icon-wave-scale var(--wave-duration) var(--wave-easing) infinite;
				}
			}

			* {
				color: var(--tertiary-color);
				font-size: 39px;
				font-weight: 700;
				line-height: 48px;
			}
		}

		.__text {
			margin-bottom: 0 !important;
			max-width: 900px;

			* {
				color: var(--tertiary-color);
				font-size: 16px;
				font-weight: 400;
				line-height: 26px;
			}
		}
	}
}

.__title {
	* {
		font-family: var(--font-family-secondary);
		color: var(--primary-color);
		font-size: 34px;
		font-weight: 700;
		line-height: 36px;
		letter-spacing: -0.85px;
		margin: 0;
	}
}

.__text {
	* {
		color: var(--text-color);
		font-size: 16px;
		font-weight: 400;
		line-height: 26px;
		margin: 0;
	}

	strong {
		font-weight: 700;
		color: var(--secondary-color);
	}
}

.__list ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 8px 0;

	li {
		display: inline-flex;
		align-items: center;
		gap: 16px;
		font-size: 16px;
		line-height: 20px;
	}
}


.primary_btn,
.secondary_btn {
	display: inline-flex;
	align-items: center;
	padding: 12px 47px;
	border: 0;
	border-radius: 5px;
	font-family: var(--font-family);
	font-weight: 700;
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
	transition: filter 0.2s ease;
	color: var(--tertiary-color);

	&:hover {
		background: #42A3DC;
		color: var(--tertiary-color);
	}
}

.primary_btn,
.primary_btn:visited {
	background-color: var(--primary-color);
	color: var(--tertiary-color);
}

.secondary_btn,
.secondary_btn:visited {
	background-color: var(--secondary-color);
}

/* FOUC para sliders (módulo swiper) */
.swiper:not(.swiper-initialized) {
	visibility: hidden;
}

.animate-icon {
	.vc_single_image-wrapper {
		position: relative;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		overflow: visible;

		&::before,
		&::after {
			content: '';
			position: absolute;
			top: 50%;
			left: 50%;
			border-radius: 50%;
			pointer-events: none;
			transform: translate(-50%, -50%);
			transform-origin: center center;
			animation: animate-icon-wave var(--wave-duration) var(--wave-easing) infinite;
		}

		&::before {
			width: 48px;
			height: 48px;
			background: rgba(255, 255, 255, 0.6);
			z-index: 0;
			--icon-wave-from: calc(35 / 48);
		}

		&::after {
			width: 60px;
			height: 60px;
			background: rgba(255, 255, 255, 0.3);
			z-index: 0;
			--icon-wave-from: calc(48 / 60);
			animation-delay: calc(var(--wave-duration) * var(--wave-stagger));
		}

		&,
		img {
			width: 35px;
			height: 35px;
		}

		img {
			position: relative;
			z-index: 1;
			object-fit: contain;
		}
	}
}
@keyframes experience-wave {

	0% {
		transform: translate(-50%, -50%) scale(1);
		opacity: 0.9;
	}

	100% {
		transform: translate(-50%, -50%) scale(1.28);
		opacity: 0;
	}
}

@keyframes animate-icon-wave {

	0% {
		transform: translate(-50%, -50%) scale(var(--icon-wave-from, 0.73));
		opacity: 0;
	}

	6% {
		opacity: 1;
	}

	42% {
		transform: translate(-50%, -50%) scale(1);
		opacity: 0.5;
	}

	100% {
		transform: translate(-50%, -50%) scale(1);
		opacity: 0;
	}
}

@keyframes animate-icon-wave-scale {

	0% {
		transform: scale(var(--icon-wave-from, 0.73));
		opacity: 0;
	}

	6% {
		opacity: 1;
	}

	42% {
		transform: scale(1);
		opacity: 0.5;
	}

	100% {
		transform: scale(1);
		opacity: 0;
	}
}


.site-header {
	position: absolute;
	top: 20px;
	left: 0;
	right: 0;
	z-index: 100;

	.site-header__bar {
		display: grid;
		grid-template-columns: 1fr auto 1fr;
		align-items: center;
		column-gap: 40px;
		width: fit-content;
		max-width: calc(100% - 48px);
		margin-inline: auto;
		border-radius: 10px;
		padding: 14px 40px 10px;
		border: 1px solid rgba(255, 255, 255, 0.12);
		background-color: rgba(51, 51, 51, 0.4);
		backdrop-filter: blur(23px);
		-webkit-backdrop-filter: blur(23px);
		transition: padding 0.2s ease;

		.site-header__nav--left,
		.site-header__nav--right {
			min-width: 0;
			display: flex;
		}

		.site-header__nav--left {
			justify-content: flex-start;
		}

		.site-header__nav--right {
			justify-content: flex-end;
		}

		.site-header__brand {
			display: flex;
			justify-content: center;
		}

		.site-header__menu {
			display: flex;
			margin: 0;
			padding: 0;
			list-style: none;

			.menu-item {
				position: relative;
				font-size: 16px;
				font-family: var(--font-family-secondary);
				padding-right: 48px;
				transition: font-size 0.2s ease;
				white-space: nowrap;

				a,
				a:visited {
					display: inline-flex;
					flex-direction: column;
					align-items: flex-start;
					white-space: nowrap;
					font-weight: 400;
					text-decoration: none;
					color: var(--tertiary-color);

					&::after {
						content: attr(data-label);
						font-weight: 700;
						height: 0;
						overflow: hidden;
						visibility: hidden;
						user-select: none;
						pointer-events: none;
					}
				}

				&:hover a,
				&.current-menu-item a {
					font-weight: 700;
				}

				+.menu-item {
					padding-left: 48px;
					padding-right: 0;

					&::before {
						content: '';
						position: absolute;
						left: 0;
						top: 50%;
						transform: translateY(-50%);
						width: 1px;
						height: 1em;
						background-color: var(--tertiary-color);
						pointer-events: none;
					}
				}
			}
		}

		.site-header__brand {
			flex: 0 0 auto;
			padding-inline: 0;

			.custom-logo-link {
				min-width: 156.82px;
				min-height: 100%;
				transition: transform 0.2s ease;
				transform-origin: center;
			}
		}

		.menu-toggle {
			display: none;
		}
	}

	.site-header__mobile {
		display: none;
	}

}

.entry-content {

	>.wpb-content-wrapper>.vc_row:not([data-vc-full-width="true"]) {
		margin-left: 0;
		margin-right: 0;
	}

	.vc_row-fluid {
		margin-left: 0;
		margin-right: 0;

		>.wpb_column {
			padding-left: 0;
			padding-right: 0;
		}
	}

	.vc_column_container>.vc_column-inner {
		padding-left: 0;
		padding-right: 0;
	}

	#hero-home {
		position: relative;
		display: flex;
		align-items: center;
		min-height: 700px;
		overflow: hidden;
		background-image: none !important;
	
		.hero-home__video {
			position: absolute;
			inset: 0;
			z-index: 0;
			width: 100%;
			height: 100%;
			pointer-events: none;
			background-color: #000;
	
			video {
				display: block;
				width: 100%;
				height: 100%;
				object-fit: cover;
				object-position: center;
				opacity: 0.5;
			}
		}
	
		> .wpb_column {
			position: relative;
			z-index: 1;
			width: 100%;
		}
	
		.vc_col-sm-12 {
			> .vc_column-inner {
				padding: 0;
	
				.__title {
					* {
						color: var(--tertiary-color);
						font-size: clamp(32px, 4.6vw, 47px);
						line-height: clamp(44px, 6.1vw, 62px);
						font-weight: 400;
					}
	
					strong {
						font-weight: 700;
					}
				}
			}
		}
	}
	#hero {
		display: flex;
		padding-top: 10dvh;
		align-items: center;
		min-height: 468px;


		.vc_column-inner {
			padding: 0;

			.__title {
				* {
					color: var(--tertiary-color);
					font-size: clamp(32px, 4.6vw, 45px);
					font-weight: 500;
					line-height: clamp(44px, 6.1vw, 62px);
				}

				strong {
					font-weight: 900;
				}
			}

			.__text {
				* {
					color: var(--tertiary-color);
					font-size: 16px;
					font-weight: 400;
					line-height: 26px;
				}
			}
		}
	}

	#our-experience {
		padding-top: 84px;
		padding-bottom: 536px;
		background-position: bottom center !important;

		.vc_col-sm-6 {
			width: 44%;

			>.vc_column-inner {
				padding: 0;
			}

			&.content-img {
				& .wpb_wrapper {
					position: relative;
					overflow: visible;

					&::before,
					&::after {
						content: '';
						position: absolute;
						top: 46%;
						left: 44%;
						width: 320px;
						height: 320px;
						background-repeat: no-repeat;
						background-position: center;
						background-size: contain;
						pointer-events: none;
						transform: translate(-50%, -50%);
						transform-origin: center center;
					}

					&::before {
						background-image: url('../assets/img/experience-rings-core.svg');
						z-index: 1;
					}

					&::after {
						background-image: url('../assets/img/experience-rings-waves.svg');
						z-index: 0;
						animation: experience-wave var(--wave-duration) var(--wave-easing) infinite;
					}
				}

				& .wpb_single_image,
				& .vc_figure,
				& .vc_single_image-wrapper,
				& img {
					position: relative;
					z-index: 1;
				}
			}

			&+.vc_col-sm-6 {
				width: 56%;
				padding-left: 71px;

				>.vc_column-inner {
					padding: 0;

					.__title {
						* {
							font-size: clamp(29px, 4.7vw, 48px);
							font-weight: 400;
							line-height: clamp(35px, 5.7vw, 58px);
						}

						strong {
							font-weight: 700;
						}
					}

					.__text {
						* {
							line-height: 30px;
						}
					}
				}
			}
		}
	}

	.info-section {
		margin-top: -300px !important;
		padding-bottom: 130px;

		& .__title {
			margin-bottom: 40px;
		}

		& .vc_inner.vc_row-fluid {
			display: grid !important;
			grid-template-columns: repeat(3, minmax(0, 1fr));
			column-gap: 49px;
			row-gap: 42px;
			margin: 0;
			align-items: start;

			&::before,
			&::after {
				display: none;
			}

			&>.wpb_column {
				width: 100% !important;
				max-width: none !important;
				float: none;
				flex: none !important;
				padding: 0;
				min-height: 0;

				&>.vc_column-inner {
					position: relative;
					width: 100%;
					min-height: 252px;
					border-radius: 15px;
					overflow: hidden;
					display: flex;
					flex-direction: column;
					justify-content: flex-end;
					padding: 0 !important;
					background-size: cover !important;
					background-position: center !important;

					&::before {
						content: '';
						display: block;
						position: absolute;
						inset: 0;
						background-image: inherit;
						background-position: inherit;
						background-size: cover;
						background-repeat: no-repeat;
						z-index: 0;
						transform: scale(1);
						transform-origin: center center;
						transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
					}

					&::after {
						content: '';
						display: block;
						position: absolute;
						inset: 0;
						background-image:
							linear-gradient(180deg, rgba(29, 109, 157, 0) 0%, #0F374F 100%),
							linear-gradient(rgba(29, 109, 157, 0.3), rgba(29, 109, 157, 0.3));
						pointer-events: none;
						z-index: 1;
					}
				}

				& .wpb_wrapper {
					position: relative;
					z-index: 3;
					width: 100%;
				}

				& .__card_content {
					margin: 0;

					.wpb_wrapper {
						padding: 24px 28px 28px;
					}

					p {
						margin: 0;
						color: var(--tertiary-color);
						font-size: 18px;
						line-height: 26px;
					}

					p:first-child {
						padding-bottom: 12px;
						border-bottom: 1px solid var(--tertiary-color);
					}

					p+p {
						padding-top: 12px;
					}

					a,
					a:visited {
						display: inline;
						color: var(--tertiary-color);
						font-size: 16px;
						line-height: 1;
						text-decoration: none;
						border-bottom: 1px solid transparent;

						&::after {
							content: '\e941';
							display: inline-block;
							margin-left: 8px;
							vertical-align: middle;
							font-family: 'Material Symbols Outlined';
							font-size: 16px;
							line-height: 1;
							border-bottom: none;
						}
					}
				}

				&:hover>.vc_column-inner::before {
					transform: scale(1.08);
				}

				&:hover .__card_content a {
					border-bottom-color: var(--tertiary-color);
				}

				&:nth-child(1) {
					grid-column: 1;
					grid-row: 1 / span 2;
					margin-top: 68px;

					&>.vc_column-inner {
						min-height: 456px;
					}
				}

				&:nth-child(2) {
					grid-column: 2;
					grid-row: 1;
					margin-top: 32px;
				}

				&:nth-child(3) {
					grid-column: 3;
					grid-row: 1;
					margin-top: 0;
				}

				&:nth-child(4) {
					grid-column: 2;
					grid-row: 2;
				}

				&:nth-child(5) {
					grid-column: 3;
					grid-row: 2;
					margin-top: 44px;
				}
			}
		}
	}

	#our-values {
		padding-top: 120px;
		padding-bottom: 80px;

		>.wpb_column>.vc_column-inner {
			padding: 0;
		}

		.__text {
			* {
				color: var(--tertiary-color);
			}

			strong {
				color: var(--tertiary-color);
			}
		}

		>.wpb_column:first-child .vc_inner.vc_row-fluid>.wpb_column:first-child {
			>.vc_column-inner {
				padding: 0;

				>.wpb_wrapper {
					position: relative;

					&::before,
					&::after {
						content: '';
						position: absolute;
						top: 7px;
						left: -50px;
						width: 40px;
						height: 40px;
						background-repeat: no-repeat;
						background-position: center;
						background-size: contain;
						pointer-events: none;
						transform-origin: center center;
					}

					&::before {
						background-image: url('../assets/img/values-pulse-core.svg');
						z-index: 2;
					}

					&::after {
						background-image: url('../assets/img/values-pulse-waves.svg');
						z-index: 0;
						--icon-wave-from: calc(6 / 14);
						animation: animate-icon-wave-scale var(--wave-duration) var(--wave-easing) infinite;
					}
				}
			}

			.__title {
				* {
					color: var(--tertiary-color);
					font-size: 39px;
					line-height: 54px;
				}
			}
		}

		>.wpb_column:first-child .vc_inner.vc_row-fluid > .wpb_column:nth-child(2) {
			padding-left: 40px;
			padding-right: 40px;
		}

		>.wpb_column:first-child .vc_inner.vc_row-fluid .wpb_single_image {

			.vc_single_image-wrapper,
			img {
				border-radius: 10px;
			}

			.vc_single_image-wrapper {
				overflow: hidden;
			}
		}

		>.wpb_column:nth-child(2)>.vc_column-inner {
			margin-top: 86px;
			padding-top: 94px;
			border-top: 1px solid rgba(255, 255, 255, 0.35);
		}

		>.wpb_column:nth-child(2) .__title {
			* {
				color: var(--tertiary-color);
				font-size: 34px;
				line-height: 54px;
			}
		}

		>.wpb_column:nth-child(2) .vc_inner.vc_row-fluid {
			display: grid !important;
			grid-template-columns: repeat(4, minmax(0, 1fr));
			gap: 15px;
			margin: 0;

			&::before,
			&::after {
				display: none;
			}

			>.wpb_column {
				width: 100% !important;
				max-width: none !important;
				float: none;
				flex: none !important;
				padding: 0;

				>.vc_column-inner {
					position: relative;
					overflow: hidden;
					height: 100%;
					border-radius: 10px;
					background: linear-gradient(180deg, #0073B0 0%, rgba(6, 22, 38, 0) 100%);
					padding: 24px;
				}

				.wpb_single_image:not(.animate-icon) {

					.vc_single_image-wrapper,
					img {
						width: 60px;
						height: 60px;
					}

					img {
						object-fit: contain;
					}
				}

				.__text {
					* {
						font-size: 16px;
						line-height: 30px;
					}
				}
			}
		}
	}

	#contact_section {
		padding-top: 60px;
		padding-bottom: 60px;

		.vc_column-inner {
			padding: 0;
		}
	}

	.promotional-banner {
		display: flex !important;
		flex-flow: row nowrap !important;
		align-items: center !important;
		justify-content: space-between !important;
		gap: 32px;
		padding-block: 60px;
		margin-left: 0;
		margin-right: 0;

		&::before,
		&::after {
			display: none !important;
		}

		> .wpb_column {
			width: auto !important;
			max-width: none !important;
			float: none !important;
			flex: 1 1 0 !important;
			padding: 0 !important;
		}

		> .wpb_column:last-child {
			flex: 0 0 auto !important;
		}

		> .wpb_column > .vc_column-inner {
			padding: 0 !important;
		}

		.__title {
			margin-bottom: 10px !important;

			* {
				color: var(--tertiary-color);
				font-size: 39px;
				font-weight: 700;
				line-height: 48px;
			}
		}

		.__text {
			margin-bottom: 0 !important;

			* {
				color: var(--tertiary-color);
				font-size: 16px;
				font-weight: 400;
				line-height: 26px;
			}
		}

		.__btns {
			margin-bottom: 0 !important;

			p {
				margin: 0;
				text-align: right;
			}
		}

		.primary_btn {
			text-transform: uppercase;
			white-space: nowrap;
			font-size: 16px;
			letter-spacing: 0.02em;
			padding: 12px 40px;
		}

		&.--variation {
			.__title * {
				color: var(--primary-color) !important;
			}

			.__text * {
				color: var(--text-color) !important;
			}
		}
	}

	#why-choose-us .promotional-banner {
		position: relative;
		isolation: isolate;
		margin: 0 !important;
		padding-inline: 0;
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw) !important;
		padding-left: var(--edge);
		padding-right: var(--edge);
		background:
			linear-gradient(
				180deg,
				rgba(255, 255, 255, 0) 0%,
				rgba(255, 255, 255, 0.04) 38%,
				rgba(255, 255, 255, 0.06) 58%,
				rgba(0, 0, 0, 0.03) 78%,
				rgba(0, 0, 0, 0.14) 100%
			),
			rgba(255, 255, 255, 0.04);
		backdrop-filter: blur(32px) saturate(0.42) brightness(1.08);
		-webkit-backdrop-filter: blur(32px) saturate(0.42) brightness(1.08);
		background-color: #0f374fc4;

		> .wpb_column > .vc_column-inner {
			position: relative;
			z-index: 1;
		}
	}

	#our-benefits,
	#our-differences {
		padding-block: 70px;
	}

	#our-benefits {
		> .wpb_column > .vc_column-inner {
			padding: 0;
		}

		.vc_inner.vc_row-fluid {
			display: grid !important;
			grid-template-columns: repeat(4, minmax(0, 1fr));
			gap: 15px;
			margin: 0;

			&::before,
			&::after {
				display: none;
			}

			> .wpb_column {
				width: 100% !important;
				max-width: none !important;
				float: none;
				flex: none !important;
				padding: 0;
			}
		}
	}

	#our-differences {
		display: grid !important;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 15px;
		margin-left: 0;
		margin-right: 0;
		padding-block: 80px;

		&.vc_row-fluid::before,
		&.vc_row-fluid::after {
			display: none !important;
		}

		> .wpb_column {
			width: 100% !important;
			max-width: none !important;
			float: none !important;
			flex: none !important;
			padding: 0;
			min-width: 0;
		}

		> .wpb_column:first-child {
			grid-column: 1 / -1;
			margin-bottom: 25px;

			> .vc_column-inner {
				padding: 0;
			}

			.__title {
				margin-bottom: 15px !important;
			}
		}
	}

	#our-benefits .vc_inner.vc_row-fluid > .wpb_column,
	#our-differences > .wpb_column:not(:first-child) {
		> .vc_column-inner {
			height: 100%;
			border-radius: 10px;
			background: linear-gradient(180deg, #1D6D9D 0%, #0F374F 97.4%);
			padding: 20px;
			overflow: visible;
			min-height: 216px;
		}

		.wpb_single_image.animate-icon {
			margin-bottom: 20px;
		}

		.wpb_text_column.__title,
		.wpb_text_column.__text {
			margin-bottom: 0 !important;
			display: inline;
		}

		.__title {
			margin-bottom: 8px !important;

			* {
				color: var(--tertiary-color);
				font-size: 20px;
				font-weight: 900;
				line-height: 1.25;
			}
		}

		.__title * {
			font-weight: 700;
		}

		.__text * {
			font-family: var(--font-family);
			font-size: 16px;
			line-height: 24px;
			color: var(--tertiary-color);
			display: inline;
			font-weight: 400;
		}
	}

	#why-choose-us {
		position: relative;
		isolation: isolate;
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		grid-template-areas:
			'top-copy top-gallery'
			'cta cta'
			'pillars pillars';
		column-gap: 30px;
		row-gap: 0;
		padding-block: 0;
		overflow: visible;
		background-size: cover !important;
		background-position: center !important;
		background-repeat: no-repeat !important;
		overflow: hidden;

		&::before {
			content: '';
			display: block;
			grid-column: 1 / -1;
			grid-row: 1;
			width: 100vw;
			justify-self: center;
			z-index: 0;
			pointer-events: none;
			background:
				var(--why-overlay),
				rgba(6, 22, 38, 0.62);
		}

		&.vc_row-fluid::after {
			display: none !important;
		}

		> .wpb_column {
			position: relative;
			z-index: 1;
			width: 100% !important;
			max-width: none !important;
			float: none !important;
			flex: none !important;
			padding: 0;
			min-width: 0;
		}

		> .wpb_column > .vc_column-inner {
			padding: 0;
			height: 100%;
		}

		> .wpb_column:nth-child(1) {
			grid-area: top-copy;
			display: flex;
			flex-direction: column;
			padding-top: 65px;
			padding-bottom: 97px;
			padding-right: 0;
			z-index: 2;
			min-width: 0;

			> .vc_column-inner {
				display: flex;
				flex: 1;
				flex-direction: column;
				justify-content: center;
				min-width: 0;
			}
		}

		> .wpb_column:nth-child(2) {
			grid-area: top-gallery;
			display: flex;
			flex-direction: column;
			justify-content: center;
			padding-top: 65px;
			padding-bottom: 97px;
			padding-left: 0;
			padding-right: 0;
			width: 100% !important;
			max-width: 100% !important;
			z-index: 1;
			min-width: 0;

			> .vc_column-inner {
				display: flex;
				flex: 1;
				flex-direction: column;
				justify-content: center;
				width: 100%;
				min-width: 0;
			}
		}

		> .wpb_column:nth-child(3) {
			grid-area: cta;
			grid-column: 1 / -1 !important;
			width: 100% !important;
			margin: 0 !important;
			padding: 0 !important;
		}

		> .wpb_column:nth-child(4) {
			grid-area: pillars;
			grid-column: 1 / -1 !important;
			width: 100% !important;
			margin: 0 !important;
			padding: 0 !important;
		}

		> .wpb_column:nth-child(3) > .vc_column-inner > .wpb_wrapper,
		> .wpb_column:nth-child(4) > .vc_column-inner > .wpb_wrapper {
			width: 100%;
		}

		> .wpb_column:first-child {
			.__title {
				margin-bottom: 15px !important;

				> .wpb_wrapper {
					position: relative;
					

					&::before,
					&::after {
						content: '';
						position: absolute;
						top: 4px;
						left: -50px;
						width: 40px;
						height: 40px;
						background-repeat: no-repeat;
						background-position: center;
						background-size: contain;
						pointer-events: none;
						transform-origin: center center;
					}

					&::before {
						background-image: url('../assets/img/values-pulse-core.svg');
						z-index: 2;
					}

					&::after {
						background-image: url('../assets/img/values-pulse-waves.svg');
						z-index: 0;
						--icon-wave-from: calc(6 / 14);
						animation: animate-icon-wave-scale var(--wave-duration) var(--wave-easing) infinite;
					}
				}
			}

			.__title * {
				color: var(--tertiary-color);
				font-size: 39px;
				font-weight: 700;
				line-height: 48px;
				letter-spacing: -0.5px;
			}

			.__text {
				margin-bottom: 32px !important;

				* {
					color: var(--tertiary-color);
					font-size: 16px;
					font-weight: 400;
					line-height: 26px;
				}
			}

			.__list {
				margin-top: 0;
				margin-bottom: 0 !important;

				ul {
					display: flex;
					flex-direction: column;
					gap: 8px;
				}

				li {
					display: block;
					padding: 12px 16px;
					border-radius: 10px;
					background: var(--bullets);
					border: 0;
					color: var(--tertiary-color);
					font-size: 16px;
					line-height: 24px;
					font-weight: 400;



					strong {
						display: inline;
						color: var(--tertiary-color);
						font-weight: 700;
					}
				}
			}
		}

		#mansory-carousel {
			width: 100%;
			max-width: 100%;
			min-width: 0;

			> .vc_column-inner {
				width: 100%;
				max-width: 100%;
				min-width: 0;
				padding-right: 0 !important;
			}

			> .vc_column-inner > .wpb_wrapper:not(.swiper-initialized) > .wpb_single_image {
				display: none;
			}

			> .vc_column-inner > .wpb_wrapper {
				display: block;
				width: calc(100% + var(--edge));
				max-width: none;
				min-width: 0;
				margin-right: calc(-1 * var(--edge));
				margin-left: 0;
			}

			.masonry-carousel {
				width: 100%;
				min-width: 0;
				height: calc(470px + 28px);
				max-height: calc(470px + 28px);
				padding-bottom: 28px;
				box-sizing: border-box;
				overflow: hidden;
			}

			.swiper-slide {
				display: block !important;
				flex-shrink: 0;
				width: 100% !important;
				height: 470px !important;
				box-sizing: border-box;
			}

			.masonry-slide {
				display: grid !important;
				grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
				grid-template-rows: repeat(2, minmax(0, calc((470px - 40px) / 2)));
				gap: 40px;
				width: 100%;
				height: 470px;
				min-width: 0;
				box-sizing: border-box;
			}

			.swiper-pagination {
				bottom: 2px !important;
				left: 50% !important;
				right: auto;
				width: auto !important;
				transform: translateX(-50%);
				line-height: 0;
			}

			.masonry-slide .wpb_single_image {
				margin: 0;
				min-height: 0;
				min-width: 0;
				height: 100%;
				overflow: hidden;
				border-radius: 10px;
			}

			.masonry-slide .wpb_single_image:first-child {
				grid-column: 1;
				grid-row: 1 / span 2;
			}

			.masonry-slide .wpb_single_image:nth-child(2) {
				grid-column: 2;
				grid-row: 1;
			}

			.masonry-slide .wpb_single_image:nth-child(3) {
				grid-column: 2;
				grid-row: 2;
			}

			.masonry-slide .masonry-slide__clone {
				pointer-events: none;
			}

			.masonry-slide .vc_figure {
				display: block;
				height: 100%;
				margin: 0;
			}

			.masonry-slide .vc_single_image-wrapper {
				display: block;
				height: 100%;
				width: 100%;
				margin: 0;
				border: 0;
				overflow: hidden;
				border-radius: 10px;
			}

			.masonry-slide img {
				display: block;
				width: 100%;
				height: 100%;
				border-radius: 10px;
				object-fit: cover;
				object-position: center;
			}

			.masonry-slide .wpb_single_image:first-child img {
				object-position: center top;
			}

			.masonry-slide .vc_box_border_grey {
				border: 0;
			}

			.swiper-pagination-bullet {
				width: 8px;
				height: 8px;
				background: var(--tertiary-color);
				opacity: 0.45;
			}

			.swiper-pagination-bullet-active {
				opacity: 1;
			}
		}

		.our-pillars {
			position: relative;
			isolation: isolate;
			display: grid !important;
			grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
			gap: 15px;
			margin: 0 !important;
			padding-block: 80px;
			width: 100vw;
			max-width: 100vw;
			margin-left: calc(50% - 50vw) !important;
			box-sizing: border-box;
			padding-left: var(--edge);
			padding-right: var(--edge);
			background: rgba(0, 0, 0, 0.9);

			&::before,
			&::after {
				display: none !important;
			}

			> .wpb_column {
				width: auto !important;
				max-width: none !important;
				float: none !important;
				flex: none !important;
				padding: 0 !important;
				position: relative;
				z-index: 1;
				min-width: 0;
			}

			> .wpb_column:first-child {
				grid-column: 1 / -1;
				margin-bottom: 32px;

				.__title {
					margin-bottom: 0 !important;
				}

				.__title > .wpb_wrapper {
					position: relative;
					padding-left: 50px;

					&::before,
					&::after {
						content: '';
						position: absolute;
						top: 7px;
						left: 0;
						width: 40px;
						height: 40px;
						background-repeat: no-repeat;
						background-position: center;
						background-size: contain;
						pointer-events: none;
						transform-origin: center center;
					}

					&::before {
						background-image: url('../assets/img/values-pulse-core.svg');
						z-index: 2;
					}

					&::after {
						background-image: url('../assets/img/values-pulse-waves.svg');
						z-index: 0;
						--icon-wave-from: calc(6 / 14);
						animation: animate-icon-wave-scale var(--wave-duration) var(--wave-easing) infinite;
					}
				}

				.__title * {
					color: var(--tertiary-color);
					font-size: 39px;
					font-weight: 700;
					line-height: 48px;
				}
			}

			> .wpb_column:not(:first-child) > .vc_column-inner {
				height: 100%;
				min-height: 170px;
				padding: 28px 20px 30px;
				border-radius: 10px;
				background: linear-gradient(180deg, #0073B0 0%, rgba(6, 22, 38, 0) 100%);
				box-sizing: border-box;
				display: flex;
				flex-direction: column;
			}

			> .wpb_column:not(:first-child) .wpb_wrapper {
				display: flex;
				flex-direction: column;
				justify-content: space-between;
				height: 100%;
				flex: 1;
			}

			.wpb_single_image.animate-icon {
				margin-bottom: 0;
				flex-shrink: 0;

				.vc_single_image-wrapper {
					width: 48px;
					height: 48px;
					background: #fff;
					border-radius: 50%;
				}

				.vc_single_image-wrapper,
				img {
					width: 35px;
					height: 35px;
				}
			}

			.__text {
				margin-bottom: 0 !important;
				margin-top: auto;
				padding-top: 24px;

				* {
					color: var(--tertiary-color);
					font-size: 16px;
					font-weight: 400;
					line-height: 24px;
				}
			}
		}
	}

	.our-mission {
		position: relative;
		isolation: isolate;
		padding-block: 80px;
		background-size: cover !important;
		background-position: center !important;
		background-repeat: no-repeat !important;

		&::before {
			content: '';
			position: absolute;
			inset: 0;
			z-index: 0;
			pointer-events: none;
			background: linear-gradient(
				180deg,
				rgba(255, 255, 255, 0.9) 0%,
				rgba(244, 249, 252, 0.86) 100%
			);
		}

		> .wpb_column {
			position: relative;
			z-index: 1;
		}

		> .wpb_column:first-child > .vc_column-inner {
			padding-right: 56px;
		}

		> .wpb_column:first-child {
			.__title {
				margin-bottom: 14px !important;

				> .wpb_wrapper {
					position: relative;
					padding-left: 56px;

					&::before,
					&::after {
						content: '';
						position: absolute;
						top: 0;
						left: 0;
						width: 40px;
						height: 40px;
						background-repeat: no-repeat;
						background-position: center;
						background-size: contain;
						pointer-events: none;
						transform-origin: center center;
					}

					&::before {
						background-image: url('../assets/img/mission-pulse-dot.svg');
						z-index: 2;
					}

					&::after {
						background-image: url('../assets/img/mission-pulse-waves.svg');
						z-index: 0;
						--icon-wave-from: calc(6 / 14);
						animation: animate-icon-wave-scale var(--wave-duration) var(--wave-easing) infinite;
					}
				}

				* {
					color: var(--primary-color);
					font-family: var(--font-family-secondary);
					font-size: 32px;
					font-weight: 700;
					line-height: 38px;
					letter-spacing: -0.4px;
				}
			}

			> .vc_column-inner > .wpb_wrapper > .__title:nth-child(3) > .wpb_wrapper::after {
				animation-delay: calc(var(--wave-duration) * var(--wave-stagger));
			}

			.__text {
				margin-bottom: 52px !important;
				padding-left: 56px;

				* {
					color: var(--text-color);
					font-size: 16px;
					font-weight: 400;
					line-height: 28px;
				}

				&:last-child {
					margin-bottom: 0 !important;
				}
			}
		}

		> .wpb_column:nth-child(2) {
			.wpb_wrapper {
				position: relative;
				overflow: visible;

				&::before,
				&::after {
					content: '';
					position: absolute;
					top: 79%;
					left: 64%;
					width: 300px;
					height: 300px;
					background-repeat: no-repeat;
					background-position: center;
					background-size: contain;
					pointer-events: none;
					transform: translate(-50%, -50%);
					transform-origin: center center;
				}

				&::before {
					background-image: url('../assets/img/experience-rings-core.svg');
					z-index: 1;
				}

				&::after {
					background-image: url('../assets/img/experience-rings-waves.svg');
					z-index: 0;
					animation: experience-wave var(--wave-duration) var(--wave-easing) infinite;
				}
			}

			.wpb_single_image,
			.vc_figure,
			.vc_single_image-wrapper,
			img {
				position: relative;
				z-index: 2;
			}

			img {
				display: block;
				width: 100%;
				max-width: 100%;
				height: auto;
			}
		}
	}

	#our-team {
		padding-block: 80px;
		display: grid !important;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 15px;
		margin-left: 0;
		margin-right: 0;

		&.vc_row-fluid::before,
		&.vc_row-fluid::after {
			display: none !important;
		}

		> .wpb_column {
			width: 100% !important;
			max-width: none !important;
			float: none !important;
			flex: none !important;
			padding: 0;
			min-width: 0;
		}

		> .wpb_column:first-child {
			grid-column: 1 / -1;
			margin-bottom: 25px;

			> .vc_column-inner {
				padding: 0;
			}

			.__title {
				margin-bottom: 15px !important;
			}
		}

		> .wpb_column:not(:first-child) {
			> .vc_column-inner {
				position: relative;
				display: flex;
				flex-direction: column;
				justify-content: flex-end;
				min-height: 320px;
				height: 100%;
				padding: 0 !important;
				border-radius: 10px;
				overflow: hidden;
				background-size: cover !important;
				background-position: center !important;
				isolation: isolate;
			}

			> .vc_column-inner > .wpb_wrapper {
				position: relative;
				z-index: 2;
				width: 100%;
				padding: 12px 16px 14px;
				box-sizing: border-box;

				&::before {
					content: '';
					position: absolute;
					left: 0;
					right: 0;
					bottom: 0;
					top: -35px;
					z-index: -1;
					border-radius: 0 0 10px 10px;
					background:
						linear-gradient(
							180deg,
							rgba(255, 255, 255, 0) 0%,
							rgba(255, 255, 255, 0.04) 38%,
							rgba(255, 255, 255, 0.06) 58%,
							rgba(0, 0, 0, 0.03) 78%,
							rgba(0, 0, 0, 0.14) 100%
						),
						rgba(255, 255, 255, 0.04);
					backdrop-filter: blur(32px) saturate(0.42) brightness(1.08);
					-webkit-backdrop-filter: blur(4px) saturate(0.42) brightness(1.08);
					-webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 28%, #000 100%);
					mask-image: linear-gradient(180deg, transparent 0%, #000 28%, #000 100%);
				}
			}

			.wpb_text_column,
			.wpb_text_column > .wpb_wrapper {
				position: static;
				background: none !important;
				background-image: none !important;
				backdrop-filter: none !important;
				-webkit-backdrop-filter: none !important;
				border-radius: 0;
				padding: 0;
				margin-bottom: 0 !important;
			}

			.__text * {
				font-family: var(--font-family);
				font-size: 20px;
				font-weight: 900;
				line-height: 1.3;
				color: var(--tertiary-color);
			}
		}
	}

	#our-strengths {
		position: relative;
		isolation: isolate;
		display: grid !important;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 15px;
		padding-block: 70px 80px;
		background-size: cover !important;
		background-position: center !important;
		background-repeat: no-repeat !important;

		&.vc_row-fluid::before,
		&.vc_row-fluid::after {
			display: none !important;
		}

		&::before {
			content: '';
			position: absolute;
			inset: 0;
			z-index: 0;
			pointer-events: none;
			background:
				linear-gradient(
					180deg,
					rgba(15, 55, 79, 0.82) 0%,
					rgba(6, 22, 38, 0.9) 100%
				);
		}

		> .wpb_column {
			position: relative;
			z-index: 1;
			width: 100% !important;
			max-width: none !important;
			float: none !important;
			flex: none !important;
			padding: 0;
			min-width: 0;
		}

		> .wpb_column:first-child {
			grid-column: 1 / -1;
			margin-bottom: 32px;

			> .vc_column-inner {
				padding: 0;
			}

			.__title {
				margin-bottom: 0 !important;
			}

			.__title > .wpb_wrapper {
				position: relative;
				padding-left: 50px;

				&::before,
				&::after {
					content: '';
					position: absolute;
					top: 7px;
					left: 0;
					width: 40px;
					height: 40px;
					background-repeat: no-repeat;
					background-position: center;
					background-size: contain;
					pointer-events: none;
					transform-origin: center center;
				}

				&::before {
					background-image: url('../assets/img/values-pulse-core.svg');
					z-index: 2;
				}

				&::after {
					background-image: url('../assets/img/values-pulse-waves.svg');
					z-index: 0;
					--icon-wave-from: calc(6 / 14);
					animation: animate-icon-wave-scale var(--wave-duration) var(--wave-easing) infinite;
				}
			}

			.__title * {
				color: var(--tertiary-color);
				font-size: 39px;
				font-weight: 700;
				line-height: 48px;
			}
		}

		> .wpb_column:not(:first-child) > .vc_column-inner {
			height: 100%;
			min-height: 170px;
			padding: 28px 20px 20px;
			border-radius: 10px;
			border: 1px solid rgba(255, 255, 255, 0.12);
			background: linear-gradient(180deg, #1D6D9D 0%, #0F374F 97.4%);
			box-sizing: border-box;
			display: flex;
			flex-direction: column;
		}

		> .wpb_column:not(:first-child) .wpb_wrapper {
			display: flex;
			flex-direction: column;
			justify-content: flex-start;
			height: 100%;
			flex: 1;
		}

		.wpb_single_image.animate-icon {
			margin-bottom: 0;
			flex-shrink: 0;

			.vc_single_image-wrapper {
				width: 48px;
				height: 48px;
				background: #fff;
				border-radius: 50%;
			}

			.vc_single_image-wrapper,
			img {
				width: 35px;
				height: 35px;
			}
		}

		.__text {
			margin-bottom: 0 !important;
			margin-top: 0;
			padding-top: 24px;

			* {
				color: var(--tertiary-color);
				font-size: 14px;
				font-weight: 400;
				line-height: 24px;
			}
		}

		&.--col-5{
			grid-template-columns: repeat(5, minmax(0, 1fr));
		}
	}

	#our-projects {
		position: relative;
		isolation: isolate;
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 15px;
		padding-block: 80px;
		background-size: cover !important;
		background-position: center !important;
		background-repeat: no-repeat !important;

		&.vc_row-fluid::before,
		&.vc_row-fluid::after {
			display: none !important;
		}

		&::before {
			content: '';
			position: absolute;
			inset: 0;
			z-index: 0;
			pointer-events: none;
			background: linear-gradient(
				180deg,
				rgba(255, 255, 255, 0.9) 0%,
				rgba(244, 249, 252, 0.86) 100%
			);
		}

		> .wpb_column {
			position: relative;
			z-index: 1;
			width: 100% !important;
			max-width: none !important;
			float: none !important;
			flex: none !important;
			padding: 0;
			min-width: 0;
		}

		> .wpb_column:first-child {
			grid-column: 1 / -1;
			margin-bottom: 25px;

			> .vc_column-inner {
				padding: 0;
			}

			.__title {
				margin-bottom: 15px !important;
			}

			.__text {
				margin-bottom: 15px !important;
			}
		}

		> .wpb_column:not(:first-child) {
			> .vc_column-inner {
				position: relative;
				display: flex;
				flex-direction: column;
				justify-content: flex-end;
				min-height: 300px;
				height: 100%;
				padding: 0 !important;
				border-radius: 10px;
				overflow: hidden;
				background-size: cover !important;
				background-position: center !important;
				isolation: isolate;
			}

			> .vc_column-inner > .wpb_wrapper {
				position: relative;
				z-index: 2;
				width: 100%;
				padding: 12px 16px 14px;
				box-sizing: border-box;

				&::before {
					content: '';
					position: absolute;
					left: 0;
					right: 0;
					bottom: 0;
					top: -35px;
					z-index: -1;
					border-radius: 0 0 10px 10px;
					background:
						linear-gradient(
							180deg,
							rgba(255, 255, 255, 0) 0%,
							rgba(255, 255, 255, 0.04) 38%,
							rgba(255, 255, 255, 0.06) 58%,
							rgba(0, 0, 0, 0.03) 78%,
							rgba(0, 0, 0, 0.14) 100%
						),
						rgba(255, 255, 255, 0.04);
					backdrop-filter: blur(32px) saturate(0.42) brightness(1.08);
					-webkit-backdrop-filter: blur(4px) saturate(0.42) brightness(1.08);
					-webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 28%, #000 100%);
					mask-image: linear-gradient(180deg, transparent 0%, #000 28%, #000 100%);
				}
			}

			.wpb_text_column,
			.wpb_text_column > .wpb_wrapper {
				position: static;
				background: none !important;
				background-image: none !important;
				backdrop-filter: none !important;
				-webkit-backdrop-filter: none !important;
				border-radius: 0;
				padding: 0;
			}

			.wpb_text_column.__title,
			.wpb_text_column.__text {
				margin-bottom: 0 !important;
			}

			.__title {
				* {
					font-family: var(--font-family);
					font-size: 20px;
					font-weight: 900;
					line-height: 1.25;
					color: var(--tertiary-color);
					letter-spacing: 0;
				}
			}

			.__text {
				max-height: 0;
				opacity: 0;
				overflow: hidden;
				transition:
					max-height 0.4s cubic-bezier(0.22, 1, 0.36, 1),
					opacity 0.35s ease,
					margin-top 0.35s ease;

				* {
					font-family: var(--font-family);
					font-size: 16px;
					font-weight: 400;
					line-height: 24px;
					color: var(--tertiary-color);
				}
			}

		}
	}

	#contact_us {
		position: relative;
		display: grid !important;
		grid-template-columns: minmax(0, 40fr) minmax(0, 60fr);
		grid-template-areas: 'copy form';
		gap: 40px 56px;
		padding-block: 80px;
		align-items: start;

		&.vc_row-fluid::before,
		&.vc_row-fluid::after {
			display: none !important;
		}

		> .wpb_column {
			position: relative;
			width: 100% !important;
			max-width: none !important;
			float: none !important;
			flex: none !important;
			padding: 0;
			min-width: 0;

			> .vc_column-inner {
				padding: 0;
			}
		}

		> .wpb_column:nth-child(1) {
			grid-area: copy;
		}

		> .wpb_column:nth-child(2) {
			grid-area: form;
		}

		> .wpb_column:first-child {
			.__title {
				margin-bottom: 14px !important;

				> .wpb_wrapper {
					position: relative;
					overflow: visible;
					padding-left: 56px;

					&::before,
					&::after {
						content: '';
						position: absolute;
						top: 0;
						left: 0;
						width: 40px;
						height: 40px;
						background-repeat: no-repeat;
						background-position: center;
						background-size: contain;
						pointer-events: none;
						transform-origin: center center;
					}

					&::before {
						background-image: url('../assets/img/mission-pulse-dot.svg');
						z-index: 2;
					}

					&::after {
						background-image: url('../assets/img/mission-pulse-waves.svg');
						z-index: 0;
						--icon-wave-from: calc(6 / 14);
						animation: animate-icon-wave-scale var(--wave-duration) var(--wave-easing) infinite;
					}
				}

				* {
					color: var(--primary-color);
					font-family: var(--font-family-secondary);
					font-size: 32px;
					font-weight: 700;
					line-height: 38px;
					letter-spacing: -0.4px;
				}
			}

			> .vc_column-inner > .wpb_wrapper > .__title:nth-child(3) > .wpb_wrapper::after {
				animation-delay: calc(var(--wave-duration) * var(--wave-stagger));
			}

			.__text {
				margin-bottom: 52px !important;
				padding-left: 56px;

				* {
					color: var(--text-color);
					font-size: 16px;
					font-weight: 400;
					line-height: 28px;
				}

				&:last-child {
					margin-bottom: 0 !important;
				}
			}

			&:hover .__text,
			&:focus-within .__text {
				max-height: 12em;
				opacity: 1;
				margin-top: 8px;
			}
		}

		> .wpb_column:last-child {
			.wpcf7 {
				margin: 0;
			}

			.wpcf7-form {
				display: grid;
				grid-template-columns: repeat(2, minmax(0, 1fr));
				gap: 20px 24px;
				padding: 40px 48px;
				background: var(--tertiary-color);
				border-radius: 10px;
				box-shadow: 0 4px 30px rgba(15, 55, 79, 0.12);
			}

			.col-100 {
				grid-column: 1 / -1;

				h2 {
					margin: 0 0 8px;
					color: var(--primary-color);
					font-family: var(--font-family-secondary);
					font-size: 25px;
					font-weight: 600;
					line-height: 32px;
					letter-spacing: -0.4px;
					text-align: center;
				}
			}

			.col-50 {
				min-width: 0;
			}

			.col-50:has(.wpcf7-acceptance),
			.col-50--submit {
				align-self: center;
			}

			.col-50--submit {
				display: flex;
				align-items: center;
				justify-content: flex-end;
			}

			label {
				display: block;
				margin: 0;
			}

			.field-label {
				display: block;
				margin-bottom: 8px;
				color: var(--primary-color);
				font-family: var(--font-family);
				font-size: 16px;
				font-weight: 400;
				line-height: 1.2;
			}

			.wpcf7-form-control-wrap {
				display: block;
			}

			.wpcf7-form-control:not(.wpcf7-submit):not(.wpcf7-acceptance) {
				display: block;
				width: 100%;
				box-sizing: border-box;
				padding: 12px 16px;
				border: 1px solid rgba(29, 109, 157, 0.45);
				border-radius: 8px;
				background: var(--tertiary-color);
				color: var(--text-color);
				font-family: var(--font-family);
				font-size: 14px;
				line-height: 1.4;

				&::placeholder {
					color: rgba(85, 85, 85, 0.55);
					font-family: var(--font-family);
					font-size: 14px;
				}

				&:focus {
					outline: 2px solid rgba(29, 109, 157, 0.35);
					outline-offset: 1px;
					border-color: var(--primary-color);
				}
			}

			textarea.wpcf7-form-control {
				min-height: 168px;
				resize: vertical;
			}

			.wpcf7-acceptance {
				.wpcf7-list-item {
					margin: 0;
				}

				label {
					display: flex;
					align-items: flex-start;
					gap: 10px;
					color: var(--text-color);
					font-family: var(--font-family-secondary);
					font-size: 12px;
					line-height: 18px;
				}

				input[type='checkbox'] {
					flex-shrink: 0;
					margin-top: 2px;
				}

				a {
					color: var(--primary-color);
					text-decoration: underline;
				}
			}

			.wpcf7-submit {
				margin: 0;
				min-width: 140px;
				font-family: 'Poppins', sans-serif;
				font-size: 16px;
				font-weight: 700;
				text-transform: uppercase;
				letter-spacing: 0.02em;
			}

			.wpcf7-spinner{
				display: none;
			}

			.wpcf7-response-output {
				grid-column: 1 / -1;
				margin: 0;
			}
		}
	}

}

.site-footer {
	padding-block: 80px;
	background: linear-gradient(180deg, #1D6E9D 0%, #0A2737 94.23%, #0A2737 100%);

	.site-footer__inner {
		.footer-widgets {
			display: grid;
			grid-template-columns: repeat(4, 1fr);
			gap: 97px;
			padding-bottom: 53px;

			.footer-1,
			.footer-2 {
				grid-column: span 1;
			}

			.footer-1 {
				.widget_media_image {
					margin-bottom: 21px;

					img {
						width: 196px;
						height: 100%;
						object-fit: cover;
					}
				}

				.widget_text {
					margin: 0;

					p {
						margin: 0;

						a,
						a:visited {
							color: var(--tertiary-color);
							font-family: "Open Sans", sans-serif;
							font-size: 16px;
							font-weight: 400;
							text-decoration: none;
						}

						&+p {
							margin-top: 50px;

							a,
							a:visited {
								padding: 10px 20px;
								background: var(--tertiary-color);
								border-radius: 5px;
								box-shadow: 0 2px 30px 0 rgba(0, 0, 0, 0.25);
								color: #1D6D9D;
								font-family: Poppins;
								font-size: 16px;
								font-weight: 700;
								text-transform: uppercase;
								transition: background 0.2s ease;

								&:hover {
									background: #D9D9D9;
								}
							}
						}
					}
				}
			}

			.footer-2 {
				& .widget_nav_menu {
					& .widget-title {
						color: var(--tertiary-color);
						font-family: "Open Sans", sans-serif;
						font-size: 18px;
						font-weight: 700;
						line-height: 1.2;
						margin: 0 0 22px;
					}

					& .menu {
						display: flex;
						flex-direction: column;
						gap: 14px;
						padding: 0;
						margin: 0;
						list-style: none;

						& .menu-item {
							position: relative;
							padding-left: 32px;

							& a,
							& a:visited {
								color: var(--tertiary-color);
								font-family: "Open Sans", sans-serif;
								font-size: 16px;
								font-weight: 400;
								text-decoration: none;
							}

							&::before {
								content: 'chevron_right';
								font-family: 'Material Symbols Outlined';
								font-size: 16px;
								line-height: 1;
								position: absolute;
								left: 0;
								top: 50%;
								transform: translateY(-50%);
								width: 20px;
								height: 20px;
								display: flex;
								align-items: center;
								justify-content: center;
								color: #1D6D9D;
								background-color: var(--tertiary-color);
								border-radius: 50%;
								pointer-events: none;
							}
						}
					}
				}
			}

			.footer-3 {
				grid-column: span 2;
				display: flex;
				flex-direction: column;
				gap: 15px;

				.widget_text {
					margin: 0;
					border: 1px solid rgba(255, 255, 255, 0.2);
					border-radius: 10px;
					padding: 15px 1px 15px 15px;

					.widget-title {
						color: var(--tertiary-color);
						font-family: "Open Sans", sans-serif;
						font-size: 18px;
						font-weight: 700;
						line-height: 1.2;
						margin: 0 0 22px;
					}

					ul {
						display: flex;
						flex-direction: column;
						gap: 14px;
						margin: 0;
						padding: 0;
						list-style: none;
					}

					li {
						display: flex;
						align-items: flex-start;
						gap: 12px;
						color: #fff;
						font-family: "Open Sans", sans-serif;
						font-size: 16px;
						font-style: normal;
						font-weight: 400;
						line-height: normal;

						&::before {
							flex-shrink: 0;
							font-family: 'Material Symbols Outlined';
							font-size: 20px;
							line-height: 1;
							color: var(--tertiary-color);
						}

						&:nth-child(1)::before {
							content: 'location_on';
						}

						&:nth-child(2)::before {
							content: 'call';
						}
					}
				}
			}

		}

		.footer-bottom {
			display: flex;
			justify-content: space-between;
			align-items: center;
			border-top: 1px solid var(--tertiary-color);
			padding-top: 20px;

			.footer-copyright {
				color: var(--tertiary-color);
				font-size: 14px;
				font-family: "Open Sans", sans-serif;
			}
		}
	}
}


@media (max-width: 1024px) {
	:root {
		--gutter: var(--gutter-tablet);
	}

	.site-header .site-header__bar {
		gap: 28px;
		padding-inline: 28px;

		.site-header__menu .menu-item {
			font-size: 15px;
			padding-right: 24px;

			+ .menu-item {
				padding-left: 24px;
			}
		}

		.site-header__brand {
			padding-inline: 0;
		}
	}
	
	.entry-content {
	
		.info-section {
			.vc_inner.vc_row-fluid {
				column-gap: 24px;
				row-gap: 28px;

				> .wpb_column:nth-child(1) {
					margin-top: 40px;
				}

				> .wpb_column:nth-child(2) {
					margin-top: 20px;
				}

				> .wpb_column:nth-child(5) {
					margin-top: 28px;
				}
			}
		}
	
		#our-values >.wpb_column:nth-child(2) .vc_inner.vc_row-fluid {
			grid-template-columns: repeat(2, minmax(0, 1fr));
		}

		#contact_section {
			padding-top: 60px;
			padding-bottom: 60px;
	
			.vc_column-inner {
				padding: 0;
			}
		}

		#our-benefits {
			.vc_inner.vc_row-fluid {
				grid-template-columns: repeat(2, minmax(0, 1fr));
			}
		}

		#why-choose-us {
			.our-pillars {
				grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
			}
		}

		#our-team {
			grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		}

		#our-projects {
			grid-template-columns: repeat(2, minmax(0, 1fr));
			gap: 20px;

			> .wpb_column:not(:first-child) > .vc_column-inner {
				min-height: 330px;
			}
		}

		#our-strengths {
			grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

			&.--col-5 {
				grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
			}
		}

		#our-differences {
			grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		}

	}

	#location {
		> .wpb_column:nth-child(2) {
			.vc_inner.vc_row-fluid {
				grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
				gap: 20px;
			}
		}
	}

	#our-solutions {
		.vc_inner.vc_row-fluid {
			grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

			> .wpb_column {
				grid-column: auto !important;
			}
		}
	}

	.section {
		> .wpb_column:nth-child(1) {
			.vc_inner.vc_row-fluid {
				grid-template-columns: minmax(0, 1fr) !important;
			}

			.wpb_single_image img {
				max-width: min(100%, 900px);
			}
		}
	}
	
	.site-footer {
		.site-footer__inner {
			.footer-widgets {
				grid-template-columns: repeat(2, minmax(0, 1fr));
				gap: 40px;

				.footer-3 {
					grid-column: 1 / -1;
				}
			}
		}
	}

}

@media (max-width: 768px) {
	:root {
		--gutter: var(--gutter-mobile);
	}

	.site-header {
		.site-header__bar {
			display: grid;
			grid-template-columns: minmax(0, 1fr) auto;
			grid-template-areas: 'brand toggle';
			width: 100%;
			max-width: none;
			box-sizing: border-box;
			gap: 12px 16px;
			padding: 12px 16px 8px;

			.site-header__brand {
				grid-area: brand;
				padding-inline: 0;
				justify-self: start;

				.custom-logo-link {
					transform: none;
					min-width: 90px;
				}
			}

			.menu-toggle {
				display: block;
				grid-area: toggle;
				flex-shrink: 0;
				position: relative;
				width: 30px;
				height: 20px;
				padding: 0;
				border: 0;
				background: transparent;
				cursor: pointer;

				&::before,
				&::after {
					content: '';
					position: absolute;
					left: 0;
					right: 0;
					height: 2px;
					border-radius: 2px;
					background: var(--tertiary-color);
					transition: transform 0.25s ease, box-shadow 0.15s ease;
				}

				&::before {
					top: 0;
					box-shadow: 0 9px 0 var(--tertiary-color);
				}

				&::after {
					bottom: 0;
				}
			}

		}

		.site-header__bar > .site-header__nav {
			display: none;
			width: 100%;
			min-width: 0;

			.site-header__menu {
				flex-direction: column;
				align-items: flex-start;
				gap: 4px;
			}

			.site-header__menu .menu-item {
				padding: 8px 0;
			}

			.site-header__menu .menu-item + .menu-item {
				padding-left: 0;

				&::before {
					display: none;
				}
			}
		}

		.site-header__nav--left {
			grid-area: left;
		}

		.site-header__bar > .site-header__nav--right {
			grid-area: right;
			justify-content: flex-start;
			padding-top: 8px;
			border-top: 1px solid rgba(255, 255, 255, 0.16);
		}

		&.nav-open {
			.site-header__bar {
				grid-template-areas:
					'brand toggle'
					'left left'
					'right right';
				row-gap: 12px;
			}

			.site-header__bar > .site-header__nav {
				display: flex;
			}

			.menu-toggle::before {
				box-shadow: none;
				top: 9px;
				transform: rotate(45deg);
			}

			.menu-toggle::after {
				bottom: 9px;
				transform: rotate(-45deg);
			}
		}
	}

	#hero-home {
		min-height: 500px;
	}

	.entry-content {
	
		#hero {
			min-height: 555px;
		}
	
		#our-experience {
			padding-bottom: 48px;

			.vc_col-sm-6 {
				width: 100%;

				& + .vc_col-sm-6 {
					width: 100%;
					padding-left: 0;
				}
			}
		}

		.info-section {
			margin-top: 0 !important;
			padding-bottom: 80px;

			& .__title {
				margin-bottom: 24px;
			}

			& .vc_inner.vc_row-fluid {
				grid-template-columns: minmax(0, 1fr) !important;
				row-gap: 20px;
				column-gap: 0;

				> .wpb_column {
					grid-column: auto !important;
					grid-row: auto !important;
					margin-top: 0 !important;

					> .vc_column-inner {
						min-height: 252px;
					}
				}
			}
		}
	
		#our-values >.wpb_column:nth-child(2) .vc_inner.vc_row-fluid {
			grid-template-columns: minmax(0, 1fr);
		}
	
		#contact_section {
			padding-top: 60px;
			padding-bottom: 60px;
	
			.vc_column-inner {
				padding: 0;
			}
		}

		.promotional-banner {
			flex-flow: column nowrap !important;
			align-items: flex-start !important;
			text-align: left;
			gap: 20px;
			padding-block: 48px;

			> .wpb_column {
				flex: 1 1 100% !important;
				width: 100% !important;

				&:last-child {
					flex: 1 1 100% !important;
				}
			}

			.__title {
				* {
					font-size: clamp(28px, 7vw, 36px);
					line-height: 1.2;
				}
			}

			.__btns {
				p {
					text-align: left;
				}
			}
		}

		#our-benefits {
			.vc_inner.vc_row-fluid {
				grid-template-columns: minmax(0, 1fr) !important;
				gap: 20px;
			}
		}

		#why-choose-us {
			grid-template-columns: minmax(0, 1fr) !important;
			grid-template-areas:
				'top-copy'
				'top-gallery'
				'cta'
				'pillars' !important;
			row-gap: 0;

			> .wpb_column:nth-child(1),
			> .wpb_column:nth-child(2) {
				padding-top: 48px;
				padding-bottom: 32px;
			}

			> .wpb_column:nth-child(2) {
				padding-top: 0;
			}

			> .wpb_column:first-child .__title * {
				font-size: clamp(28px, 7vw, 36px);
				line-height: 1.2;
			}

			#mansory-carousel {
				> .vc_column-inner > .wpb_wrapper {
					width: 100%;
					margin-right: 0;
				}

				.masonry-carousel {
					height: auto;
					max-height: none;
					padding-bottom: 36px;
				}

				.masonry-slide {
					grid-template-columns: minmax(0, 1fr);
					grid-template-rows: auto;
					height: auto;
					gap: 16px;

					.wpb_single_image {
						height: auto;
						min-height: 200px;

						&:first-child {
							grid-column: 1;
							grid-row: auto;
							min-height: 280px;
						}

						&:nth-child(2),
						&:nth-child(3) {
							grid-column: 1;
							grid-row: auto;
							min-height: 160px;
						}
					}
				}

				.swiper-slide {
					height: auto !important;
				}
			}

			.our-pillars {
				grid-template-columns: minmax(0, 1fr) !important;
				padding-block: 48px;

				> .wpb_column:first-child .__title * {
					font-size: clamp(28px, 7vw, 36px);
					line-height: 1.2;
				}
			}
		}


		#our-team {
			grid-template-columns: minmax(0, 1fr) !important;
			gap: 20px;
			padding-block: 48px;
		}

		#our-projects {
			grid-template-columns: minmax(0, 1fr);
			gap: 20px;
			padding-block: 48px;

			> .wpb_column:first-child {
				margin-bottom: 4px;
			}

			> .wpb_column:not(:first-child) > .vc_column-inner {
				min-height: 320px;
			}
		}

		#our-strengths {
			grid-template-columns: minmax(0, 1fr) !important;
			gap: 20px;
			padding-block: 48px;

			&.--col-5 {
				grid-template-columns: minmax(0, 1fr) !important;
			}

			> .wpb_column:first-child {
				.__title * {
					font-size: clamp(28px, 7vw, 36px);
					line-height: 1.2;
				}
			}
		}

		#our-differences {
			grid-template-columns: minmax(0, 1fr) !important;
			gap: 20px;
			padding-block: 48px;

			> .wpb_column:first-child {
				.__title * {
					font-size: clamp(28px, 7vw, 36px);
					line-height: 1.2;
				}
			}
		}

		#contact_us {
			grid-template-columns: minmax(0, 1fr) !important;
			grid-template-areas: 'copy' 'form' !important;
			gap: 32px;
			padding-block: 48px;

			> .wpb_column:first-child {
				.__title {
					> .wpb_wrapper {
						padding-left: 48px;
					}

					* {
						font-size: clamp(28px, 7vw, 32px);
						line-height: 1.2;
					}
				}

				.__text {
					padding-left: 48px;
					margin-bottom: 32px !important;
				}
			}

			> .wpb_column:last-child {
				.wpcf7-form {
					grid-template-columns: minmax(0, 1fr) !important;
					padding: 28px 24px;
					gap: 16px;
				}

				.col-50--submit {
					justify-content: flex-start;
				}
			}
		}
	
	}

	#location {
		grid-template-columns: minmax(0, 1fr) !important;
		padding-block: 48px;
		gap: 24px;

		> .wpb_column:nth-child(1) {
			.__title * {
				font-size: clamp(28px, 7vw, 34px);
				line-height: 1.15;
			}
		}

		> .wpb_column:nth-child(2) {
			.vc_inner.vc_row-fluid {
				grid-template-columns: minmax(0, 1fr) !important;
				gap: 0;

				> .wpb_column {
					> .vc_column-inner {
						padding: 0 0 20px !important;
						border-right: 0;
						border-bottom: 1px solid rgba(29, 109, 157, 0.22);
					}

					&:last-child > .vc_column-inner {
						padding-bottom: 0 !important;
						border-bottom: 0;
					}
				}
			}
		}

		> .wpb_column:nth-child(3),
		> .wpb_column:nth-child(4) {
			order: 0;

			> .vc_column-inner > .wpb_wrapper {
				grid-template-columns: minmax(0, 1fr) !important;
				min-height: 0;
			}
		}
	}

	#our-solutions {
		padding-block: 48px;

		.vc_inner.vc_row-fluid {
			grid-template-columns: minmax(0, 1fr) !important;
			gap: 20px;

			> .wpb_column .__text {
				max-height: 12em;
				opacity: 1;
				margin-top: 10px;
			}
		}
	}

	.section {
		> .wpb_column:nth-child(1) {
			padding-top: 48px;
			padding-bottom: 40px;

			.__title * {
				font-size: clamp(28px, 7vw, 36px);
				line-height: 1.2;
			}

			.__list ul {
				grid-template-columns: minmax(0, 1fr);
			}
		}

		.__dark {
			padding-block: 48px;

			.__title * {
				font-size: clamp(28px, 7vw, 36px);
				line-height: 1.2;
			}
		}
	}

	.site-footer {
		padding-block: 56px;

		.site-footer__inner {
			.footer-widgets {
				grid-template-columns: minmax(0, 1fr);
				gap: 32px;
				padding-bottom: 32px;

				.footer-1,
				.footer-2,
				.footer-3 {
					grid-column: auto;
				}

				.footer-1 {
					text-align: center;

					.widget_media_image img {
						display: block;
						margin-inline: auto;
					}

					.widget_text p + p {
						margin-top: 24px;
					}
				}

				.footer-2 {
					.widget_nav_menu .menu {
						display: grid;
						grid-template-columns: repeat(2, minmax(0, 1fr));
						column-gap: 24px;
						row-gap: 14px;
					}
				}
			}

			.footer-bottom {
				flex-direction: column;
				align-items: flex-start;
				gap: 20px;
			}
		}
	}

}

@media (prefers-reduced-motion: reduce) {
	#our-experience .content-img .wpb_wrapper::after,
	.our-mission > .wpb_column:first-child .__title > .wpb_wrapper::after,
	.our-mission > .wpb_column:nth-child(2) .wpb_wrapper::after {
		animation: none;
	}

	#our-values>.wpb_column:first-child .vc_inner.vc_row-fluid>.wpb_column:first-child>.vc_column-inner>.wpb_wrapper::after {
		animation: none;
	}

	#why-choose-us>.wpb_column:first-child .__title>.wpb_wrapper::after,
	#why-choose-us .our-pillars>.wpb_column:first-child .__title>.wpb_wrapper::after,
	#our-strengths > .wpb_column:first-child .__title > .wpb_wrapper::after,
	.section > .wpb_column:first-child .__title > .wpb_wrapper::after,
	.section .__dark .__title > .wpb_wrapper::after,
	#contact_us > .wpb_column:first-child .__title > .wpb_wrapper::after {
		animation: none;
	}

	.animate-icon .vc_single_image-wrapper::before,
	.animate-icon .vc_single_image-wrapper::after {
		animation: none;
	}

	.info-section .vc_inner>.wpb_column:hover>.vc_column-inner::before {
		transform: none;
	}

	#our-solutions .vc_inner>.wpb_column .__text,
	#our-projects > .wpb_column:not(:first-child) .__text {
		transition: none;
	}
}
