/* Indicaciones de neuromodulación: círculos completos en una cuadrícula equilibrada. */
.elementor-6 .elementor-element.elementor-element-317ab06 {
	--e-con-grid-template-columns: repeat(6, minmax(0, 1fr));
	--e-con-grid-template-rows: none;
	--grid-auto-rows: auto;
	gap: 22px;
	padding-inline: 28px;
}

.elementor-6 .elementor-element.elementor-element-317ab06 > .elementor-widget-heading {
	align-self: stretch;
	min-width: 0;
}

.elementor-6 .elementor-element.elementor-element-317ab06 > .elementor-widget-heading > .elementor-widget-container {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	aspect-ratio: 1;
	padding: 14px;
	overflow: hidden;
	border-radius: 50% !important;
	clip-path: circle(50% at 50% 50%);
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
}

/* Clase reutilizable para futuros círculos agregados desde Elementor. */
.circulos-neuromodulacion > .elementor-widget-heading > .elementor-widget-container,
.circulos-neuromodulacion .elementor-widget-heading > .elementor-widget-container {
	overflow: hidden;
	border-radius: 50% !important;
	clip-path: circle(50% at 50% 50%);
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: cover !important;
}

.circulos-neuromodulacion img {
	width: 100%;
	height: 100%;
	border-radius: 50% !important;
	object-fit: cover;
}

.elementor-6 .elementor-element.elementor-element-317ab06 > .elementor-widget-heading > .elementor-widget-container::before {
	position: absolute;
	inset: 0;
	z-index: 0;
	content: "";
	background: rgb(4 31 60 / 55%);
	opacity: 0;
	transition: opacity 220ms ease;
}

.elementor-6 .elementor-element.elementor-element-317ab06 .elementor-heading-title {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 0;
	margin: 0;
	font-size: clamp(12px, 0.85vw, 16px);
	line-height: 1.35 !important;
	text-wrap: balance;
}

@media (hover: hover) and (pointer: fine) {
	.elementor-6 .elementor-element.elementor-element-317ab06 .elementor-heading-title {
		opacity: 0;
		transform: translateY(8px);
		transition: opacity 220ms ease, transform 220ms ease;
	}

	.elementor-6 .elementor-element.elementor-element-317ab06 > .elementor-widget-heading:hover > .elementor-widget-container::before {
		opacity: 1;
	}

	.elementor-6 .elementor-element.elementor-element-317ab06 > .elementor-widget-heading:hover .elementor-heading-title {
		opacity: 1;
		transform: translateY(0);
	}
}

@media (hover: none), (pointer: coarse) {
	.elementor-6 .elementor-element.elementor-element-317ab06 > .elementor-widget-heading > .elementor-widget-container::before {
		opacity: 0.45;
	}
}

@media (max-width: 1200px) {
	.elementor-6 .elementor-element.elementor-element-317ab06 {
		--e-con-grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.elementor-6 .elementor-element.elementor-element-317ab06 {
		--e-con-grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 14px;
		padding-inline: 10px;
	}

	.elementor-6 .elementor-element.elementor-element-317ab06 .elementor-heading-title {
		font-size: 13px;
	}
}
