.kds-showcase,
.kds-showcase * {
	box-sizing: border-box;
}

.kds-showcase {
	--kds-navy: #123665;
	--kds-blue: #2389f5;
	--kds-text: #60738f;
	width: 100%;
	font-family: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	color: var(--kds-navy);
	overflow: hidden;
}

.kds-container {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
}

.kds-hero {
	position: relative;
	display: flex;
	align-items: stretch;
	min-height: 410px;
	background: #eaf4ff;
	isolation: isolate;
	overflow: hidden;
}

.kds-hero__media {
	position: absolute;
	z-index: -3;
	top: 0;
	right: 0;
	bottom: 0;
	width: min(64%, 1040px);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.kds-hero__fade {
	--kds-fade-color: #eaf4ff;
	position: absolute;
	z-index: -2;
	inset: 0;
	background:
		linear-gradient(90deg,
			var(--kds-fade-color) 0%,
			color-mix(in srgb, var(--kds-fade-color) 96%, transparent) 30%,
			color-mix(in srgb, var(--kds-fade-color) 52%, transparent) 57%,
			transparent 78%),
		linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.08));
	pointer-events: none;
}

@supports not (background: color-mix(in srgb, white, black)) {
	.kds-hero__fade {
		background: linear-gradient(90deg, var(--kds-fade-color) 0%, rgba(234,244,255,.97) 32%, rgba(234,244,255,.65) 58%, transparent 80%);
	}
}

.kds-hero .kds-container {
	display: flex;
	align-items: center;
	padding: 42px 28px 54px;
}

.kds-hero__content {
	width: min(660px, 58%);
}

.kds-breadcrumb {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0 0 48px;
	color: #657d9e;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.4;
}

.kds-breadcrumb__home {
	font-size: 19px;
	line-height: 1;
}

.kds-breadcrumb__separator {
	opacity: .65;
	font-size: 20px;
	font-weight: 300;
}

.kds-breadcrumb__item.is-current {
	color: var(--kds-navy);
	font-weight: 600;
}

.kds-hero__title,
.kds-section-title {
	padding: 0;
	border: 0;
	font-family: inherit;
	letter-spacing: -.025em;
}

.kds-hero__title {
	margin: 0;
	color: var(--kds-navy);
	font-size: clamp(38px, 4vw, 68px);
	font-weight: 600;
	line-height: 1.08;
}

.kds-title-accent {
	display: block;
	width: 66px;
	height: 3px;
	margin: 17px auto 0;
	border-radius: 999px;
	background: var(--kds-blue);
}

.kds-title-accent--left {
	margin-right: 0;
	margin-left: 0;
}

.kds-hero__description {
	max-width: 610px;
	margin-top: 26px;
	color: var(--kds-text);
	font-size: 18px;
	font-weight: 400;
	line-height: 1.8;
}

.kds-brands {
	padding: 62px 28px 82px;
	background: #fff;
}

.kds-section-heading {
	margin: 0 auto 38px;
	text-align: center;
}

.kds-section-title {
	margin: 0;
	color: var(--kds-navy);
	font-size: clamp(25px, 2.2vw, 36px);
	font-weight: 600;
	line-height: 1.28;
}

.kds-grid {
	--kds-columns: 6;
	display: grid;
	grid-template-columns: repeat(var(--kds-columns), minmax(0, 1fr));
	gap: 28px;
}

.kds-card {
	position: relative;
	display: flex;
	min-width: 0;
	min-height: 162px;
	padding: 28px 20px 22px;
	border: 1px solid rgba(22, 58, 102, .055);
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 13px 32px rgba(23, 53, 91, .09);
	align-items: center;
	justify-content: center;
	flex-direction: column;
	text-decoration: none !important;
	color: inherit;
	transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}

.kds-showcase--hover-lift .kds-card:hover,
.kds-showcase--hover-lift .kds-card:focus-visible {
	transform: translateY(-6px);
	border-color: rgba(35, 137, 245, .18);
	box-shadow: 0 18px 42px rgba(23, 53, 91, .14);
}

.kds-card:focus-visible {
	outline: 3px solid rgba(35, 137, 245, .35);
	outline-offset: 3px;
}

.kds-card__logo {
	display: flex;
	width: 100%;
	min-height: 68px;
	align-items: center;
	justify-content: center;
}

.kds-card__logo img {
	display: block;
	width: auto;
	max-width: 100%;
	max-height: 62px;
	height: auto;
	object-fit: contain;
	filter: none;
}

.kds-card__fallback {
	color: var(--kds-navy);
	font-size: 20px;
	font-weight: 600;
	line-height: 1.25;
	text-align: center;
}

.kds-card__accent {
	display: block;
	width: 16px;
	height: 2px;
	margin: 14px auto 7px;
	border-radius: 999px;
	background: var(--kds-blue);
}

.kds-card__country {
	display: block;
	color: #263d5d;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.3;
	text-align: center;
}

.kds-empty {
	padding: 26px;
	border: 1px dashed #b7c8dc;
	border-radius: 12px;
	background: #f7faff;
	color: #536b88;
	text-align: center;
}

@media (max-width: 1024px) {
	.kds-hero__media {
		width: 70%;
		opacity: .82;
	}

	.kds-hero__content {
		width: min(630px, 68%);
	}

	.kds-breadcrumb {
		margin-bottom: 38px;
	}
}

@media (max-width: 767px) {
	.kds-hero {
		min-height: 440px;
		align-items: flex-end;
	}

	.kds-hero__media {
		width: 100%;
		height: 58%;
		top: auto;
		bottom: 0;
		background-position: center;
		opacity: .55;
	}

	.kds-hero__fade {
		background: linear-gradient(180deg, var(--kds-fade-color) 0%, var(--kds-fade-color) 45%, rgba(234,244,255,.72) 72%, rgba(234,244,255,.45) 100%);
	}

	.kds-hero .kds-container {
		align-items: flex-start;
		padding: 28px 20px 48px;
	}

	.kds-hero__content {
		width: 100%;
	}

	.kds-breadcrumb {
		gap: 7px;
		margin-bottom: 32px;
		font-size: 12px;
	}

	.kds-hero__title {
		font-size: clamp(34px, 10vw, 48px);
	}

	.kds-hero__description {
		max-width: 100%;
		margin-top: 20px;
		font-size: 15px;
		line-height: 1.7;
	}

	.kds-brands {
		padding: 48px 16px 64px;
	}

	.kds-section-title {
		font-size: 25px;
	}

	.kds-grid {
		gap: 14px;
	}

	.kds-card {
		min-height: 138px;
		padding: 20px 14px 18px;
		border-radius: 13px;
	}

	.kds-card__logo {
		min-height: 56px;
	}

	.kds-card__logo img {
		max-height: 50px;
	}

	.kds-showcase--mobile-scroll .kds-grid {
		display: flex;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		overscroll-behavior-inline: contain;
		padding: 4px 2px 18px;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: thin;
	}

	.kds-showcase--mobile-scroll .kds-card {
		flex: 0 0 min(78vw, 270px);
		scroll-snap-align: start;
	}
}

@media (prefers-reduced-motion: reduce) {
	.kds-card {
		transition: none;
	}
}
