.tt-main .emy-talent-hero {
	margin-top: 88px;
}

.emy-talent-hero {
	position: relative;
	padding: 90px 0 85px;
	background: var(--th-hero-bg);
	color: var(--th-color-text-main);
	overflow: hidden;
	border-bottom: 1px solid var(--th-border-section);
}

.emy-talent-hero-bg {
	position: absolute;
	inset: 0;
	background-image: url('../img/talento_fondo.jpg');
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	transform: scale(1.03);
	z-index: 1;
}

.emy-talent-hero-overlay {
	position: absolute;
	inset: 0;
	z-index: 2;
	background:
		radial-gradient(circle at 15% 30%, var(--th-radial-secondary), var(--th-color-transparent) 28%),
		radial-gradient(circle at 85% 35%, var(--th-radial-primary), var(--th-color-transparent) 30%),
		linear-gradient(180deg, var(--th-hero-overlay-start), var(--th-hero-overlay-end));
}

.emy-talent-hero .container {
	position: relative;
	z-index: 3;
}

.emy-talent-particles {
	position: absolute;
	inset: 0;
	z-index: 2;
	pointer-events: none;
	overflow: hidden;
}

.emy-talent-particle {
	position: absolute;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background: var(--th-particle-bg);
	box-shadow: 0 0 18px var(--th-particle-shadow);
	animation: emyTalentPulse 3s infinite ease-in-out;
}

.emy-talent-particle-1 { left: 8%; top: 18%; animation-delay: 0.1s; }
.emy-talent-particle-2 { left: 16%; top: 72%; animation-delay: 0.4s; }
.emy-talent-particle-3 { left: 24%; top: 35%; animation-delay: 0.8s; }
.emy-talent-particle-4 { left: 32%; top: 82%; animation-delay: 1.2s; }
.emy-talent-particle-5 { left: 40%; top: 21%; animation-delay: 1.6s; }
.emy-talent-particle-6 { left: 48%; top: 68%; animation-delay: 2s; }
.emy-talent-particle-7 { left: 56%; top: 40%; animation-delay: 2.4s; }
.emy-talent-particle-8 { left: 64%; top: 76%; animation-delay: 2.8s; }
.emy-talent-particle-9 { left: 72%; top: 22%; animation-delay: 3.2s; }
.emy-talent-particle-10 { left: 80%; top: 62%; animation-delay: 3.6s; }
.emy-talent-particle-11 { left: 88%; top: 30%; animation-delay: 4s; }
.emy-talent-particle-12 { left: 92%; top: 84%; animation-delay: 4.4s; }
.emy-talent-particle-13 { left: 12%; top: 48%; animation-delay: 4.8s; }
.emy-talent-particle-14 { left: 28%; top: 12%; animation-delay: 5.2s; }
.emy-talent-particle-15 { left: 44%; top: 88%; animation-delay: 5.6s; }
.emy-talent-particle-16 { left: 60%; top: 14%; animation-delay: 6s; }
.emy-talent-particle-17 { left: 76%; top: 48%; animation-delay: 6.4s; }
.emy-talent-particle-18 { left: 86%; top: 12%; animation-delay: 6.8s; }
.emy-talent-particle-19 { left: 5%; top: 90%; animation-delay: 7.2s; }
.emy-talent-particle-20 { left: 52%; top: 52%; animation-delay: 7.6s; }

@keyframes emyTalentPulse {
	0%, 100% {
		opacity: 0.25;
		transform: scale(1);
	}

	50% {
		opacity: 1;
		transform: scale(1.8);
	}
}

.emy-talent-badge {
	display: inline-flex;
	align-items: center;
	padding: 10px 18px;
	margin-bottom: 20px;
	border-radius: 999px;
	background: var(--th-badge-bg);
	border: 1px solid var(--th-badge-border);
	color: var(--th-badge-text);
	box-shadow: 0 10px 25px var(--th-badge-bg);
	font-size: 0.82rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.emy-talent-title {
	font-size: clamp(2.4rem, 5vw, 4.5rem);
	font-weight: 900;
	line-height: 1.05;
	letter-spacing: -0.03em;
	margin-bottom: 22px;
	max-width: 760px;
	background: var(--th-gradient-brand);
	-webkit-background-clip: text;
	background-clip: text;
	color: var(--th-color-transparent);
	-webkit-text-fill-color: var(--th-color-transparent);
	text-shadow: 0 18px 45px var(--th-glow-indigo);
}

.emy-talent-brand .emy-talent-badge {
	margin-bottom: 10px;
}

.emy-talent-brand .emy-talent-title {
	margin-bottom: 0;
}

.emy-talent-subtitle {
	font-size: 1.08rem;
	line-height: 1.95;
	max-width: 690px;
	color: var(--th-color-text-muted);
	margin-bottom: 34px;
}

.emy-talent-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
}

.emy-talent-btn-primary,
.emy-talent-btn-secondary {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 14px 26px;
	border-radius: 16px;
	font-weight: 800;
	text-decoration: none;
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
}

.emy-talent-btn-primary {
	position: relative;
	overflow: hidden;
	isolation: isolate;
	background: var(--th-gradient-cta);
	color: var(--th-color-white);
	box-shadow: 0 16px 34px var(--th-glow-indigo);
}

.emy-talent-btn-primary::before {
	content: "";
	position: absolute;
	top: 0;
	left: -130%;
	width: 70%;
	height: 100%;
	background: linear-gradient(
		90deg,
		var(--th-color-transparent),
		var(--th-overlay-white-shine),
		var(--th-color-transparent)
	);
	transform: skewX(-18deg);
	transition: left 0.6s ease;
	z-index: 1;
}

.emy-talent-btn-primary:hover::before {
	left: 140%;
}

.emy-talent-btn-primary span,
.emy-talent-btn-primary i {
	position: relative;
	z-index: 2;
}

.emy-talent-btn-primary:hover {
	color: var(--th-color-white);
	transform: translateY(-4px) scale(1.015);
	box-shadow:
		0 22px 48px var(--th-glow-cyan),
		0 0 0 4px var(--th-ring-cyan);
}

.emy-talent-btn-primary i {
	transition: transform 0.28s ease;
}

.emy-talent-btn-primary:hover i {
	transform: translateX(4px) rotate(-8deg);
}

.emy-talent-btn-secondary {
	background: var(--th-card-bg-glass);
	color: var(--th-color-text-main);
	border: 1px solid var(--th-border-glass);
	backdrop-filter: blur(12px);
}

.emy-talent-btn-secondary:hover {
	transform: translateY(-4px);
	border-color: var(--th-border-cyan);
	color: var(--th-badge-text);
}

.emy-talent-hero-card {
	position: relative;
	padding: 34px;
	border-radius: 28px;
	background: var(--th-card-bg-soft);
	border: 1px solid var(--th-border-soft);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	box-shadow: 0 18px 42px var(--th-shadow-soft);
	transition: all 0.25s ease;
	overflow: hidden;
}

.emy-talent-hero-card:hover {
	transform: translateY(-6px);
	border-color: var(--th-border-cyan);
}

html:not([data-theme="dark"]) .emy-talent-hero-card:hover {
	border-color: var(--th-border-strong);
	box-shadow:
		0 22px 48px var(--th-shadow-hover),
		0 0 0 4px var(--th-ring-cyan-strong);
	background: var(--th-card-bg-hover);
}

.emy-talent-hero-icon {
	width: 78px;
	height: 78px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 24px;
	margin-bottom: 24px;
	background: var(--th-gradient-cta);
	color: var(--th-color-white);
	font-size: 2rem;
	box-shadow: 0 18px 34px var(--th-glow-indigo);
}

.emy-talent-hero-card h3 {
	font-size: 1.45rem;
	font-weight: 850;
	margin-bottom: 14px;
	color: var(--th-color-text-main);
}

.emy-talent-hero-card p {
	margin: 0;
	font-size: 1rem;
	line-height: 1.9;
	color: var(--th-color-text-soft);
}

/* =========================================================
	SECCIÓN MÓDULOS PRINCIPALES
========================================================= */

.emy-talent-section {
	position: relative;
	padding: 110px 0;
	background:
		radial-gradient(circle at top left, var(--th-radial-cyan), var(--th-color-transparent) 28%),
		linear-gradient(180deg, var(--th-section-bg-start) 0%, var(--th-section-bg-end) 100%);
	overflow: hidden;
}

.emy-talent-modules-glow {
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 80% 20%, var(--th-radial-primary), var(--th-color-transparent) 28%),
		radial-gradient(circle at 20% 80%, var(--th-radial-secondary), var(--th-color-transparent) 30%);
	pointer-events: none;
}

.emy-talent-modules-container {
	position: relative;
	z-index: 2;
}

.emy-talent-section-head {
	text-align: center;
	max-width: 860px;
	margin: 0 auto 55px;
}

.emy-talent-section-head > span {
	display: inline-block;
	margin-bottom: 14px;
	font-size: 0.82rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--th-badge-text);
}

.emy-talent-section-head h2 {
	margin: 0;
	color: var(--th-color-text-main);
	font-size: clamp(2.2rem, 4vw, 4.5rem);
	font-weight: 900;
	letter-spacing: -0.04em;
	line-height: 1.08;
}

.emy-talent-services-section .emy-talent-section-head {
	max-width: 1420px;
}

.emy-talent-services-section .emy-talent-section-head h2 {
	margin: 0 auto;
	max-width: 1180px;
	font-size: clamp(2.45rem, 4.5vw, 4.9rem);
	font-weight: 950;
	letter-spacing: -0.055em;
	line-height: 1.06;
}

.emy-talent-section-head h2 span,
.emy-talent-services-section .emy-talent-section-head h2 span {
	background: var(--th-gradient-brand);
	-webkit-background-clip: text;
	background-clip: text;
	color: var(--th-color-transparent);
	-webkit-text-fill-color: var(--th-color-transparent);
}

.emy-talent-services-section .emy-talent-section-head p {
	max-width: 1100px;
	margin: 30px auto 0;
	font-size: clamp(1.08rem, 1.45vw, 1.55rem);
	line-height: 1.75;
}

.emy-talent-modules-divider {
	width: 90px;
	height: 4px;
	margin: 28px auto 0;
	border-radius: 999px;
	background: var(--th-gradient-line);
}

.emy-talent-module-card {
	position: relative;
	height: 100%;
	overflow: hidden;
	border-radius: 28px;
	background: var(--th-card-bg);
	border: 1px solid var(--th-border-base);
	box-shadow: 0 18px 45px var(--th-shadow-card);
	transition:
		transform 0.35s ease,
		border-color 0.35s ease,
		box-shadow 0.35s ease;
}

.emy-talent-module-card:hover {
	transform: translateY(-14px) scale(1.02);
	border-color: var(--th-border-strong);
	box-shadow:
		0 28px 70px var(--th-shadow-hover),
		0 0 0 4px var(--th-ring-cyan);
}

html:not([data-theme="dark"]) .emy-talent-module-card:hover {
	background: var(--th-card-bg-hover);
}

html:not([data-theme="dark"]) .emy-talent-module-card:hover .emy-talent-module-icon {
	box-shadow:
		0 22px 48px var(--th-glow-indigo),
		0 0 0 5px var(--th-ring-cyan);
}

.emy-talent-module-card::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		135deg,
		var(--th-color-transparent),
		var(--th-overlay-white-soft),
		var(--th-radial-cyan),
		var(--th-color-transparent)
	);
	opacity: 0;
	transition: opacity 0.45s ease;
	pointer-events: none;
}

.emy-talent-module-card:hover::after {
	opacity: 1;
}

.emy-talent-module-media {
	position: relative;
	height: 190px;
	overflow: hidden;
	background: var(--th-section-bg-end);
}

.emy-talent-module-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.5s ease;
}

.emy-talent-module-card:hover .emy-talent-module-media img {
	transform: scale(1.08);
}

.emy-talent-module-media-placeholder {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	background:
		radial-gradient(circle at center, var(--th-radial-cyan), var(--th-color-transparent) 35%),
		var(--th-gradient-card);
}

.emy-talent-module-media-placeholder i {
	font-size: 4.6rem;
	color: var(--th-glow-indigo);
}

.emy-talent-module-media-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, var(--th-color-transparent) 10%, var(--th-overlay-white-strong) 100%);
}

.emy-talent-module-body {
	position: relative;
	padding: 0 24px 28px;
	z-index: 2;
}

.emy-talent-module-icon {
	width: 58px;
	height: 58px;
	margin-top: -29px;
	margin-bottom: 18px;
	position: relative;
	z-index: 3;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 18px;
	color: var(--th-color-white);
	font-size: 1.55rem;
	background: var(--th-gradient-cta);
	box-shadow: 0 16px 34px var(--th-glow-indigo);
	transition:
		transform 0.3s ease,
		box-shadow 0.3s ease;
}

.emy-talent-module-card:hover .emy-talent-module-icon {
	transform: scale(1.06) rotate(-3deg);
	box-shadow: 0 20px 42px var(--th-glow-cyan);
}

.emy-talent-module-card h4 {
	margin: 0 0 14px;
	color: var(--th-color-text-main);
	font-size: 1.16rem;
	font-weight: 850;
	line-height: 1.35;
}

.emy-talent-module-card p {
	margin: 0;
	color: var(--th-color-text-soft);
	font-size: 0.95rem;
	line-height: 1.75;
}

.emy-talent-module-card.emy-reveal-item {
	opacity: 0;
	transform:
		translateY(55px)
		translateX(18px)
		scale(0.96)
		rotateX(8deg);
	filter: blur(10px);
	transform-origin: center bottom;
	transition:
		opacity 1.1s cubic-bezier(0.19, 1, 0.22, 1),
		transform 1.4s cubic-bezier(0.19, 1, 0.22, 1),
		filter 1.2s ease,
		box-shadow 0.4s ease;
}

.emy-reveal-group.emy-reveal-active .emy-talent-module-card.emy-reveal-item {
	opacity: 1;
	transform: translateY(0) translateX(0) scale(1) rotateX(0);
	filter: blur(0);
}

/* =========================================================
	SERVICIOS / PROCESOS QUE OPTIMIZA
========================================================= */

.emy-talent-services-section {
	position: relative;
	padding: 95px 0;
	background:
		radial-gradient(circle at top right, var(--th-radial-primary), var(--th-color-transparent) 34%),
		radial-gradient(circle at bottom left, var(--th-radial-cyan), var(--th-color-transparent) 32%),
		linear-gradient(180deg, var(--th-section-bg-start), var(--th-services-bg-end));
	overflow: hidden;
}

.emy-talent-section-head p {
	max-width: 1180px;
	margin: 34px auto 0;
	color: var(--th-color-text-soft);
	font-size: clamp(1.15rem, 1.7vw, 2rem);
	line-height: 1.75;
}

.emy-talent-service-card {
	height: 100%;
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 18px;
	padding: 26px 22px;
	border-radius: 24px;
	background: var(--th-card-bg);
	border: 1px solid var(--th-border-card);
	box-shadow: 0 16px 38px var(--th-shadow-soft);
	overflow: hidden;
	transition:
		transform 0.28s ease,
		box-shadow 0.28s ease,
		border-color 0.28s ease;
}

.emy-talent-service-card::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at top left, var(--th-radial-secondary), var(--th-color-transparent) 34%),
		linear-gradient(135deg, var(--th-radial-primary), var(--th-color-transparent) 42%);
	opacity: 0;
	transition: opacity 0.28s ease;
	pointer-events: none;
}

.emy-talent-service-card:hover {
	transform: translateY(-8px);
	border-color: var(--th-border-strong);
	box-shadow:
		0 28px 64px var(--th-shadow-service),
		0 0 0 4px var(--th-ring-cyan);
}

.emy-talent-service-card:hover::before {
	opacity: 1;
}

.emy-talent-service-icon {
	position: relative;
	z-index: 4;
	width: 58px;
	height: 58px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 18px;
	color: var(--th-color-text-soft);
	background: var(--th-icon-soft-bg);
	box-shadow: none;
	transition:
		transform 0.35s ease,
		background 0.35s ease,
		color 0.35s ease,
		box-shadow 0.35s ease;
}

.emy-talent-service-card h4 {
	position: relative;
	z-index: 2;
	margin-bottom: 10px;
	color: var(--th-color-text-main);
	font-size: 1.04rem;
	font-weight: 850;
	line-height: 1.35;
}

.emy-talent-service-card p {
	position: relative;
	z-index: 2;
	margin: 0;
	color: var(--th-color-text-soft);
	font-size: 0.93rem;
	line-height: 1.75;
}

.emy-talent-brand {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 18px;
	transform: translateX(-10px);
}

.emy-talent-brand-icon {
	width: 74px;
	height: 74px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 24px;
	background: var(--th-gradient-cta);
	color: var(--th-color-white);
	font-size: 2.35rem;
	box-shadow: 0 22px 55px var(--th-glow-indigo);
	position: relative;
	overflow: hidden;
}

.emy-talent-brand-icon::after {
	content: "";
	position: absolute;
	inset: -45%;
	background: linear-gradient(
		120deg,
		var(--th-color-transparent),
		var(--th-overlay-white-shine),
		var(--th-color-transparent)
	);
	transform: translateX(-100%) rotate(18deg);
	animation: emyTalentIconFlash 3.2s ease-in-out infinite;
}

.emy-talent-brand-icon i {
	position: relative;
	z-index: 2;
}

.emy-reveal-item {
	opacity: 0;
	transform: translateY(34px);
	filter: blur(8px);
	transition:
		opacity 1.8s cubic-bezier(0.22, 1, 0.36, 1),
		transform 1.8s cubic-bezier(0.22, 1, 0.36, 1),
		filter 1.8s cubic-bezier(0.22, 1, 0.36, 1);
	transition-delay: var(--emy-delay, 0s);
	will-change: opacity, transform, filter;
}

.emy-talent-hero-icon,
.emy-talent-module-icon {
	background: var(--th-gradient-cta);
	box-shadow: 0 18px 34px var(--th-glow-indigo);
}

.emy-reveal-group.emy-reveal-active .emy-reveal-item {
	opacity: 1;
	transform: translateY(0);
	filter: blur(0);
}

.emy-talent-hero-bg {
	transition: transform 1.1s ease;
}

.emy-talent-hero.emy-hero-visible .emy-talent-hero-bg {
	transform: scale(1);
}

/* =========================================================
	RESPONSIVE
========================================================= */

@media (max-width: 991px) {
	.tt-main .emy-talent-hero {
		margin-top: 78px;
	}

	.emy-talent-hero {
		padding: 75px 0 70px;
	}

	.emy-talent-title {
		font-size: clamp(2.2rem, 7vw, 3.6rem);
	}

	.emy-talent-section {
		padding: 90px 0;
	}

	.emy-talent-module-media {
		height: 200px;
	}

	.emy-talent-services-section {
		padding: 80px 0;
	}

	.emy-talent-section-head h2 {
		font-size: clamp(2.6rem, 8vw, 4.6rem);
	}

	.emy-talent-section-head p {
		font-size: 1.08rem;
	}

	.emy-talent-services-section .emy-talent-section-head h2 {
		font-size: clamp(2.2rem, 7vw, 3.8rem);
	}
}

@media (max-width: 767px) {
	.emy-talent-actions {
		flex-direction: column;
		align-items: stretch;
	}

	.emy-talent-btn-primary,
	.emy-talent-btn-secondary {
		justify-content: center;
		width: 100%;
	}

	.emy-talent-hero-card {
		padding: 28px;
	}

	.emy-talent-section {
		padding: 75px 0;
	}
}

@media (max-width: 575px) {
	.tt-main .emy-talent-hero {
		margin-top: 72px;
	}

	.emy-talent-badge {
		font-size: 0.72rem;
		padding: 9px 14px;
	}

	.emy-talent-title {
		font-size: clamp(2rem, 9vw, 3rem);
	}

	.emy-talent-subtitle {
		font-size: 1rem;
		line-height: 1.8;
	}

	.emy-talent-section {
		padding: 76px 0;
	}

	.emy-talent-module-media {
		height: 185px;
	}

	.emy-talent-module-body {
		padding: 0 22px 26px;
	}

	.emy-talent-services-section {
		padding: 70px 0;
	}

	.emy-talent-service-card {
		padding: 24px 20px;
	}

	.emy-talent-brand {
		gap: 4px;
		transform: translateX(-10px);
	}

	.emy-talent-brand-logo {
		width: 128px;
		height: 128px;
		flex: 0 0 128px;
		margin-right: -6px;
	}

	.emy-talent-brand-logo::before {
		inset: 14px;
		filter: blur(10px);
	}

	.emy-talent-brand-logo img {
		width: 160px;
		height: 160px;
	}

	.emy-talent-services-section .emy-talent-section-head h2 {
		font-size: clamp(1.95rem, 9vw, 2.9rem);
		letter-spacing: -0.04em;
		line-height: 1.1;
	}

	.emy-talent-section-head h2 {
		font-size: clamp(2.15rem, 11vw, 3.2rem);
		letter-spacing: -0.045em;
	}

	.emy-talent-section-head p {
		font-size: 1rem;
		line-height: 1.7;
	}
}

@media (prefers-reduced-motion: reduce) {
	.emy-reveal-item {
		opacity: 1;
		transform: none;
		filter: none;
		transition: none;
	}

	.emy-talent-hero-bg {
		transition: none;
	}
}

/* =========================================================
	HERRAMIENTAS TALENTHUB - EFECTO TIPO PROYECTOS
========================================================= */

.emy-talent-service-gradient {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 10px;
	background: var(--th-gradient-line);
	z-index: 3;
}

.emy-talent-service-card.emy-reveal-item {
	opacity: 0;
	filter: blur(10px);
	transform: translateY(55px) scale(0.96);
	transition:
		opacity 1.15s cubic-bezier(0.19, 1, 0.22, 1),
		transform 1.35s cubic-bezier(0.19, 1, 0.22, 1),
		filter 1.1s ease,
		border-color 0.35s ease,
		box-shadow 0.35s ease,
		background 0.35s ease;
}

.emy-talent-service-left {
	transform: translateY(55px) translateX(-24px) scale(0.96);
}

.emy-talent-service-right {
	transform: translateY(55px) translateX(24px) scale(0.96);
}

.emy-reveal-group.emy-reveal-active .emy-talent-service-card.emy-reveal-item {
	opacity: 1;
	transform: translateY(0) translateX(0) scale(1);
	filter: blur(0);
}

.emy-talent-service-card::after {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(
			135deg,
			var(--th-color-transparent),
			var(--th-overlay-white-soft),
			var(--th-radial-cyan),
			var(--th-color-transparent)
		);
	opacity: 0;
	transition: opacity 0.4s ease;
	pointer-events: none;
}

.emy-talent-service-card:hover::after {
	opacity: 1;
}

.emy-talent-service-card:hover {
	transform: translateY(-12px) scale(1.015);
	border-color: var(--th-border-strong);
	background: var(--th-card-bg-hover);
	box-shadow:
		0 28px 64px var(--th-shadow-service),
		0 0 0 4px var(--th-ring-cyan);
}

.emy-talent-service-card:hover .emy-talent-service-icon {
	transform: rotate(-8deg) scale(1.08);
	background: var(--th-gradient-cta);
	box-shadow: 0 18px 36px var(--th-glow-indigo);
}

.emy-talent-service-icon i {
	position: relative;
	z-index: 2;
	transition: transform 0.35s ease;
}

.emy-talent-service-card:hover .emy-talent-service-icon i {
	transform: scale(1.06);
}

@media (max-width: 575px) {
	.emy-talent-service-left,
	.emy-talent-service-right {
		transform: translateY(45px) scale(0.96);
	}
}

/* =========================================================
	IMPACTO EMPRESARIAL
========================================================= */

.emy-talent-impact-section {
	position: relative;
	padding: 95px 0;
	background:
		radial-gradient(circle at 12% 20%, var(--th-radial-primary), var(--th-color-transparent) 34%),
		radial-gradient(circle at 88% 75%, var(--th-radial-secondary), var(--th-color-transparent) 32%),
		linear-gradient(180deg, var(--th-section-bg-start) 0%, var(--th-impact-bg-mid) 45%, var(--th-impact-bg-end) 100%);
	overflow: hidden;
}

.emy-talent-impact-card {
	position: relative;
	padding: 34px 26px;
	border-radius: 28px;
	background: var(--th-impact-card-bg);
	border: 1px solid var(--th-border-glass);
	box-shadow: 0 18px 44px var(--th-shadow-soft);
	overflow: hidden;
	transition:
		transform 0.35s ease,
		border-color 0.35s ease,
		box-shadow 0.35s ease,
		background 0.35s ease;
}

.emy-talent-impact-card::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at top left, var(--th-radial-secondary), var(--th-color-transparent) 36%),
		linear-gradient(135deg, var(--th-radial-primary), var(--th-color-transparent) 46%);
	opacity: 0;
	transition: opacity 0.35s ease;
	pointer-events: none;
}

.emy-talent-impact-card::after {
	content: "";
	position: absolute;
	top: -45%;
	left: -65%;
	width: 60%;
	height: 190%;
	background:
		linear-gradient(
			120deg,
			var(--th-color-transparent),
			var(--th-shine-soft),
			var(--th-color-transparent)
		);
	transform: rotate(18deg);
	opacity: 0;
	transition: left 0.75s ease, opacity 0.35s ease;
	pointer-events: none;
}

.emy-talent-impact-card:hover {
	transform: translateY(-10px) scale(1.015);
	border-color: var(--th-border-soft);
	box-shadow:
		0 28px 64px var(--th-shadow-hover),
		0 0 0 4px var(--th-ring-cyan-strong);
	background: var(--th-impact-card-hover-bg);
}

.emy-talent-impact-card:hover::before {
	opacity: 1;
}

.emy-talent-impact-card:hover::after {
	left: 120%;
	opacity: 1;
}

.emy-talent-impact-card i {
	position: relative;
	z-index: 2;
	width: 64px;
	height: 64px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 24px;
	border-radius: 20px;
	background: var(--th-gradient-cta);
	color: var(--th-color-white);
	font-size: 1.9rem;
	box-shadow: 0 18px 42px var(--th-glow-indigo);
	transition:
		transform 0.35s ease,
		box-shadow 0.35s ease;
}

.emy-talent-impact-card:hover i {
	transform: rotate(-8deg) scale(1.08);
	box-shadow: 0 24px 52px var(--th-glow-cyan);
}

.emy-talent-impact-card h3 {
	position: relative;
	z-index: 2;
	margin-bottom: 12px;
	color: var(--th-color-text-main);
	font-size: 1.28rem;
	font-weight: 900;
	letter-spacing: -0.02em;
}

.emy-talent-impact-card p {
	position: relative;
	z-index: 2;
	margin: 0;
	color: var(--th-color-text-soft);
	font-size: 0.98rem;
	line-height: 1.7;
}

.emy-talent-impact-section::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 52%;
	width: clamp(620px, 62vw, 980px);
	height: clamp(620px, 62vw, 980px);
	background-image: url('../img/th_logo_sin_fondo.png');
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	transform: translate(-50%, -50%) rotate(-8deg);
	opacity: 0.22;
	filter:
		drop-shadow(0 0 38px var(--th-glow-cyan))
		drop-shadow(0 0 70px var(--th-glow-indigo));
	z-index: 0;
	pointer-events: none;
}

.emy-talent-impact-section::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 52%;
	width: clamp(520px, 52vw, 820px);
	height: clamp(520px, 52vw, 820px);
	border-radius: 999px;
	background:
		radial-gradient(circle, var(--th-glow-cyan), var(--th-color-transparent) 68%);
	transform: translate(-50%, -50%);
	opacity: 0.48;
	z-index: 0;
	pointer-events: none;
}

.emy-talent-impact-section .container {
	position: relative;
	z-index: 2;
}

@media (max-width: 767px) {
	.emy-talent-impact-section::before {
		top: 54%;
		width: 560px;
		height: 560px;
		opacity: 0.16;
	}

	.emy-talent-impact-section::after {
		top: 54%;
		width: 430px;
		height: 430px;
		opacity: 0.26;
	}
}

/* =========================================================
	CTA FINAL TALENTHUB
========================================================= */

.emy-talent-final-cta {
	position: relative;
	padding: 95px 0 110px;
	background:
		radial-gradient(circle at 14% 22%, var(--th-radial-primary), var(--th-color-transparent) 32%),
		radial-gradient(circle at 86% 76%, var(--th-radial-secondary), var(--th-color-transparent) 34%),
		linear-gradient(180deg, var(--th-final-bg-start) 0%, var(--th-final-bg-mid) 48%, var(--th-final-bg-end) 100%);
	overflow: hidden;
}

.emy-talent-final-cta::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image:
		linear-gradient(var(--th-grid-light) 1px, var(--th-color-transparent) 1px),
		linear-gradient(90deg, var(--th-grid-light) 1px, var(--th-color-transparent) 1px);
	background-size: 42px 42px;
	mask-image:
		linear-gradient(
			to bottom,
			var(--th-color-transparent),
			var(--th-grid-mask) 18%,
			var(--th-grid-mask) 82%,
			var(--th-color-transparent)
		);
	-webkit-mask-image:
		linear-gradient(
			to bottom,
			var(--th-color-transparent),
			var(--th-grid-mask) 18%,
			var(--th-grid-mask) 82%,
			var(--th-color-transparent)
		);
	pointer-events: none;
}

.emy-talent-final-box {
	position: relative;
	z-index: 2;
	max-width: 980px;
	margin: 0 auto;
	padding: 56px 42px;
	text-align: center;
	border-radius: 34px;
	background: var(--th-final-box-bg);
	border: 1px solid var(--th-final-box-border);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
	box-shadow:
		0 26px 70px var(--th-final-box-shadow),
		inset 0 1px 0 var(--th-final-box-inset);
	overflow: hidden;
}

.emy-talent-final-box::before {
	content: "";
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at top left, var(--th-radial-primary), var(--th-color-transparent) 38%),
		radial-gradient(circle at bottom right, var(--th-radial-cyan), var(--th-color-transparent) 34%);
	pointer-events: none;
}

.emy-talent-final-box::after {
	content: "";
	position: absolute;
	top: -50%;
	left: -70%;
	width: 55%;
	height: 210%;
	background:
		linear-gradient(
			120deg,
			var(--th-color-transparent),
			var(--th-shine-strong),
			var(--th-color-transparent)
		);
	transform: rotate(18deg);
	animation: emyTalentFinalFlash 4.8s ease-in-out infinite;
	pointer-events: none;
}

.emy-talent-final-box h2 {
	position: relative;
	z-index: 2;
	max-width: 820px;
	margin: 0 auto 18px;
	font-size: clamp(2.1rem, 5vw, 4.2rem);
	font-weight: 950;
	line-height: 1.05;
	letter-spacing: -0.055em;
	background: var(--th-gradient-brand);
	-webkit-background-clip: text;
	background-clip: text;
	color: var(--th-color-transparent);
	-webkit-text-fill-color: var(--th-color-transparent);
	text-shadow: 0 18px 45px var(--th-glow-indigo);
}

.emy-talent-final-box h2::after {
	content: "";
	display: block;
	width: 120px;
	height: 5px;
	margin: 22px auto 0;
	border-radius: 999px;
	background: var(--th-gradient-line);
	box-shadow: 0 12px 28px var(--th-glow-indigo);
}

.emy-talent-final-box p {
	position: relative;
	z-index: 2;
	max-width: 720px;
	margin: 0 auto 34px;
	color: var(--th-color-text-soft);
	font-size: clamp(1.02rem, 1.7vw, 1.3rem);
	line-height: 1.75;
}

.emy-talent-final-box .emy-talent-btn-primary {
	position: relative;
	z-index: 2;
	background: var(--th-gradient-cta);
	color: var(--th-color-white);
	box-shadow: 0 18px 44px var(--th-glow-indigo);
}

.emy-talent-final-box .emy-talent-btn-primary:hover {
	color: var(--th-color-white);
	background: var(--th-gradient-cta);
	box-shadow:
		0 24px 54px var(--th-glow-cyan),
		0 0 0 4px var(--th-ring-cyan-strong);
}

@keyframes emyTalentFinalFlash {
	0%, 45% {
		left: -70%;
		opacity: 0;
	}

	58% {
		opacity: 1;
	}

	78%, 100% {
		left: 120%;
		opacity: 0;
	}
}

.emy-talent-final-cta::after {
	content: "";
	position: absolute;
	left: 50%;
	top: 50%;
	width: clamp(580px, 58vw, 920px);
	height: clamp(580px, 58vw, 920px);
	background-image: url('../img/th_logo_sin_fondo.png');
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	transform: translate(-50%, -50%) rotate(-6deg);
	opacity: 0.16;
	filter:
		drop-shadow(0 0 34px var(--th-glow-cyan))
		drop-shadow(0 0 60px var(--th-glow-indigo));
	z-index: 0;
	pointer-events: none;
}

@media (max-width: 767px) {
	.emy-talent-final-cta::after {
		width: 500px;
		height: 500px;
		opacity: 0.12;
	}
}

/* =========================================================
	RESPONSIVE IMPACTO / CTA
========================================================= */

@media (max-width: 991px) {
	.emy-talent-impact-section,
	.emy-talent-final-cta {
		padding: 80px 0;
	}

	.emy-talent-final-box {
		padding: 48px 32px;
	}
}

@media (max-width: 575px) {
	.emy-talent-impact-section,
	.emy-talent-final-cta {
		padding: 70px 0;
	}

	.emy-talent-impact-card {
		padding: 28px 22px;
	}

	.emy-talent-impact-card i {
		width: 58px;
		height: 58px;
		font-size: 1.65rem;
	}

	.emy-talent-final-box {
		padding: 42px 24px;
		border-radius: 28px;
	}

	.emy-talent-final-box h2 {
		font-size: clamp(2rem, 10vw, 3rem);
	}

	.emy-talent-final-box p {
		font-size: 1rem;
	}
}

/* =========================================================
	AJUSTE IMPACTO EMPRESARIAL
========================================================= */

.emy-talent-impact-section .emy-talent-section-head > span {
	color: var(--th-badge-text);
	background: var(--th-badge-bg);
	border: 1px solid var(--th-badge-border);
}

.emy-talent-impact-section .emy-talent-section-head h2 {
	color: var(--th-color-text-main);
}

.emy-talent-impact-section .emy-talent-section-head h2 span {
	display: inline;
	padding: 0;
	border: 0;
	box-shadow: none;
	background: var(--th-gradient-brand);
	-webkit-background-clip: text;
	background-clip: text;
	color: var(--th-color-transparent);
	-webkit-text-fill-color: var(--th-color-transparent);
	text-shadow: 0 18px 45px var(--th-glow-indigo);
}

.emy-talent-impact-section .emy-talent-section-head p {
	color: var(--th-color-text-soft);
}

.emy-talent-service-card:hover .emy-talent-service-icon,
html:not([data-theme="dark"]) .emy-talent-service-card:hover .emy-talent-service-icon,
[data-theme="dark"] .emy-talent-service-card:hover .emy-talent-service-icon {
	color: var(--th-color-white);
	background: var(--th-gradient-cta);
	box-shadow: 0 18px 36px var(--th-glow-indigo);
}

.emy-talent-final-box h2,
.emy-talent-impact-section .emy-talent-section-head h2 span,
[data-theme="dark"] .emy-talent-impact-section .emy-talent-section-head h2 span {
	background: var(--th-gradient-brand);
	-webkit-background-clip: text;
	background-clip: text;
	color: var(--th-color-transparent);
	-webkit-text-fill-color: var(--th-color-transparent);
	text-shadow: 0 18px 45px var(--th-glow-indigo);
}

.emy-talent-brand-logo {
	width: 200px;
	height: 200px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	overflow: visible;
	flex: 0 0 200px;
	margin-right: -10px;
	border-radius: 0;
	background: var(--th-color-transparent);
	border: 0;
	box-shadow: none;
}

.emy-talent-brand-logo::before {
	content: "";
	position: absolute;
	inset: 22px;
	border-radius: 999px;
	background:
		radial-gradient(circle at 38% 30%, var(--th-overlay-white-shine), var(--th-color-transparent) 42%),
		radial-gradient(circle at 62% 72%, var(--th-glow-cyan), var(--th-color-transparent) 56%);
	filter: blur(16px);
	opacity: 0.85;
	z-index: 1;
}

.emy-talent-brand-logo img {
	width: 250px;
	height: 250px;
	object-fit: contain;
	position: relative;
	z-index: 2;
	filter: var(--th-brand-logo-filter);
}