.damos-ecosysteme {
	--damos-ecosysteme-card-bg: #eef3fb;
	--damos-ecosysteme-card-border: rgba(21, 27, 75, 0.03);
	--damos-ecosysteme-card-hover: #f6f9ff;

	overflow: hidden;
	padding: clamp(84px, 8vw, 126px) 0 clamp(96px, 8.5vw, 132px);
	background: var(--damos-white);
	color: var(--damos-navy);
}

.damos-ecosysteme__header {
	max-width: 1120px;
}

.damos-ecosysteme__eyebrow {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 clamp(32px, 3vw, 46px);
	color: rgba(21, 27, 75, 0.62);
	font-size: clamp(13px, 0.95vw, 16px);
	font-weight: 500;
	line-height: 1;
	letter-spacing: -0.01em;
	text-transform: uppercase;
}

.damos-ecosysteme__eyebrow span {
	display: block;
	flex: 0 0 auto;
	width: clamp(36px, 3vw, 54px);
	height: 3px;
	border-radius: 999px;
	background: var(--damos-turquoise);
}

.damos-ecosysteme__title {
	max-width: 980px;
	margin: 0;
	color: var(--damos-navy);
	font-size: clamp(50px, 5.2vw, 84px);
	font-weight: 700;
	line-height: 0.96;
	letter-spacing: -0.055em;
	text-wrap: balance;
}

.damos-ecosysteme__lead {
	max-width: 1120px;
	margin: clamp(28px, 3vw, 42px) 0 0;
	color: rgba(21, 27, 75, 0.86);
	font-size: clamp(19px, 1.72vw, 28px);
	font-weight: 400;
	line-height: 1.24;
	letter-spacing: -0.025em;
}

.damos-ecosysteme__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: clamp(24px, 2.4vw, 30px);
	margin-top: clamp(56px, 5.6vw, 78px);
}

.damos-ecosysteme-card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	min-width: 0;
	min-height: clamp(260px, 19vw, 312px);
	padding: clamp(24px, 2vw, 28px);
	border: 1px solid var(--damos-ecosysteme-card-border);
	border-radius: clamp(28px, 2vw, 34px);
	background: var(--damos-ecosysteme-card-bg);
	box-shadow: 0 10px 28px rgba(21, 27, 75, 0.03);
	transition:
		transform 360ms cubic-bezier(0.22, 1, 0.36, 1),
		box-shadow 320ms ease,
		background-color 320ms ease;
}

.damos-ecosysteme-card:hover,
.damos-ecosysteme-card:focus-within {
	transform: translateY(-8px);
	background: var(--damos-ecosysteme-card-hover);
	box-shadow: 0 18px 36px rgba(21, 27, 75, 0.07);
}

.damos-ecosysteme-card__category {
	margin: 0;
	color: var(--damos-turquoise);
	font-size: clamp(14px, 1vw, 17px);
	font-weight: 700;
	line-height: 1.08;
	letter-spacing: -0.02em;
}

.damos-ecosysteme-card__logo-wrap {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	width: 100%;
	flex: 1 1 auto;
	padding-top: clamp(10px, 1vw, 14px);
}

.damos-ecosysteme-card__logo {
	display: block;
	width: auto;
	max-width: 100%;
	max-height: 88px;
	object-fit: contain;
	object-position: left top;
}

.damos-ecosysteme-card__name {
	max-width: 100%;
	margin: 0;
	color: var(--damos-navy);
	font-size: clamp(24px, 2vw, 40px);
	font-weight: 800;
	line-height: 0.96;
	letter-spacing: -0.045em;
	text-transform: uppercase;
}

@media (max-width: 1100px) {
	.damos-ecosysteme__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 860px) {
	.damos-ecosysteme__title {
		font-size: clamp(44px, 8vw, 66px);
	}

	.damos-ecosysteme__lead {
		font-size: clamp(18px, 2.6vw, 23px);
	}

	.damos-ecosysteme__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.damos-ecosysteme {
		padding-block: 68px 78px;
	}

	.damos-ecosysteme__eyebrow {
		margin-bottom: 24px;
	}

	.damos-ecosysteme__title {
		font-size: clamp(39px, 11vw, 52px);
		line-height: 0.98;
	}

	.damos-ecosysteme__lead {
		font-size: 18px;
		line-height: 1.3;
	}

	.damos-ecosysteme__grid {
		grid-template-columns: 1fr;
		gap: 18px;
		margin-top: 42px;
	}

	.damos-ecosysteme-card {
		min-height: 210px;
		padding: 22px;
		border-radius: 24px;
	}

	.damos-ecosysteme-card__logo {
		max-height: 76px;
	}

	.damos-ecosysteme-card__name {
		font-size: 30px;
	}
}

.damos-ecosysteme__header,
.damos-ecosysteme-card {
	opacity: 0;
	transform: translateY(26px);
	transition:
		opacity 620ms ease,
		transform 620ms cubic-bezier(0.22, 1, 0.36, 1);
}

.damos-ecosysteme-card {
	transition-delay: calc(120ms + (var(--damos-ecosysteme-index) * 60ms));
}

.damos-ecosysteme.is-visible .damos-ecosysteme__header,
.damos-ecosysteme.is-visible .damos-ecosysteme-card {
	opacity: 1;
	transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
	.damos-ecosysteme__header,
	.damos-ecosysteme-card {
		opacity: 1;
		transform: none;
		transition: none;
	}
}
