/* =============================================================================
   Widget: Profic Pasos numerados
   Figma Prueba-WPFIG — Desktop 2199:4007 / Tablet 2199:4559 / Mobile 2199:5122

   Desktop 1280: pad 120 0 · gap 80 · pill 809 (texto pad 0 120) · cards 800×200 en fila
   Tablet   800: pill y cards a 720 (pad 0 40) · cards en fila, descripción 15px
   Mobile   375: el frame de Figma está roto (pill de 857px, cards 2 y 3 sin convertir);
                se aplica el layout de la card 1 a todas: nº / título / línea horizontal / texto
   ============================================================================= */

.elementor-widget-profic_pasos_numerados > .elementor-widget-container {
	margin: 0;
	padding: 0;
}

.profic-pasos {
	position: relative;
	width: 100%;
	padding: 120px 0;
	box-sizing: border-box;
	overflow-x: clip;
	overflow-y: visible;
	color: #090511;
	font-family: "Amsi Pro", sans-serif;
}

.profic-pasos.profic-pasos--contained {
	overflow: hidden;
}

/* ---------- Líneas de fondo (Group 12) ---------- */

.profic-pasos__bg {
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
}

.profic-pasos__bg img {
	position: absolute;
	max-width: none;
	height: auto;
}

/* Tablet y mobile: misma onda horizontal, 70px a la izquierda del centro y 209px sobre el final */
.profic-pasos__bg .profic-pasos__bg-tablet {
	left: calc(50% - 2448px);
	top: calc(100% - 214px);
	width: 4756px;
}

.profic-pasos__bg .profic-pasos__bg-desktop {
	display: none;
}

@media (min-width: 1280px) {
	.profic-pasos__bg .profic-pasos__bg-tablet {
		display: none;
	}

	/* Onda rotada −25.69°: arranca 352px sobre la sección y cruza detrás de las cards */
	.profic-pasos__bg .profic-pasos__bg-desktop {
		display: block;
		left: calc(50% - 1790px);
		top: -355px;
		width: 3545px;
	}
}

/* ---------- Contenido ---------- */

.profic-pasos__inner {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 80px;
}

.profic-pasos__header {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 50px;
	width: 100%;
	padding: 0 10px;
	box-sizing: border-box;
}

@media (min-width: 800px) {
	.profic-pasos__header {
		padding: 0 40px;
	}
}

@media (min-width: 1280px) {
	.profic-pasos__header {
		padding: 0;
	}
}

.profic-pasos__pill {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	padding: 10px 10px 10px 20px;
	box-sizing: border-box;
	border-radius: 58px;
	background: #fff;
	box-shadow: 0 4px 7px rgba(0, 28, 190, 0.1);
	color: inherit;
	text-decoration: none;
}

@media (min-width: 800px) {
	.profic-pasos__pill {
		justify-content: flex-end;
		padding: 20px;
	}
}

@media (min-width: 1280px) {
	.profic-pasos__pill {
		justify-content: center;
		width: auto;
	}
}

a.profic-pasos__pill,
a.profic-pasos__pill:hover,
a.profic-pasos__pill:focus {
	color: inherit;
	text-decoration: none;
}

.profic-pasos .profic-pasos__title {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	color: inherit;
	font-family: inherit;
	font-size: 28px;
	font-weight: 300;
	line-height: 1.2;
	letter-spacing: 0;
	text-align: center;
}

@media (min-width: 800px) {
	.profic-pasos .profic-pasos__title {
		flex: 0 1 auto;
		padding-right: 72px;
		font-size: 34px;
	}
}

@media (min-width: 1280px) {
	.profic-pasos .profic-pasos__title {
		padding: 0 120px;
		white-space: nowrap;
	}
}

.profic-pasos__button {
	display: block;
	flex: none;
	width: 56px;
	line-height: 0;
}

@media (min-width: 800px) {
	.profic-pasos__button {
		width: 57px;
	}
}

.profic-pasos__button img {
	display: block;
	width: 100%;
	height: auto;
}

.profic-pasos .profic-pasos__subtitle {
	margin: 0;
	color: #000;
	font-size: 14px;
	font-weight: 300;
	line-height: 1.5;
	text-align: center;
}

@media (min-width: 800px) {
	.profic-pasos .profic-pasos__subtitle {
		line-height: 1.46;
	}
}

@media (min-width: 1280px) {
	.profic-pasos .profic-pasos__subtitle {
		font-size: 18px;
		line-height: 1.48;
	}
}

/* ---------- Cards ---------- */

.profic-pasos__list {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 30px;
	width: 100%;
	margin: 0;
	padding: 0 10px;
	box-sizing: border-box;
	list-style: none;
}

@media (min-width: 800px) {
	.profic-pasos__list {
		padding: 0 40px;
	}
}

.profic-pasos__card {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 30px;
	width: 100%;
	margin: 0;
	padding: 30px 50px;
	box-sizing: border-box;
	overflow: hidden;
	border-radius: 21px;
	background: #fff;
	box-shadow: 0 4px 7px rgba(10, 0, 154, 0.1);
	text-align: center;
}

@media (min-width: 800px) {
	.profic-pasos__card {
		flex-direction: row;
		min-height: 200px;
		text-align: left;
	}
}

@media (min-width: 1280px) {
	.profic-pasos__card {
		width: 800px;
		max-width: 100%;
	}
}

.profic-pasos__number {
	flex: none;
	width: 60px;
	color: #b71694;
	font-size: 86px;
	font-weight: 200;
	line-height: 1.1;
	text-align: center;
}

.profic-pasos .profic-pasos__card-title {
	flex: none;
	width: 165px;
	max-width: 100%;
	margin: 0;
	padding: 12px 0;
	color: inherit;
	font-family: inherit;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: 0;
}

@media (min-width: 800px) {
	.profic-pasos .profic-pasos__card-title {
		font-size: 17px;
	}
}

@media (min-width: 1280px) {
	.profic-pasos .profic-pasos__card-title {
		font-size: 20px;
		line-height: 1.2;
	}
}

/* Line 14: en Figma la línea no ocupa espacio, quedan solo los dos gaps de 30 */
.profic-pasos__divider {
	flex: none;
	width: 80px;
	height: 1px;
	margin-bottom: -1px;
	background: #b71694;
}

@media (min-width: 800px) {
	.profic-pasos__divider {
		width: 1px;
		height: 80px;
		margin: 0 -1px 0 0;
	}
}

.profic-pasos .profic-pasos__card-text {
	margin: 0;
	color: inherit;
	font-family: inherit;
	font-size: 15px;
	font-weight: 300;
	line-height: 1.5;
	letter-spacing: 0.01em;
}

@media (min-width: 800px) {
	.profic-pasos .profic-pasos__card-text {
		flex: 1 1 0;
		min-width: 0;
		padding-left: 20px;
		line-height: 23px;
	}
}

@media (min-width: 1280px) {
	.profic-pasos .profic-pasos__card-text {
		font-size: 17px;
		line-height: 1.5;
	}
}
