/*
Theme Name: KPSFund
Theme URI: kpsfund.com
Author: Krunoslav Stefanovski
Author URI: krunodesign.com
Description: DESC
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/

@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');

:root {
	--header: #01244C;
	--dark: #002752;
	--border-color: #B2BECB;
	--transition: cubic-bezier(.4,0,.6,1);
}

html {
	scroll-behavior: smooth;
}

input,
select,
textarea,
button
{
	font-family: "Open Sans", sans-serif;
}

body
{
	font-family: 'Open Sans', sans-serif;
	background-color: #fff;
}

.wrapper
{
	max-width: 2100px;
	width: 90%;
	/* padding: 0 64px; */
	margin: 0 auto;
}

section
{
	padding: 50px 0;
	background-color: #fff;
}

/* Loader */
.loader
{
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: 1000;
	display: flex;
	justify-content: center;
	align-items: center;
}

.loader img
{
	min-width: 100%;
	min-height: 100%;
	object-fit: cover;
	transform-origin: 52% 50%;
    scale: 62;
}

.loader-desktop
{
	display: block;
}

.loader-mobile
{
	display: none;
}

.loader.loaded img
{
	animation: zoomIn 3s ease;
	animation-direction: forward;
}

.loader.close
{
	opacity: 0;
	visibility: hidden;
}

@keyframes zoomIn {
	0% {
		scale: 1;
	}
	20% {
		scale: 1;
	}
	100% {
		transform-origin: 52% 50%;
		scale: 62;
	}
}

/* --------------------------------------------------------------------------------------------------- */
/* Homepage */
/* --------------------------------------------------------------------------------------------------- */

/* Header */
.header-home
{
	width: 100%;
	min-height: 100vh;
	background-image: url('assets/images/homepage-header2.png');
	background-size: auto 130%;
	background-position: center;
	background-repeat: no-repeat;
	background-attachment: fixed;
	position: relative;
	padding-top: 180px;
	display: flex;
	align-items: flex-end;
	justify-content: flex-start;
}

nav
{
	position: absolute;
	width: 100%;
	top: 0;
	display: flex;
	padding: 30px 0;
	z-index: 1;
}

.page-nav
{
	position: relative;
	background-color: var(--header);
}

	nav .wrapper
	{
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	nav .nav-buttons
	{
		display: flex;
		align-items: center;
		gap: 13px;
	}

		nav .nav-buttons .btn-search.active
		{
			background-color: rgba(255, 255, 255, 1);
    		color: #01244C;
			transform: translateY(-5px) !important;
		}

		nav .nav-search 
		{
			position: absolute;
			left: 0;
			background-color: var(--header);
			top: 100%;
			width: 100%;
			height: 0;
			overflow: hidden;
			transition: 0.3s var(--transition);
		}
		
		nav.home-nav .nav-search 
		{
			background-color: transparent;
		}

		nav .nav-search.active
		{
			height: 120px;
		}

		nav.home-nav .nav-search.active
		{
			background-color: transparent;
			height: 80px;
		}

			nav .nav-search input
			{
				width: 100%;
				height: 70px;
				border: none;
				border-bottom: 1px solid var(--border-color);
				background-color: transparent;
				outline: none;
				box-shadow: none;
				font-size: 20px;
				padding: 10px 20px 10px 60px;
				color: #fff;
			}

			nav .nav-search input::placeholder
			{
				color: rgba(255, 255, 255, .8);
			}
			
			nav .nav-search button
			{
				width: 50px;
				height: 50px;
				display: flex;
				justify-content: center;
				align-items: center;
				position: absolute;
				top: 50%;
				left: 0;
				transform: translateY(-50%);
				background-color: transparent;
				outline: none;
				border: none;
				cursor: pointer;
			}
			
			nav .nav-search .p-relative
			{
				width: 100%;
			}

		nav .nav-buttons .nav-search .nav-search-dropdown
		{
			position: absolute;
			top: 100%;
			right: 0;
			width: 300px;
			padding: 10px;
			opacity: 0;
			visibility: hidden;
			background-color: #fff;
			display: flex;
			flex-direction: column;
			box-shadow: 0 3px 8px rgba(0, 0, 0, 0.05);
			border-radius: 5px;
			transform: translateY(-5px) !important;
			transition: 0.3s var(--transition);
		}

		nav .nav-buttons .nav-search.active .nav-search-dropdown
		{
			opacity: 1;
			visibility: visible;
			transform: translateY(0) !important;
		}

			nav .nav-buttons .nav-search .nav-search-dropdown input 
			{
				width: 100%;
				height: 50px;
				border: none;
				border-bottom: 1px solid var(--dark);
				background-color: transparent;
				outline: none;
				box-shadow: none;
				font-size: 17px;
				padding: 10px 20px 10px 60px;
				color: var(--dark);
			}

			nav .nav-buttons .nav-search .nav-search-dropdown button
			{
				width: 50px;
				height: 50px;
				display: flex;
				justify-content: center;
				align-items: center;
				position: absolute;
				top: 0;
				left: 0;
				background-color: transparent;
				outline: none;
				border: none;
				cursor: pointer;
				padding: 10px;	
			}


	
	nav .nav-buttons .nav-search,
	nav .nav-buttons .multilanguage
	{
		position: relative;
	}

	nav .nav-buttons .nav-search:hover > a,
	nav .nav-buttons .multilanguage:hover > a
	{
		background-color: rgba(255, 255, 255, 1);
    	color: #01244C;
		transform: translateY(-5px) !important;
    	transition-delay: 0s !important;
	}
	
		nav .nav-buttons .multilanguage .multilanguage-dropdown
		{
			position: absolute;
			top: 100%;
			width: 150px;
			opacity: 0;
			visibility: hidden;
			background-color: #fff;
			display: flex;
			flex-direction: column;
			box-shadow: 0 3px 8px rgba(0, 0, 0, 0.05);
			border-radius: 5px;
			transform: translateY(-5px) !important;
			transition: 0.3s var(--transition);
		}

		nav .nav-buttons .multilanguage:hover .multilanguage-dropdown
		{
			opacity: 1;
			visibility: visible;
			transform: translateY(0) !important;
		}

			nav .nav-buttons .multilanguage .multilanguage-dropdown a
			{
				display: flex;
				align-items: center;
				grid-gap: 5px;
				color: var(--dark);
				padding: 15px 10px;
				transition: 0.2s var(--transition);
			}

				nav .nav-buttons .multilanguage .multilanguage-dropdown a img
				{
					width: 18px;
					height: 18px;
					display: none;
				}

			nav .nav-buttons .multilanguage .multilanguage-dropdown a.gt-current-lang,
			nav .nav-buttons .multilanguage .multilanguage-dropdown a:hover
			{
				color: #6AA3D8;
				font-weight: 500 !important;
			}

	.header-home .header-content h1
	{
		max-width: 990px;
		width: 100%;
	}
	
	.header-home .header-content p
	{
		max-width: 525px;
		width: 100%;
		margin-top: 32px;
	}

	.header-home .header-bottom
	{
		margin-top: 50px;
		padding-bottom: 80px;
	}

	.header-home .header-articles
	{
		max-width: 518px;
		width: 100%;
		display: flex;
		padding: 20px;
		margin: 0 0 0 auto;
		background-color: rgba(255, 255, 255, 0.13);
		backdrop-filter: blur(25px);
		border-radius: 5px;
		position: relative;
	}

		.header-home .header-articles .header-article-arrow
		{
			position: absolute;
			bottom: 0;
			right: 20px;
			display: flex;
			grid-gap: 10px;
		}

		.header-home .header-articles .slick-dots
		{
			position: absolute;
			bottom: 27px;
			left: 20px;
			display: flex;
			grid-gap: 10px;
			z-index: 1;
		}

			.header-home .header-articles .slick-dots li 
			{
				display: flex;
				justify-content: center;
				align-items: center;
			}

			.header-home .header-articles .slick-dots li button
			{
				display: flex;
				padding: 0;
				outline: none;
				border: none;
				background-color: rgba(255, 255, 255, .5);
				font-size: 0;
				width: 8px;
				height: 8px;
				border-radius: 100px;
				cursor: pointer;
				transition: .3s var(--transition);
			}

			.header-home .header-articles .slick-dots li.slick-active button
			{
				background-color: rgba(255, 255, 255, 1);
				width: 26px;
			}

		.header-home .header-articles .header-article
		{
			width: 100%;
			display: flex;
			flex-direction: column;
			position: relative;
			height: auto;
			padding-bottom: 40px;
		}

			.header-home .header-articles p
			{
				color: #fff;
				opacity: .7;
			}
			.header-home .header-articles h6
			{
				max-width: 390px;
				width: 100%;
			}

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


/* About Us */

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

	section.about .wrapper
	{
		
		border-bottom: 1px solid #B2BECB;
		padding-bottom: 50px;
	}

	.about-cards::before
	{
		width: 0%;
		height: 1px;
		background-color: #B2BECB;
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		transition: 1s var(--transition)
	}

	.about-cards.trigger.active::before
	{
		width: 100%;
		transition-delay: 1s;
	}
	
	.about-cards
	{
		position: relative;
	}

		section.about .about-cards .about-card:nth-child(2):before,
		section.about .about-cards .about-card:nth-child(2):after
		{
			width: 1px;
			height: 0%;
			background-color: #B2BECB;
			content: "";
			position: absolute;
			top: 0;
			left: 0;
			transition-delay: 3s;
			transition: 1s var(--transition)
		}

		section.about .about-cards .about-card:nth-child(2):after
		{
			left: unset;
			right: 0;
		}

		section.about .about-cards.trigger.active .about-card::before,
		section.about .about-cards.trigger.active .about-card::after
		{
			transition-delay: 1s;
			height: 100%;
		}

		section.about .about-cards .about-card
		{
			position: relative;
			height: auto;
		}

		section.about .about-cards .about-card:first-child .about-card-content
		{
			padding: 50px 60px 50px 0;
		}

		section.about .about-cards .about-card:nth-child(2) .about-card-content
		{
			padding: 50px 20px 50px;
		}
		
		section.about .about-cards .about-card:last-child .about-card-content
		{
			padding: 50px 0 50px 30px;
		}
		
			section.about .about-cards .about-card .about-card-content
			{
				height: 100%;
				display: flex;
				align-items: flex-start;
				flex-direction: column;
				padding: 50px 0;
			}

/* About Articles */
.about-articles-cards
{
	/* background-color: #41659E; */
	/* background-image: url('assets/images/about-articles-lines.svg'); */
	background-size: auto 100%;
	background-repeat: no-repeat;
	display: grid;
	grid-template-columns: 1fr 1fr;
	position: relative;
}

.about-articles-cards .animated-lines
{
	position: absolute;
	left: 0;
	bottom: 0;
	height: 100%;
}

	.about-articles-cards .about-article-card
	{
		width: 100%;
		height: 100%;
		min-height: 450px;
		display: flex;
		justify-content: space-between;
		flex-direction: column;
		padding: 50px 40px 60px;
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
		background-color: #41659E;
		position: relative;
	}

		.about-articles-cards .about-article-card.empty::after
		{
			content: "";
			width: 100%;
			height: 100%;
			background-color: rgba(0, 0, 0, 0.3);
			position: absolute;
			left: 0;
			top: 0;
			z-index: 1;
		}
			.about-articles-cards .about-article-card.empty video
			{
				width: 100%;
				height: 100%;
				object-fit: cover;
				position: absolute;
				top: 0;
				left: 0;
			}


		.about-articles-cards .about-article-card.kps-belives
		{
			background-image: url('assets/images/business-better.jpg');
			background-size: 100% 100%;
			background-position: center;
			background-repeat: no-repeat;
			justify-content: flex-end;
		}
	
		.about-articles-cards .about-article-card.empty
		{
			/* background-image: url('assets/images/kps-difference.jpg'); */
			/* background-size: 100% 100%; */
			/* background-position: center; */
			/* background-repeat: no-repeat; */
		}
		
		.about-articles-cards .about-article-card.business-better
		{
			background-image: url('assets/images/about-articles-lines.svg');
			background-size: 1300px;
			background-position: left bottom;
		}

		.about-articles-cards .about-article-card.kps-difference
		{
			background-size: 1300px;
			background-position: right bottom;
			background-image: url('assets/images/about-articles-lines.svg');
			background-color: #1B3B5F;
		}

	.about-article-card h4
	{
		padding-top: 25px;
		color: #fff;
		margin-bottom: 25px;
		border-top: 1px solid #fff;
	}

	.kps-difference
	{
		background-color: rgba(0, 0, 0, 0.4);
	}


/* KPS Features */
.kps-features
{
}

	.kps-features .kps-numbers
	{
		display: flex;
		justify-content: flex-start;
		margin-top: 40px;
		background: #012854;
		background: linear-gradient(180deg, rgba(1, 40, 84, 1) 0%, rgba(1, 40, 84, 1) 20%, rgba(43, 96, 155, 1) 100%);
	}

		.kps-features .kps-numbers .private-equity,
		.kps-features .kps-numbers .active-portfolio
		{
			flex: 1;
		}


		.kps-features .kps-numbers .kps-number-header
		{
			padding: 10px 0 30px;
			background-color: #fff;
		}

		.kps-features .kps-numbers .kps-numbers-content
		{
			padding: 25px 30px;
			gap: 20px;
			margin: 25px 0;
			position: relative;
		}

		.kps-features .kps-numbers .active-portfolio .kps-numbers-content::before
		{
			content: "";
			width: 1px;
			height: 100%;
			background-color: #B2BECB;
			position: absolute;
			left: 0;
			top: 0;
			z-index: 1;
		}

			.kps-features .kps-numbers .kps-numbers-content .row
			{
				row-gap: 70px;
			}

				.kps-features .kps-numbers .kps-numbers-content .kps-number-content
				{
					padding-left: 20px;
					border-left: 1px solid #366191;
				}

					.kps-features .kps-numbers .kps-numbers-content .kps-number-content .assets::before, 
					.kps-features .kps-numbers .kps-numbers-content .kps-number-content .revenue::before 
					{ content: "$"; }
					
					.kps-features .kps-numbers .kps-numbers-content .kps-number-content .assets::after, 
					.kps-features .kps-numbers .kps-numbers-content .kps-number-content .revenue::after 
					{ content: "B"; }
					
					.kps-features .kps-numbers .kps-numbers-content .kps-number-content .years::after,
					.kps-features .kps-numbers .kps-numbers-content .kps-number-content .complex-investments::after, 
					.our-story .platform-num::after,
					.our-story .acquisitions-num::after
					{ content: "+"; }
					
					.kps-features .kps-numbers .kps-numbers-content .kps-number-content .employees::after { content: "K"; }
					
					.kps-features .kps-numbers .kps-numbers-content .kps-number-content .odometer-inside,
					.our-story .platform-num,
					.our-story .acquisitions-num
					{
						display: inline-flex;
					}

				
					.kps-features .kps-numbers .kps-numbers-content .kps-number-content h2
					{
						color: #fff;
						font-weight: 400;
						font-size: 56px;
						line-height: 130%;
					}

					.kps-features .kps-numbers .kps-numbers-content .kps-number-content p
					{
						text-transform: uppercase;
						line-height: 24px;
					}


/* Active Investments */
.investments
{
	padding: 0 0 35px;
}

.investments .investment
{
	width: 100%;
	height: 700px;
	border-radius: 8px;
	padding: 30px 20px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	overflow: hidden;
	position: relative;
	background-position: bottom;
	background-size: 100% 100%;
	background-repeat: no-repeat;
}

.investments .investment:hover
{
	background-size: 103% 103%;
}

	.investments .investment .investment-background
	{
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		z-index: -1;
		display: flex;
		justify-content: center;
		align-items: center;
	}

		.investments .investment .investment-background img
		{
			min-width: 100%;
			min-height: 100%;
			object-fit: cover;
		}

		.investments .investment .investment-logo
		{
			width: 100%;
		}
		
			.investments .investment .investment-logo img
			{
				max-width: 180px;
				max-height: 60px;
				object-fit: cover;
				filter: brightness(25) contrast(100);
			}

		.investments .investment .investment-content
		{
			position: absolute;
			bottom: -320px;
			left: 0;
			width: 100%;
			padding: 80px 20px 30px 20px;
			background: rgba(1, 40, 84, 1);
			background: linear-gradient(180deg, rgba(1, 40, 84, 1) 0%, rgba(43, 96, 155, 1) 100%);
			transition: 0.4s var(--transition)
		}

			.investments .investment .investment-content .investment-arrow
			{
				text-align: right;
				margin-bottom: 10px;
				position: absolute;
				top: 30px;
				right: 20px;
				transition: 0.4s var(--transition)
			}

			.investments .investment .investment-content h4
			{
				font-size: 28px;
				line-height: 130%;
				color: #fff;
				font-weight: 400;
				height: 70px;
				display: flex;
				align-items: flex-end;
			}

			.investments .investment .investment-content p
			{
				margin-top: 40px;
				margin-bottom: 150px;
				opacity: 0;
				visibility: hidden;
				transition-delay: 0.5s;
				height: 150px;

				transition: 0.4s var(--transition)
			}

			.investments .investment .investment-content .read-more
			{
				opacity: 0;
				visibility: hidden;
				transition-delay: 0.5s;
				transition: 0.4s var(--transition)
			}

	.investments .investment:hover .investment-content
	{
		padding: 30px 25px 30px 25px;
		bottom: 0;
	}

	.investments .investment:hover .investment-content .investment-arrow
	{
		opacity: 0;
		visibility: hidden;
	}

	.investments .investment:hover .investment-content p,
	.investments .investment:hover .investment-content .read-more
	{
		opacity: 1;
		visibility: visible;
	}

	.investments .slick-arrow
	{
		position: absolute;
		bottom: 5px;
		left: 0;
		font-size: 16px;
		color: #012752;
		background-color: transparent;
		padding: 5px 10px;
		border: none;
		outline: none;
		cursor: pointer;
		text-transform: uppercase;
	}
	
	.investments .slick-arrow.slick-prev
	{
		left: 0;
	}

	.investments .slick-arrow.slick-next
	{
		left: unset;
		right: 0;
	}

	.investments .slick-dots
	{
		display: flex;
		justify-content: center;
		align-items: center;
		grid-gap: 10px;
		margin-top: 30px;
	}

		.investments .slick-dots li button
		{
			width: 32px;
			height: 32px;
			border: 1px solid transparent;
			display: flex;
			justify-content: center;
			align-items: center;
			padding: 0;
			color: #012752;
			background-color: #fff;
			border-radius: 100%;
			font-size: 18px;
			cursor: pointer;
		}

		.investments .slick-dots li.slick-active button
		{
			border: 1px solid #012752;
			color: #012752;
		}



/* News */
.news
{
}

	.mini-news
	{

	}

		.mini-news .new
		{
			padding: 20px 0;
			border-bottom: 1px solid #1C2455;
		}

			.mini-news .new p
			{
				margin-bottom: 20px;
			}


/* Footer */
footer
{
	background-color: var(--header);
	padding: 80px 0 40px;
}

	footer ul
	{

	}

		footer ul li a
		{
			display: flex;
			color: #fff;
			padding: 10px 0;
			font-size: 16px;
		}

		footer p,
		footer a
		{
			font-size: 16px;
			color: #fff;
			line-height: 24px;
		}




.fade-in,
.header-fade-in 
{
	opacity: 0;
	transform: translateY(60px);
	transition: all 0.8s var(--transition)
}

.fade-in.in-view,
.header-fade-in.in-view 
{
	opacity: 1;
	transform: translateY(0);
}


.fade-in-right
{
	opacity: 0;
	transform: translateX(60px);
	transition: all 0.8s var(--transition)
}

.fade-in-right.in-view
{
	opacity: 1;
	transform: translateX(0);
}

.fade-in-left
{
	opacity: 0;
	transform: translateX(-60px);
	transition: all 0.8s var(--transition)
}

.fade-in-left.in-view
{
	opacity: 1;
	transform: translateX(0);
}

.fade-in.delay-1.in-view, .header-fade-in.delay-1.in-view { transition-delay: 100ms; }
.fade-in.delay-2.in-view, .header-fade-in.delay-2.in-view { transition-delay: 200ms; }
.fade-in.delay-3.in-view, .header-fade-in.delay-3.in-view { transition-delay: 300ms; }
.fade-in.delay-4.in-view, .header-fade-in.delay-4.in-view { transition-delay: 400ms; }
.fade-in.delay-5.in-view, .header-fade-in.delay-5.in-view { transition-delay: 500ms; }
.fade-in.delay-6.in-view, .header-fade-in.delay-6.in-view { transition-delay: 600ms; }


/* the slides */
.slick-slide {
	margin: 0 10px;
	outline: none;
	box-shadow: none;
}

/* the parent */
.slick-list {
	margin: 0 -10px;
}


/* ------------------------------------------------------------------------------------------------ */
/* About Pages */
/* ------------------------------------------------------------------------------------------------ */
.header-about
{
	padding: 60px 0;
	background-color: #fff;
}

	.header-about .thumbnail-about
	{
		aspect-ratio: 1305/465;
	}

	.header-about ul,
	.sidebar
	{
		padding-left: 50px;
	}

			.header-about ul li a,
			.sidebar li a
			{
				color: var(--dark);
				padding: 7px;
				font-size: 18px;
				display: flex;
				align-items: center;
				text-transform: uppercase;
				position: relative;
				left: 0;
				transition: .3s var(--transition);
			}

			.header-about ul li.active a,
			.sidebar li.active a
			{
				color: #6AA3D8;
			}
			
			.header-about ul li:not(.active):hover a,
			.sidebar .li:not(.active):hover a
			{
				color: #6AA3D8;
				left: 10px;
			}

	.thumbnail-tabnav
	{
		aspect-ratio: 386/253;
	}

	.tabs-nav 
	{
		position: sticky;
		top: 50%;
		transform: translateY(-50%);
	}

		.tabs-nav ul 
		{
			list-style: none;
			margin: 0;
			padding: 0;
			position: relative;
		}

			.tabs-nav li 
			{
				position: absolute;
				top: 10px;
				left: 0;
				opacity: 0;
				width: 450px;
				pointer-events: none;
				transition: 0.2s var(--transition);
			}

			.tabs-nav li.active 
			{
				opacity: 1;
				pointer-events: auto;
				top: 0;
				position: relative;
			}

	.tabs-content .tab-section 
	{
		margin: 0 0 60px; /* fine to have spacing, but keep consistent */
		padding: 80px 0; /* visible area */
		position: relative;
	}

	.tabs-content .tab-section#story
	{
		padding: 0 0 80px;
	}
	.tabs-content .tab-section#impact
	{
		padding: 80px 0 140px;
	}


		.tabs-content .tab-section .border-left
		{
			padding-left: 20px;
		}


	.tabs-content .tab-section:last-child
	{
		padding: 0;
	}




.focus
{
	background-color: rgba(235, 235, 235, .44);
	text-align: center;
}

	.focus h2
	{
		color: #667D97;
	}
	.focus h4
	{
		max-width: 1044px;
		margin: 30px auto 0;
	}


	/* Fixed trigger marker line (follows scroll center) */
.scroll-trigger-line {
  position: fixed;
  top: 50%;
  right: 20px;
  width: 1px;
  height: 20px;
  background: red;
  transform: translateY(-50%);
  z-index: 9999;
  pointer-events: none;
}

/* Section trigger start lines (static, placed at each section offset) */
.section-trigger-line {
  position: absolute;
  right: 20px;
  width: 1px;
  height: 20px;
  background: rgba(0, 0, 0, 0.2);
  z-index: 9998;
}

/* Section Roadmap */
section.roadmap
{
	background-color: #022956;
	overflow: hidden;
	width: 100%;
}

	.roadmap-slick
	{
		padding-bottom: 50px;
	}

	.roadmap .roadmap-item
	{
		display: inline-flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		position: relative;
		box-shadow: none;
		outline: none;
	}
	
	.roadmap .roadmap-item::after
	{
		content: "";
		position: absolute;
		top: 137px;
		width: 100%;
		height: 1px;
		background-color: #ffffff40;
	}

	.roadmap .roadmap-item:first-child::after
	{
		width: 50%;
		left: 50%;
	}

	.roadmap .roadmap-item:last-child::after
	{
		width: 50%;
		right: 50%;
	}

	.roadmap .roadmap-item .roadmap-item-content
	{
		display: inline-flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}

		.roadmap .roadmap-item .year
		{
			font-size: 100px;
			font-weight: 600;
			line-height: 90px;
			height: 90px;
			color: #fff;
			background-image: linear-gradient(rgba(255, 255, 255, .4), rgba(255, 255, 255, 0));
			color: transparent;
			background-clip: text;
		}

			.roadmap .roadmap-item .circle
			{
				position: relative;
				z-index: 1;
				display: flex;
				justify-content: center;
				align-items: center;
				width: 34px;
				height: 34px;
				border-radius: 100%;
				margin-top: 30px;
				background-color: rgba(64, 115, 192, 0.2);
			} 

				.roadmap .roadmap-item .circle:after
				{
					position: absolute;
					content: "";
					z-index: 2;
					width: 26px;
					height: 26px;
					border-radius: 100%;
					background-color: rgba(64, 115, 192, 0.4);
				} 
				
				.roadmap .roadmap-item .circle:before
				{
					position: absolute;
					content: "";
					z-index: 3;
					width: 16px;
					height: 16px;
					border-radius: 100%;
					background-color: rgba(64, 115, 192, 1);
				} 

				.roadmap .roadmap-item .details
				{
					width: 233px;
					max-width: 233px;
					margin-top: 20px;
					border-radius: 5px;
					padding: 13px 20px;
					min-height: 117px;
					background-color: #4073C0;
				}
				
				.roadmap .roadmap-item .details.white
				{
					background-color: #ECEFF3;
				}

					.roadmap .roadmap-item .details.white p
					{
						color: var(--dark);
					}
					
					.roadmap .roadmap-item .details p
					{
						font-size: 16px;
						line-height: 22px;
						color: #fff;
					}


	.roadmap .slick-arrow
	{
		width: 50px;
		height: 50px;
		position: absolute;
		bottom: -40px;
		transform: translateX(-50%);
		background-position: center;
		background-repeat: no-repeat;
		background-size: 80%;
		outline: none;
		border: 0;
		background-color: transparent;
		cursor: pointer;
		transition: .3s var(--transition);
		font-size: 0;
		left: calc(50% + 40px);
	}

	.roadmap .slick-prev
	{
		background-image: url('./assets/images/slick-left.svg');
		left: calc(50% - 40px);
	}
	
	.roadmap .slick-arrow.slick-next
	{
		background-image: url('./assets/images/slick-right.svg');
	}

	.roadmap .slick-arrow.slick-disabled
	{
		opacity: 0.6;
	}

	.roadmap .slick-track
	{
		position: relative;
	}

	.roadmap .slick-slide
	{
		margin: 0 !important;
	}

	.roadmap .slick-dots
	{
		display: flex;
		justify-content: center;
		align-items: center;
		grid-gap: 10px;
		margin-top: 30px;
	}

		.roadmap .slick-dots button
		{
			width: 12px;
			height: 12px;
			border-radius: 100%;
			font-size: 0;
			background-color: #ffffff40;
			border: 0;
			outline: none;
			cursor: pointer;
			transition: .3s var(--transition);
		}

		.roadmap .slick-dots li.slick-active button
		{
			background-color: #ffffff;
		}

/* Global */

section.global
{
}

	.global h4
	{
		/* max-width: 1044px; */
		margin: 30px auto 0;
	}


/* World Map */
section.world
{
	background-color: #E5ECF4;
	text-align: center;
	z-index: 1000;
}

#world-map {
	width: 100%;
	height: 800px;
}

	.world .world-map
	{
		display: flex;
		align-items: flex-start;
		grid-gap: 30px;
	}

		.world .world-map > div
		{
			width: 100%;
		}

		.world .world-map .world-map-svg
		{
			width: 100%;
			height: 800px;
		}

		.world .world-map .world-map-sidebar
		{
			width: 400px;
			z-index: 10;
		}

		.world .world-map .world-map-sidebar .regions
		{
			width: 400px;
			max-height: 800px;
			overflow-y: auto;
			scrollbar-color: rgba(0, 0, 0, .2) transparent;
			scrollbar-width: thin;
			overflow-x: hidden;
			z-index: 10;
		}

			.world .world-map .world-map-sidebar .regions .region
			{
				list-style: none;
				margin: 0;
				padding: 0;
				margin: 10px 0;
			}

				.world .world-map .world-map-sidebar .regions .region h4
				{
					padding: 20px 30px;
					background-color: #fff;
					border-radius: 5px;
					font-size: 20px;
					font-weight: 600;
					cursor: pointer;
					text-align: left;
					display: flex;
					align-items: center;
					position: relative;
				}

				.world .world-map .world-map-sidebar .regions .region h4::after
				{
					content: "";
					width: 40px;
					height: 40px;
					position: absolute;
					right: 0;
					background-image: url('./assets/images/select-arrow.svg');
					background-position: center;
					background-repeat: no-repeat;
					background-size: 40%;
					transform: rotate(0deg);
					transition: .3s var(--transition);
				}

				.world .world-map .world-map-sidebar .regions .region.active h4::after
				{
					transform: rotate(180deg);
				}

					.world .world-map .world-map-sidebar .regions .region .objects
					{
						display: none;
					}

					.world .world-map .world-map-sidebar .regions .region ul li
					{

					}

					.world .world-map .world-map-sidebar .regions .region ul li > a 
					{
						display: flex;
						align-items: center;
						position: relative;
						padding: 25px 15px;
						cursor: pointer;
						text-align: left;
						font-size: 16px;
						transition: .3s var(--transition);
						background: #00000010;
						margin: 10px 10px;
						border-radius: 5px;
					}

					.world .world-map .world-map-sidebar .regions .region ul li a:hover
					{
						background-color: #00000020;
					}


						.world .world-map .world-map-sidebar .regions .region ul li .logo
						{
							width: 50px;
							height: 50px;
							display: flex;
							justify-content: center;
							align-items: center;
							overflow: hidden;
							background-color: #fff;
							border-radius: 3px;
							margin-right: 20px;
							flex: none;
						}

							.world .world-map .world-map-sidebar .regions .region ul li .logo img
							{
								max-width: 80%;
    							max-height: 80%;
								object-fit: cover;
							}

					
						.world .world-map .world-map-sidebar .regions .region ul li .info
						{
							width: 100%;
							flex: 1;
							padding-right: 40px;
						}

						.world .world-map .world-map-sidebar .regions .region ul li .item-link
						{
							position: absolute;
							right: 15px;
						}

							.world .world-map .world-map-sidebar .regions .region ul li .info .link
							{
								word-break: break-all;
							}



/* KPS Grows */
section.kps-grows
{
	background-color: #EDF0F3;
	padding: 80px 0;
}

	.kps-grows .thumbnail-kpsgrow
	{
		aspect-ratio: 365/245;
	}


/* KPS About Cards */
.kps-work h3
{
	padding-bottom: 60px;
}

	.kps-work-card
	{
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		aspect-ratio: 400/200;
		background-color: #F5F9FC;
		border-radius: 5px;
		padding: 25px 25px 25px 25px;
	}

		.kps-work-card .kps-work-card-circle
		{
			display: flex;
			justify-content: center;
			align-items: center;
			width: 12px;
			height: 12px;
			background-color: #4073C0;
			border-radius: 100%;
		}

		.kpswork-slick 
		{
			position: unset !important;
		}

		.kpswork-slick .slick-arrow
		{
			width: 50px;
			height: 50px;
			position: absolute;
			bottom: 0%;
			left: 0;
			background-position: center;
			background-repeat: no-repeat;
			outline: none;
			border: 0;
			background-color: transparent;
			cursor: pointer;
			transition: .3s var(--transition);
			font-size: 0;
		}

		.kpswork-slick .slick-prev
		{
			background-image: url('./assets/images/slick-left.svg');
		}
		
		.kpswork-slick .slick-arrow.slick-next
		{
			background-image: url('./assets/images/slick-right.svg');
			left: 60px;
		}

		.kpswork-slick .slick-arrow.slick-disabled
		{
			opacity: 0.6;
		}

/* KPS Europe Page */
.thumbnail-kps-europe
{
	aspect-ratio: 470/280;
}

	.kps-companies
	{
		display: grid;
		grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
		grid-gap: 12px;
		margin-top: 50px;
	}

	.kps-strategy-companies
	{
		grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
		margin-top: 20px;
	}

	.kps-industrial-companies
	{
		grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
	}

	.kps-union-companies
	{
		grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
		margin-top: 20px;
	}

	.kps-investment-strategy
	{
		grid-template-columns: 1fr 1fr 1fr 1fr;
	}

		.kps-companies.kps-investment-strategy .company-card
		{
			padding: 0;
			overflow: hidden;
			align-items: flex-end;
		}

		.kps-companies.kps-investment-strategy .company-card img
		{
			min-width: 100%;
			min-height: 100%;
			width: 100%;
			height: 100%;
			max-width: unset;
			min-width: unset;
			object-fit: cover;
			position: absolute;
			z-index: 0;
		}
		
		.kps-companies.kps-investment-strategy .company-card p
		{
			z-index: 1;
			padding-bottom: 10px;
			color: #fff;
			text-align: center;
			font-weight: 600;
		}
	
		.kps-companies.kps-union-companies .company-card img,
		.kps-companies.kps-strategy-companies .company-card img
		{
			max-width: unset;
			max-height: unset;
			width: 60%;
			height: auto;
		}

		.kps-companies.kps-industrial-companies .company-card img
		{
			width: 100%;
			height: 100%;
			max-width: 100%;
			max-height: 100%;
			object-fit: cover;
		}

		.kps-companies .company-card
		{
			width: 100%;
			max-height: 220px;
			height: 100%;
			display: flex;
			justify-content: center;
			align-items: center;
			background-color: #F5F8FC;
			aspect-ratio: 250/200;
			border-radius: 5px;
			padding: 10px;
			position: relative;
		}

		.kps-companies .company-card.got-4
		{
			padding-top: 40px;
			display: grid;
			grid-template-columns: 1fr 1fr;
			justify-content: space-evenly;
		}

			.kps-companies .company-card.got-4 img
			{
				max-width: 110px;
				justify-self: center;
			}

			.kps-companies .company-card img
			{
				max-width: 220px;
				max-height: 40%;
				width: 100%;
				height: 100%;
			}

		.kps-companies .company-card .flag
		{
			position: absolute;
			top: 20px;
			left: 50%;
			transform: translateX(-50%);
		}

			.kps-companies .company-card .flag img
			{
				max-width: 30px;
				width: 100%;
			}

	.testimonials
	{
		margin-top: 50px;
	}

		.testimonials .testimonial 
		{
			padding: 30px 0;
		}

			.testimonials .testimonial .quote
			{
				font-size: 110px;
				font-weight: 600;
				color: #99B6D0;
				line-height: 70%;
    			margin-bottom: -20px;
			}

			.testimonials .testimonial .message
			{
				margin-bottom: 30px;
			}

			.testimonials .testimonial .author
			{
				font-size: 15px;
				line-height: 28px;
				color: #6AA3D8;
				display: flex;
				align-items: center;
			}
				
				.testimonials .testimonial .author .divider
				{
					width: 1px;
					height: 14px;
					background-color: #E0E4E8;
					margin: 0 10px;
				}

				.testimonials .testimonial .author .author-name
				{
					color: #456D98;
				}

	.pyramid-list
	{
		padding: 30px 60px;
		background-color: #EDF0F3;
	}

		.pyramid-list ul
		{
			padding: 20px 10px;
			border-top: 1px solid var(--dark);
			border-bottom: 1px solid var(--dark);
		}

			.pyramid-list li
			{
				font-size: 18px;
				font-weight: 400;
				color: var(--dark);
				line-height: 28px;
				list-style: disc;
				margin: 8px 0;
			}

	.pyramid 
	{
		display: flex;
		justify-content: flex-end;
		align-items: flex-end;
	}
	
	.pyramid svg
	{
		width: 100%;
		height: 100%;
	}
	


.editorial-box
{
	display: flex;
	align-items: center;
	grid-gap: 16px;
	padding: 30px 40px;
	background-color: #F5F8FC;
	border-radius: 5px;
}

	.editorial-box img
	{
		max-width: 140px;
		height: 100%;
	}


/* Union Relationship */
section.union-testimonials .wrapper
{
	position: relative;
}
	
	section.union-testimonials .slick-track,
	section.union-testimonials .slick-slider
	{
		position: unset;
	}

	.union-testimonials-slick
	{
		border-top: 1px dashed rgba(106, 163, 216, 0.55);
		border-bottom: 1px dashed rgba(106, 163, 216, 0.55);
	}

		.union-testimonials-slick .testimonial
		{
			padding: 30px 0;
			display: flex;
			align-items: center;
			justify-content: space-between;
		}

			.union-testimonials-slick .testimonial .logo
			{
				width: 30%;
				max-width: 400px;
				flex: 1;
				padding: 0 50px;
			}

				.union-testimonials-slick .testimonial .logo .logo-box
				{
					display: flex;
					justify-content: center;
					align-items: center;
					aspect-ratio: 240/190;
					max-width: 300px;
					width: 100%;
					height: 100%;
					border-radius: 5px;
					overflow: hidden;
					background-color: #F5F8FC;
				}

					.union-testimonials-slick .testimonial .logo .logo-box img
					{
						max-width: 50%;
						max-height: 40%;
					}

			.union-testimonials-slick .testimonial .testimonial-info
			{
				width: 70%;
				height: 100%;
				flex: 1;
				border-left: 1px dashed rgba(106, 163, 216, 0.55);
				padding-left: 50px;
			}

			.union-testimonials-slick .slick-arrow
			{
				width: 50px;
				height: 50px;
				position: absolute;
				top: -80px;
				right: 0;
				background-position: center;
				background-repeat: no-repeat;
				outline: none;
				border: 0;
				background-color: transparent;
				cursor: pointer;
				transition: .3s var(--transition);
				font-size: 0;
			}

			.union-testimonials-slick .slick-prev
			{
				background-image: url('./assets/images/slick-left.svg');
				right: 60px;
			}
			
			.union-testimonials-slick .slick-arrow.slick-next
			{
				background-image: url('./assets/images/slick-right.svg');
			}

			.union-testimonials-slick .slick-arrow.slick-disabled
			{
				opacity: 0.6;
			}

/* News Card */
.news-slick
{
	margin-top: 50px;
}

	.news-slick .slick-track
	{
		margin: unset !important;
	}

.news-card
{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 20px 30px;
	height: 100%;
	min-height: 370px;
	border-radius: 5px;
	background-color: #F5F9FC;
}
	
	.news-card .card-header
	{
		padding: 0 0 20px;
		border-bottom: 1px solid var(--border-color);
	}

	.news-card .card-body
	{
		padding: 20px 0 20px;
	}

	.news-card .card-footer
	{
		width: 100%;
		padding: 20px 30px 20px 20px;
		background-color: #EAF0F7;
		display: flex;
		justify-content: space-between;
		align-items: center;
		border-radius: 8px;
	}

		.news-card .card-footer:hover img
		{
			left: 10px;
			scale: 1.25;
		}

		.news-card .card-footer img
		{
			position: relative;
			transition: 0.3s var(--transition);
			left: 0;
		}

		.news-card .card-footer p
		{
			font-size: 15px;
		}

		.news-slick .slick-arrow
		{
			width: 50px;
			height: 50px;
			position: absolute;
			top: -80px;
			right: 0;
			background-position: center;
			background-repeat: no-repeat;
			outline: none;
			border: 0;
			background-color: transparent;
			cursor: pointer;
			transition: .3s var(--transition);
			font-size: 0;
		}

		.news-slick .slick-prev
		{
			background-image: url('./assets/images/slick-left.svg');
			right: 60px;
		}
		
		.news-slick .slick-arrow.slick-next
		{
			background-image: url('./assets/images/slick-right.svg');
		}

		.news-slick .slick-arrow.slick-disabled
		{
			opacity: 0.6;
		}



/* ------------------------------------------------------------------------------------------------ */
/* Main Nav */
/* ------------------------------------------------------------------------------------------------ */
#nav 
{
	position: sticky;
	top: 0;
	left: 0;
	z-index: 100;
}

.home-nav#nav
{
	position: fixed !important;
}

.main-nav
{
	width: 100%;
	height: 100%;
	background-color: #002752;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
	padding: 27px 0;
}

	.main-nav
	{
		opacity: 0;
		visibility: hidden;
		transition: .3s var(--transition);
	}

	.main-nav.is-open
	{
		opacity: 1;
		visibility: visible;
	}

	.main-nav::before
	{
		content: "";
		position: absolute;
		width: 50.6944444%;
		aspect-ratio: 1/1;
		left: -20%;
		top: -50%;
		z-index: -1;
		background: #4073C0;
		background: radial-gradient(circle,rgba(64, 115, 192, 1) 0%, rgba(64, 115, 192, 0) 60%);
		border-radius: 100%;
		opacity: .20;
	}

	.main-nav::after
	{
		content: "";
		position: absolute;
		width: 50.6944444%;
		aspect-ratio: 1/1;
		right: -20%;
		bottom: -50%;
		z-index: -1;
		background: #4073C0;
		background: radial-gradient(circle,rgba(64, 115, 192, 1) 0%, rgba(64, 115, 192, 0) 60%);
		border-radius: 100%;
		opacity: .20;
	}

	.main-nav .nav-header
	{
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

		.main-nav .nav-header .logo
		{
			opacity: 0;
			visibility: hidden;
			transition: .3s var(--transition);
		}

		.main-nav.is-open .nav-header .logo
		{
			opacity: 1;
			visibility: visible;
		}

		.main-nav .nav-header .nav-right
		{
			display: flex;
			align-items: center;
			grid-gap: 50px;
		}

			.main-nav .nav-header .nav-right .search
			{
				display: flex;
				align-items: center;
				position: relative;
				opacity: 0;
				visibility: hidden;
				transition: .3s var(--transition);
			}

			.main-nav.is-open .nav-header .nav-right .search
			{
				opacity: 1;
				visibility: visible;
			}


				.main-nav .nav-header .nav-right .search button
				{
					width: 50px;
					height: 50px;
					display: flex;
					justify-content: center;
					align-items: center;
					position: absolute;
					top: 0;
					left: 0;
					background-color: transparent;
					outline: none;
					border: none;
					cursor: pointer;
					padding: 10px;
					
				}

				.main-nav .nav-header .nav-right .search input
				{
					height: 50px;
					border: none;
					border-bottom: 1px solid #fff;
					background-color: transparent;
					outline: none;
					box-shadow: none;
					font-size: 17px;
					padding: 10px 20px 10px 60px;
					color: #fff;
				}

				.main-nav .nav-header .nav-right .search input::placeholder
				{
					color: #fff;
				}

				.main-nav .nav-header .nav-right .close-nav
				{
					width: 60px;
					height: 60px;
					background-color: #6AA3D8;
					border-radius: 100%;
					display: flex;
					justify-content: center;
					align-items: center;
					opacity: 0;
					visibility: hidden;
					transition: .3s var(--transition);
				}

				.main-nav.is-open .nav-header .nav-right .close-nav
				{
					opacity: 1;
					visibility: visible;
				}


	.main-nav .nav-body
	{
		margin-top: 100px;
	}

		.main-nav .nav-body > ul
		{
			position: relative;
			list-style: none;
			margin: 0;
			padding: 0;
			display: inline-flex;
			flex-direction: column;
			padding-right: 60px;
			width: 100%;
		}

			.main-nav .nav-body > ul > li > a
			{
				display: flex;
				color: #fff;
				padding: 15px 0;
				font-size: 50px;
				transition: 0.2s var(--transition);
			}

			.main-nav .nav-body > ul > li > a.current,
			.main-nav .nav-body > ul > li:hover > a,
			.main-nav .nav-body > ul > li a.submenu-open span
			{
				color: #99B6D0;
			}

			.main-nav .nav-body > ul > li > ul,
			.main-nav .nav-body > ul > li > ul > li > ul
			{
				width: 100%;
				position: absolute;
				top: 0;
				left: 380px;
				z-index: 1;
				padding-left: 60px;
				padding-right: 40px;
				height: 100%;
				opacity: 0;
				visibility: hidden;
				overflow-y: auto;
				overflow-x: visible;
				transition: 0.3s var(--transition);
				scrollbar-width: none;
    			-ms-overflow-style: none;
			}

			.main-nav .nav-body > ul > li > ul > li a
			{
				position: relative;
				overflow: visible;
			}

			.main-nav.is-open .nav-body > ul > li > ul.active,
			.main-nav.is-open .nav-body > ul > li > ul > li > ul.active
			{
				opacity: 1;
				visibility: visible;
				transition-delay: .4s;
			}

			.main-nav .nav-body > ul > li > ul > li a::before,
			.main-nav .nav-body > ul > li > ul > li > ul > li a::before
			{
				content: "";
				position: absolute;
				left: -40px;
				top: 0;
				width: 1px;
				height: 1px;
				background-color: rgba(255, 255, 255, 0.15);
			}

			.main-nav .nav-body > ul > li > ul.active > li a::before,
			.main-nav .nav-body > ul > li > ul > li > ul.active > li a::before
			{
				height: 100%;
				transition: 0.5s var(--transition);
			}

				.main-nav .nav-body > ul > li > ul > li > a,
				.main-nav .nav-body > ul > li > ul > li > ul > li > a
				{
					display: flex;
					color: #fff;
					padding: 10px 0;
					font-size: 50px;
					font-size: 24px;
					transition: 0.2s var(--transition);
					align-items: center;
				}

					.main-nav .nav-body > ul > li > ul > li > a span,
					.main-nav .nav-body > ul > li > ul > li > ul > li a span
					{
						display: flex;
						align-items: center;
						grid-gap: 10px;
						line-height: 28px;
						white-space: nowrap;
					}


				.main-nav .nav-body > ul > li > ul > li.current > a,
				.main-nav .nav-body > ul > li > ul > li:hover > a,
				.main-nav .nav-body > ul > li > ul > li > ul > li.current > a,
				.main-nav .nav-body > ul > li > ul > li > ul > li:hover > a
				{
					color: #6AA3D8;
				}


/* ------------------------------------------------------------------------------------------------ */
/* Contact Page */
/* ------------------------------------------------------------------------------------------------ */

.offices
{
	display: flex;
}

	.offices .kps-accordions 
	{
		max-width: 550px;
		width: 100%;
		height: auto;
	}
	
		.offices .kps-accordions .kps-accordion
		{
			padding-right: 20px;
		}
		
		.offices .kps-accordion .kps-accordion-header::after
		{
			width: 25px;
			height: 25px;
		}

	.offices .kps-maps
	{
		flex: 1;
		width: 100%;
		height: auto;
		background-color: #fff;
		position: relative;
		min-height: 300px; /* adjust to fit your content */
	}

		.offices .kps-map.mobile
		{
			display: none;
		} 
		
		.offices .kps-map 
		{
			display: none;
			opacity: 0;
			position: absolute; /* if stacked visually */
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			display: flex;
			justify-content: center;
			align-items: center;
			transition: opacity 0.3s var(--transition);
			background-size: cover;
			background-position: center center;
			background-repeat: no-repeat;
			background-image: url('./assets/images/maps/vanderbilt.jpg');
		}

		.offices .kps-map#flagship { background-image: url('./assets/images/maps/vanderbilt.jpg'); }
		.offices .kps-map#mid-cap { background-image: url('./assets/images/maps/east.jpg'); }
		.offices .kps-map#portfolio-operations { background-image: url('./assets/images/maps/madison.jpg'); }
		.offices .kps-map#germany { background-image: url('./assets/images/maps/frankfurt.jpg'); }
		.offices .kps-map#netherlands { background-image: url('./assets/images/maps/amsterdam.jpg'); }
		.offices .kps-map#chicago { background-image: url('./assets/images/maps/chicago.jpg'); }
		.offices .kps-map#washington { background-image: url('./assets/images/maps/washington.jpg'); }
		.offices .kps-map#london { background-image: url('./assets/images/maps/london.png'); }


		.offices .kps-map:first-child 
		{
			display: flex;
			opacity: 1;
		}

			.offices .kps-map .map-card
			{
				max-width: 340px;
				width: 100%;
				background-color: #fff;
				border-radius: 5px;
				overflow: hidden;
				box-shadow: 0 0 30px rgba(0, 0, 0, 0.25);
			}
		
				.offices .kps-map .map-card .map-card-image
				{
					width: 100%;
					height: 300px;
					overflow: hidden;
					display: flex;
					justify-content: center;
					align-items: center;
				}

					.offices .kps-map .map-card .map-card-image img
					{
						width: 100%;
						height: 100%;
						object-fit: cover;
					}

				.offices .kps-map .map-card .map-card-info
				{
					padding: 18px 15px;
				}

					.offices .kps-map .map-card .map-card-info .map-card-button
					{
						padding: 10px 20px;
						width: 100%;
						display: flex;
						justify-content: center;
						align-items: center;
						text-transform: uppercase;
						border: 1px solid #002752;
						color: #002752;
						font-size: 18px;
						font-weight: 400;
						height: 50px;
						border-radius: 5px;
						transition: 0.3s var(--transition);
					}

					.offices .kps-map .map-card .map-card-info .map-card-button:hover
					{
						color: #fff;
						background-color: #002752;
					}

	.contact-card 
	{
		width: 100%;
		height: auto;
		border-radius: 5px;
		overflow: hidden;
		background-color: #F5F9FC;
	}

		.contact-card .contact-card-header
		{
			background-color: #DFE7F1;
			padding: 20px 10px;
			text-align: center;
			color: #022956;
		}

		.contact-card .contact-card-body
		{
			padding: 18px 20px;
			display: flex;
			align-items: center;
			justify-content: space-between;
		}

			.contact-card .contact-card-body .image,
			.contact-card .contact-card-body img
			{
				height: 160px;
			}

			.contact-card .contact-card-body .logo
			{
				display: flex;
				align-items: center;
			}

			.contact-card .contact-card-body .logo img
			{
				height: unset;
				max-height: 100px;
				width: 100%;
			}


			.contact-card .contact-card-body .contact-info
			{
				margin-top: 35px;
			}



/* ------------------------------------------------------------------------------------------------ */
/* News & Press Releases */
/* ------------------------------------------------------------------------------------------------ */

.list-news-press
{
	display: grid;
	grid-gap: 30px;
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
}

@media screen and (max-width: 2100px) {
	.list-news-press
	{
		grid-template-columns: 1fr 1fr 1fr 1fr;
	}
}

@media screen and (max-width: 1600px) {
	.list-news-press
	{
		grid-template-columns: 1fr 1fr 1fr;
	}
}

@media screen and (max-width: 1200px) {
	.list-news-press
	{
		grid-template-columns: 1fr 1fr;
	}
}

@media screen and (max-width: 600px) {
	.list-news-press
	{
		grid-template-columns: 1fr;
	}
}

/* Pagination */
.pagination
{
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 50px;
}

	.pagination ul.page-numbers
	{
		display: flex;
		justify-content: center;
		align-items: center;
		grid-gap: 5px;
	}

		.pagination ul.page-numbers li .page-numbers
		{
			display: flex;
			justify-content: center;
			align-items: center;
			width: 40px;
			height: 40px;
			border-radius: 8px;
			background-color: transparent;
			color: #1C2455;
			position: relative;
			top: 0;
			transition: 0.2s var(--transition);
		}
		
		.pagination ul.page-numbers li .page-numbers.prev,
		.pagination ul.page-numbers li .page-numbers.next
		{
			background-color: #DFE7F1;
			width: 100px;
		}

		.pagination ul.page-numbers li .page-numbers.current
		{
			background-color: #DFE7F1;
		}

		.pagination ul.page-numbers li .page-numbers:hover:not(.current):not(.dots)
		{
			top: -5px;
		}

	.filter
	{
		display: flex;
		justify-content: space-between;
		align-items: center;
		grid-gap: 5px;
		margin-bottom: 50px;
	}

	.filter.search input
	{
		max-width: 100%;
		width: 100%;
		height: 50px;
		border: none;
		border-bottom: 1px solid var(--border-color);
		background-color: transparent;
		outline: none;
		box-shadow: none;
		font-size: 20px;
		padding: 10px 20px 10px 60px;
	}

	.filter.search button
	{
		width: 50px;
		height: 50px;
		display: flex;
		justify-content: center;
		align-items: center;
		position: absolute;
		top: 0;
		left: 0;
		background-color: transparent;
		outline: none;
		border: none;
		cursor: pointer;
		padding: 10px;
	}

		.filter .left
		{
			display: flex;
			align-items: center;
			grid-gap: 20px;
			width: 70%;
		}

		.filter .right
		{
			display: flex;
			justify-content: flex-end;
			width: 30%;
		}

			.filter select,
			.filter input
			{
				max-width: 320px;
				width: 100%;
				height: 50px;
				padding: 5px 5px;
				display: flex;
				padding: 0;
				border: none;
				border-bottom: 1px solid var(--border-color);
				background-color: transparent;
				box-shadow: none;
				outline: none;
				font-size: 18px;
				color: #022956;
			}


/* Single News / Press */
	.single-content h2
	{
		font-size: 40px;
		margin-bottom: 20px;
		margin-top: 30px;
	}

	.single-content h3
	{
		font-size: 26px;
		margin-bottom: 20px;
	}

	.single-content p
	{
		font-size: 20px;
		margin-bottom: 20px;
		text-align: justify;
	}

	.single-content .wp-block-image
	{
		margin-bottom: 30px;
	}

	.single-content ul
	{
		padding-left: 30px;
		list-style: disc;
	}

	.single-content ul li
	{
		color: var(--dark);
		line-height: 30px;
		font-size: 20px;
		margin-bottom: 10px;
	}

	.single-content strong
	{
		font-weight: 700;
	}

	.single-content a
	{
		color: #6AA3D8;
		text-decoration: underline;
	}

	.single-content table 
	{
		margin-top: 20px;
		margin-bottom: 20px;
	}

	.single-content table td
	{
		color: var(--dark);
		padding: 10px 20px;
		line-height: 30px;
		font-size: 20px;
	}


/* ------------------------------------------------------------------------------------------------ */
/* Our Team */
/* ------------------------------------------------------------------------------------------------ */
.our-team
{
	padding: 50px 0 120px 0;
}
.list-team
{
}

.team-card
{
	width: 100%;
	max-width: 325px;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

	.team-card .thumbnail-card-image
	{
		width: 100%;
		aspect-ratio: 310/400;
		border-radius: 5px;
		overflow: hidden;
		background-color: #F5F9FC;
		margin-bottom: 20px;
		cursor: pointer;
	}

		.team-card .thumbnail-card-image img
		{
			transition: 0.3s var(--transition);
		}

		.team-card .thumbnail-card-image:hover img
		{
			scale: 1;
		}

	.team-card .card-body
	{
		text-align: left;
	}

	.single-team-member .thumbnail-member
	{
		aspect-ratio: 1316/513;
		background-color: #ECEFF3;
		align-items: flex-start;
	}

	.single-team-member .mini-news 
	{
		
	}

	.single-team-member .mini-news .slick-arrow
	{
		width: 40px;
		height: 40px;
		position: absolute;
		top: -40px;
		right: 0;
		background-position: center;
		background-repeat: no-repeat;
		background-size: 80%;
		outline: none;
		border: 0;
		background-color: transparent;
		cursor: pointer;
		transition: .3s var(--transition);
		font-size: 0;
	}

	.single-team-member .mini-news .slick-prev
	{
		background-image: url('./assets/images/slick-left.svg');
		right: 70px;
	}
	
	.single-team-member .mini-news .slick-arrow.slick-next
	{
		background-image: url('./assets/images/slick-right.svg');
	}

	.single-team-member .mini-news .slick-arrow.slick-disabled
	{
		opacity: 0.6;
	}

.list-all-team
{

}

.team-list
{
	display: flex;
	flex-wrap: wrap;
	grid-gap: 30px;
}

@media screen and (max-width: 1800px) {
	.team-list
	{
		grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
	}
}

@media screen and (max-width: 1500px) {
	.team-list
	{
		grid-template-columns: 1fr 1fr 1fr 1fr;
	}
}

@media screen and (max-width: 1100px) {
	.team-list
	{
		grid-template-columns: 1fr 1fr 1fr;
	}
}

@media screen and (max-width: 860px) {
	.team-list
	{
		grid-template-columns: 1fr 1fr;
	}
}

.team-row-group
{

}

.

	.list-all-team table
	{
		width: 100%;
		border-collapse: collapse;
		border-spacing: 0;
	}

		.list-all-team table thead
		{
			font-size: 14px;
			color: #022956;
			text-transform: uppercase;
		}

			.list-all-team table thead td,
			.list-all-team table tbody td
			{
				padding: 10px 0;
				border-bottom: 1px solid var(--border-color);
			}

			.list-all-team table tbody td
			{
				padding: 25px 0;
			}

		.list-all-team table tbody
		{
			font-size: 22px;
			font-weight: 300;
			color: #022956;
		}

			.list-all-team table tbody tr 
			{
				cursor: pointer;
			}

			.list-all-team table tbody tr td
			{
				vertical-align: middle;
			}

				.list-all-team table tbody tr td svg
				{
					position: relative;
					left: 0;
					scale: 1;
					transition: 0.3s var(--transition);
				}
				
				.list-all-team table tbody tr:hover td svg
				{
					left: 10px;
					scale: 1.25;
				}



/* ------------------------------------------------------------------------------------------------ */
/* Investments Page */
/* ------------------------------------------------------------------------------------------------ */
.header-investments
{
	padding: 70px 0;
	background-image: url('assets/images/investments-hero.jpg');
	background-position: center;
	background-repeat: no-repeat;
}

	.header-investments .investment-stats
	{
		display: grid;
		grid-template-columns: 1fr 1fr 1fr 1fr;
		justify-content: center;
		align-items: center;
		max-width: 1100px;
		width: 100%;
		margin: 0 0 0 auto;
	} 

		.header-investments .investment-stats .stat
		{
			padding: 0 40px;
			text-align: center;
		}

		.header-investments .investment-stats .stat:nth-child(2)
		{
			border-left: 1px solid #FFFFFF33;
			border-right: 1px solid #FFFFFF33;
		}
	
		.header-investments .investment-stats .stat:nth-child(3)
		{
			border-right: 1px solid #FFFFFF33;
		}


			.header-investments .investment-stats .stat h2
			{
				font-size: 90px;
				color: #A8D5FF;
				margin-bottom: 10px;
				display: flex;
				align-items: center;
				justify-content: center;
				grid-gap: 5px;
			}

				.header-investments .investment-stats .stat h2 span
				{
					color: #fff;
				}

			.header-investments .investment-stats .stat p
			{
				font-size: 20px;
				color: #fff;
			}


/* Investments Posts */
.list-investments
{
	position: relative;
	position: flex;
	flex-direction: column;
}

	.list-investments .investment
	{
		position: relative;
		display: flex;
		z-index: 3;
		width: 100%;
		padding: 20px 0;
	}

	.list-investments .investment::before
	{
		content: "";
		position: absolute;
		width: 100%;
		height: 1px;
		top: 0;
		left: 0;
		z-index: -1;
		background-color: var(--border-color);
	}

		.list-investments .investment h3
		{
			position: relative;
			z-index: 10;
			font-size: 60px;
			line-height: 96px;
			color: #9EABBC;
			cursor: pointer;
			transition: 0.3s var(--transition);
		}
		
		.list-investments .investment:hover h3
		{
			color: var(--dark);
		}

		.list-investments .investment:hover img
		{
			opacity: 1;
			visibility: visible;
		}

		.list-investments .investment img
		{
			position: absolute;
			right: 0;
			top: 10px;
			float: right;
			height: calc(100% - 20px);
			opacity: 0;
			visibility: hidden;
			transition: 0.3s var(--transition);
		}


	.investment-images 
	{
		transition: .5s ease-out;
		opacity: 1;
		/* --height_ratio: 0.660691; */
		z-index: 3;
		list-style: none;
		pointer-events: none;
		position: fixed;
		top: 50%;
		transform: translateY(-50%);
		right: 0;
		height: 100vh;
		width: 50%;
		display: flex;
		align-items: center;
	}
	
		.investment-images li 
		{
			position: absolute;
			pointer-events: none;
			z-index: 999; /* can stay visually above, but without blocking clicks */
		}

		.investment-images img
		{
			opacity: 0;
			visibility: hidden;
			max-width: 700px;
			max-height: 700px;
			transform: scale(0.9);
			transition: 0.4s cubic-bezier(.4,0,0,1);
		}

			.investment-images .active img
			{
				opacity: 1;
				visibility: visible;
				transform: scale(1);
			}

	.investment-logo
	{
		max-width: 220px;
	}

.single-investments-fake-slick,
.single-investments-slick
{
	position: relative;
	margin-bottom: 55px;
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
}

	.single-investments-slick .slick-list
	{
		width: 100%;
	}
	.single-investments-slick .item,
	.single-investments-fake-slick .item
	{
		width: 100%;
		min-height: 400px;
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		background-color: #F5F9FC;
		border-radius: 5px;
		aspect-ratio: 1300/440;
		overflow: hidden;
		margin: 0 !important;
	}

		.single-investments-slick .item img,
		.single-investments-fake-slick .item img
		{
			min-width: 100%;
			height: 100%;
			object-fit: cover;
			transition: 0.3s var(--transition);
		}

		.single-investments-slick:not(.slick-initialized) .item img
		{
			opacity: 0;
		}


	.single-investments-slick::after,
	.single-investments-slick::before
	{
		content: "";
		width: 15%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
		opacity: .55;
		background: linear-gradient(270deg,rgba(0, 0, 0, 0) 36%, rgba(0, 0, 0, 1) 100%);
	}

	.single-investments-slick::after
	{
		left: unset;
		right: 0;
		background: linear-gradient(90deg, rgba(0, 0, 0, 0) 36%, rgba(0, 0, 0, 1) 100%);
	}

	.single-investments-slick .slick-arrow
	{
		display: flex;
		justify-content: space-between;
		align-items: center;
		position: absolute;
		z-index: 10;
		left: 20px;
		width: 60px;
		height: 60px;
		display: flex;
		justify-content: center;
		align-items: center;
		background-color: transparent;
		border: none;
		outline: none;
		cursor: pointer;
	}

		.single-investments-slick .slick-arrow img
		{
			filter: brightness(100);
		}


		.single-investments-slick .slick-arrow.slick-next
		{
			left: unset;
			right: 20px;
		}



/********************/
/* Select2 **********/
/********************/
.select2{width: 100% !important;}
.news-press .select2 { max-width: 350px !important; }
.select2-container .select2-selection--single,
.select2-container--default .select2-search--dropdown .select2-search__field{
	z-index: 1111;
}

.select2-results {
    pointer-events: auto;
}

.select2-container .select2-selection--single,
.select2-container .select2-selection--single .select2-selection__rendered{
	height: auto;
}

.select2-dropdown .select2-search--dropdown .select2-search__field,
.select2-container .select2-selection--single .select2-selection__rendered{
	color: var(--dark);
	padding: 20px 40px 20px 0;
}

.select2-container--default .select2-selection--single
{
	border-radius: 0;
	font-size: 18px;
	line-height: 28px;
	font-weight: 400;
	border: none;
	border-bottom: 1px solid var(--border-color);
}

.search-people .search .select2-container--default .select2-selection--single
{
	border-radius: 0;
	border: none;
	border-bottom: 1px solid var(--border-color);
	font-size: 16px;
	line-height: 26px;
}

.search-people .search .select2-container--default.select2-container--open.select2-container--below .select2-selection--single,
.search-people .search .select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple
{
	border-radius: 0;
}

.select2-container--default.select2-container--open.select2-container--below .select2-selection--single, .select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple
{
	border-radius: 0;
}

.select2-container--default .select2-selection--single .select2-selection__arrow{
	height: 100%;
	width: var(--gap-700, 48px);
}

.select2-dropdown{
	border-radius: var(--br-200, 8px);
	border-radius: 0;
	overflow: hidden;
}

.select2-container--default .select2-selection--single .select2-selection__rendered
{
	line-height: unset;
}

.select2-search--dropdown{
	padding-block: var(--gap-300, 12px);
}

.select2-dropdown .select2-search--dropdown .select2-search__field{
	padding: 16px 20px;
	font-family: 'Open Sans', sans-serif;
	font-size: 16px;
}

.select2-container--default .select2-results__option--highlighted[aria-selected],
.select2-container--default .select2-results__option--highlighted[data-selected]
{
	color: var(--dark);
}

.select2-container--open .select2-dropdown--below
{
	top: 40px;
	border: none;
	border-radius: 8px;
	background-color: #E0E4E8;
	border: 1px solid var(--border-color);
	position: relative;
	z-index: 10;
	background-color: #fff;
}

.select2-container--default .select2-results__option[aria-selected=true], 
.select2-container--default .select2-results__option[data-selected=true], 
.select2-container--default .select2-results__option--highlighted[aria-selected]:hover, 
.select2-container--default .select2-results__option--highlighted[data-selected]:hover, 
.select2-container--default .select2-results__option--highlighted[aria-selected]:focus, 
.select2-container--default .select2-results__option--highlighted[data-selected]:focus
{
	background-color: transparent;
	color: #6AA3D8;
}

.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable
{
	background-color: transparent;
}

.select2-container--default .select2-results__option--selected
{
	color: #6AA3D8;
	background-color: transparent;
}

.select2-results__option
{
	padding: 8px 16px;
	font-size: 16px;
	font-weight: 500;
	transition: 0.2s var(--transition);
	color: #9EABBC;
}

.select2-search--dropdown
{
	padding: 8px 16px 5px;
}

.select2-dropdown .select2-search--dropdown .select2-search__field
{
	background-color: #fff;
	border: 1px solid var(--border-color);
	outline: none;
	padding: 12px 10px;
	color: var(--dark);
	font-weight: 500;
	border-radius: 8px;
}

.select2-container--default .select2-selection--single .select2-selection__arrow b
{
	display: none;
}

.select2-container--default .select2-selection--single .select2-selection__arrow
{
	background-image: url('./assets/images/select-arrow.svg');
	background-position: center center;
	background-repeat: no-repeat;
	transform: var(--transition);
}

.select2-container--open .select2-selection--single .select2-selection__arrow
{
	transform: var(--transition);
	background-image: url('./assets/images/select-arrow-opened.svg');
}


/* Popup */
.popup
{
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1000;
	padding: 50px 0;
	background-color: rgba(0, 0, 0, 0.5);
	backdrop-filter: blur(4px);
}

.popup-galery .popup-content
{
	padding: 0 0;
	width: auto;
}

	.popup-galery .popup-close
	{
		right: -25px;
		top: -25px;
		background-color: #fff;
		border-radius: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
	}

		.popup-galery .popup-close svg
		{
			max-width: 80%;
		}
	
	.popup-content
	{
		position: relative;
		max-width: 1200px;
		width: 90%;
		max-height: 100%;
		background-color: #fff;
		border-radius: 5px;
		padding: 90px 20px 50px 50px;
	}

	.popup-content-xs
	{
		max-width: 350px;
		padding: 10px 20px 30px 20px;
	}

	.popup-content .complete-sale
	{
		max-width: 900px;
		max-height: 70vh;
	}

	@media screen and (max-width: 1000px) {
		.popup-content
		{
			height: 100%;
		}
	}

	.popup-close
	{
		position: absolute;
		right: 20px;
		top: 20px;
		width: 50px;
		height: 50px;
		background-color: transparent;
		border: none;
		outline: none;
		cursor: pointer;
		scale: 1;
		transition: 0.3s var(--transition);
	}

	.popup-close:hover
	{
		scale: 1.2;
	}

	.popup .popup-member-thumbnail
	{
		aspect-ratio: 280/335;
	}
	
	.popup .popup-content-xs .popup-member-thumbnail
	{
		aspect-ratio: unset;
	}

.popup {
	visibility: hidden;
	opacity: 0;
	transition: 0.3s var(--transition);
}

.popup.visible {
	visibility: visible;
	opacity: 1;
}

	.popup .popup-bio 
	{
		overflow-y: auto;
		max-height: calc(100vh - 340px);
		padding-right: 30px;
		scrollbar-color: rgba(0, 0, 0, .2) transparent;
		scrollbar-width: thin;
	}

	.popup .popup-bio p
	{
		text-align: justify;
	}

.popup-open
{
	width: 100%;
	height: 100%;
	overflow: hidden;
}

/* Cases for popup */
@media screen and (max-height: 890px) {
	.popup-content
	{
		padding: 30px 20px 50px 50px
	}
}

@media screen and (max-height: 780px) {
	.popup-content
	{
		overflow-y: auto;
		padding: 30px 20px 50px 50px
	}

	.popup .popup-bio 
	{
		overflow-y: unset;
		max-height: unset;
	}
}

.scroll-up
{
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	color: #6AA3D8;
	transition: 0.3s var(--transition);

	background: transparent; /* or same bg as previous section */
	margin-top: -60px;       /* pull it upward */
	padding: 20px 0;
	text-align: center;
	position: relative;
	z-index: 2;
	height: 60px;
}

section:has(+ .scroll-up) {
	padding-bottom: 120px;
}

.scroll-up svg
{
	position: relative;
	top: 0;
	transition: 0.3s var(--transition);
}


.scroll-up:hover
{
	color: var(--dark);
}

.scroll-up:hover svg
{
	top: -5px;
}

.team-row-break {
    grid-column: 1 / -1;  /* spans all columns, forces a new row */
    height: 0;
    margin: 0;
    padding: 0;
}

.world .world-map .world-map-sidebar > h6 {
    background-color: #0a2240;
    color: #ffffff;
    padding: 20px 24px;
    border-radius: 5px;
}

/* Homepage header scroll arrow */
.header-home {
	position: relative;
}

/* On wide/short screens (wider than 2560:1030) use cover to prevent white space */
@media (min-aspect-ratio: 2560/1030) {
	.header-home {
		background-size: cover;
	}
}

.header-scroll-arrow {
	position: absolute;
	bottom: 30px;
	left: 50%;
	transform: translateX(-50%);
	background: transparent;
	width: 52px;
	height: 52px;
	border: none;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	animation: arrowBounce 2s infinite;
	transition: background 0.3s, border-color 0.3s;
	z-index: 10;
}

@keyframes arrowBounce {
	0%, 100% { transform: translateX(-50%) translateY(0); }
	50%       { transform: translateX(-50%) translateY(8px); }
}


.news-button
{
	display: flex;
	grid-gap: 10px;
	flex-wrap: wrap;
}