/**
 * Services List Hover Animation Styles
 * Slide Reveal effect para items de lista - Adaptado para fondo negro y texto blanco
 */

.services-list .elementor-icon-list-item {
	position: relative;
	overflow: hidden;
	transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1),
	            background-color 0.4s cubic-bezier(0.4, 0, 0.2, 1),
	            box-shadow 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	cursor: pointer;
	background: transparent;
	border: 1px solid transparent;
}

/* Overlay con gradiente que se desliza desde la izquierda */
.services-list .elementor-icon-list-item::before {
	content: '';
	padding: 10px;
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, 
		transparent 0%,
		rgba(255, 255, 255, 0.08) 20%,
		rgba(255, 255, 255, 0.15) 50%,
		rgba(255, 255, 255, 0.08) 80%,
		transparent 100%);
	transition: left 0.6s cubic-bezier(0.4, 0, 0.2, 1);
	z-index: 0;
	pointer-events: none;
}

/* Borde sutil que aparece en hover */
.services-list .elementor-icon-list-item::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	border: 1px solid rgba(255, 255, 255, 0.1);
	opacity: 0;
	transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1),
	            border-color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	z-index: 1;
	pointer-events: none;
}

/* Estado hover */
.services-list .elementor-icon-list-item:hover {
	padding: 10px;
	transform: translateX(8px) translateY(-2px);
	/* From https://css.glass */
	background: rgba(0, 0, 0, 0.4);
	backdrop-filter: blur(9.3px);
	-webkit-backdrop-filter: blur(9.3px);

}

/* Overlay se desliza completamente al hover */
.services-list .elementor-icon-list-item:hover::before {
	left: 100%;
}

/* Borde aparece en hover */
.services-list .elementor-icon-list-item:hover::after {
	opacity: 1;
	border: 1px solid rgba(0, 0, 0, 0.05);

}

/* Contenido interno (texto, iconos) - debe estar por encima del overlay */
.services-list .elementor-icon-list-item > * {
	position: relative;
	z-index: 2;
	transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1),
	            opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1),
	            color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Texto se ilumina ligeramente en hover */
.services-list .elementor-icon-list-item:hover .elementor-icon-list-text,
.services-list .elementor-icon-list-item:hover .elementor-icon-list-icon {
	transform: translateX(4px);
	opacity: 1;
	color: #ffffff;
	filter: brightness(1.1);
}

/* Iconos específicamente - pueden tener una animación extra */
.services-list .elementor-icon-list-item:hover .elementor-icon-list-icon i {
	transform: scale(1.1);
	transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Efecto de brillo adicional para el texto en hover */
.services-list .elementor-icon-list-item:hover .elementor-icon-list-text {
	text-shadow: 0 0 8px rgba(255, 255, 255, 0.3),
	             0 0 16px rgba(255, 255, 255, 0.1);
}

/* Asegurar que los links dentro mantengan el estilo */
.services-list .elementor-icon-list-item a {
	color: inherit;
	text-decoration: none;
	display: block;
	width: 100%;
}

/* Animación más suave para elementos internos */
.services-list .elementor-icon-list-item .elementor-icon-list-text,
.services-list .elementor-icon-list-item .elementor-icon-list-icon {
	transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Efecto de profundidad adicional en hover */
.services-list .elementor-icon-list-item:hover {
	position: relative;
}

.services-list .elementor-icon-list-item:hover::before {
	background: linear-gradient(90deg, 
		transparent 0%,
		rgba(255, 255, 255, 0.12) 15%,
		rgba(255, 255, 255, 0.2) 50%,
		rgba(255, 255, 255, 0.12) 85%,
		transparent 100%);
}

/* Optimización para touch devices */
@media (hover: none) and (pointer: coarse) {
	.services-list .elementor-icon-list-item:active {
		transform: translateX(4px);
		background-color: rgba(255, 255, 255, 0.05);
	}
}

/* Asegurar contraste y legibilidad */
.services-list .elementor-icon-list-item {
	color: #ffffff;
}

.services-list .elementor-icon-list-item .elementor-icon-list-icon,
.services-list .elementor-icon-list-item .elementor-icon-list-text {
	color: #ffffff;
}
