/* Normalize light-weight */
*,
*::before,
*::after {
	box-sizing: border-box
}

body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
	margin: 0
}

ul[role="list"],
ol[role="list"] {
	list-style: none
}

html:focus-within {
	scroll-behavior: smooth
}

body {
	min-height: 100vh;
	text-rendering: optimizeSpeed;
	line-height: 1.5
}

a:not([class]) {
	text-decoration-skip-ink: auto
}

img,
picture {
	max-width: 100%;
	display: block
}

input,
button,
textarea,
select {
	font: inherit
}

@media(prefers-reduced-motion:reduce) {
	html:focus-within {
		scroll-behavior: auto
	}

	*,
	*::before,
	*::after {
		animation-duration: .01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .01ms !important;
		scroll-behavior: auto !important
	}
}



/* CSS Mobile */
.cmplz-cookiebanner .cmplz-buttons {
	flex-direction: row !important;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner {
	row-gap: 0px;
	padding: 5px;
}

#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-btn {
	padding: 5px;
	height: 30px;
	line-height: 10px;
}

/* Markdown tabs */
.mk-tabs .tab-content {
	display: none;
	padding: 1em;
}

.mk-tabs .tab.active .tab-content {
	display: block;
}

.mk-tabs .tab-header {
	cursor: pointer;
	padding: 10px 20px;
	border-bottom: 1px solid #ddd;
	font-weight: bold;
}





/* Markdown temario */

.mk-temario .tab-content {
	display: none;
}

.mk-temario .tab.active .tab-content {
	display: block;
}

.mk-temario .tab-header {
	cursor: pointer;
	padding: 0.5em;
	background: #eee;
	margin-bottom: 2px;
}

.mk-temario .tab.active .tab-header {
	font-weight: bold;
}


/* Markdown List */
.mk-list ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.mk-list li {}

.mk-list li:last-child {}

.mk-list li strong {
	font-weight: 600;
}

.valoracion-wrap svg {
	padding: 1px 0px 0px 1px;
}

/* ABRIR al hacer clic (usamos checkbox hack a continuación con JS si se quiere) */
.mk-tab li.active .tab-content {
	display: block;
}

@keyframes fadeIn {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}


/* Labels */

.gform_body .gfield:not(.fm-s) {
	position: relative;
}

.gform_wrapper .gform_body .gfield:not(.es_legal) .gfield-label:not(.fm-w) {
	position: absolute;
	top: -12px;
	z-index: 1;
	background: white;
	padding: 0px 5px;
	border-radius: 5px;
	left: 7px;
	font-size: 12px;
	color: #828899;
}


.gform_wrapper .gform_body .es_legal .gform-field-label {
	background: none;
	font-size: 12px;
}

.gform-span-legal {
	font-size: 12px;
	display: block;
	margin: -10px 0px -10px 0px;
}

/* Menu horizontal */
#sticky-menu-follow .e-n-menu-heading {
	overflow-x: auto;
	display: flex;
	scroll-behavior: smooth;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
	-ms-overflow-style: none;
}

#sticky-menu-follow .e-n-menu-heading::-webkit-scrollbar {
	display: none;
}

#sticky-menu-follow .e-n-menu-item {
	flex: 0 0 auto;
}

#sticky-menu-follow .e-n-menu-title-container.active {
	font-weight: bold;
	color: var(--clr-2);
	border-bottom: 2px solid var(--clr-2);
}

.elementor-widget-n-menu .e-n-menu-title.e-current,
.elementor-widget-n-menu .e-n-menu-title.e-current a {
	color: inherit !important;
}


/* Validaciones */
.gform_fields .gfield .gfield_validation_message {
	margin-left: 15px;
	margin-bottom: 15px;
	position: absolute;
	right: 0;
	background: #fff0f0;
	padding: 5px;
	z-index: 1;
	color: red;
	top: -21px;
	right: 10px;
	border-radius: 5px;
	font-size: 10px;
}

/* SPF remove error */
.iti__tel-input.error {
	border: 1px solid #eaeaea !important;
}

.spf-phone {
	display: none !important;
}

/* ✔️ Mostrar icono check solo si el campo ha pasado validación Y tiene foco antes */
.gform_wrapper .gfield:not(.es_legal) input[aria-invalid="false"]:not(:placeholder-shown):not(:focus):not([value=""]) {
	background-image: url("data:image/svg+xml,%3Csvg fill='green' height='20' viewBox='0 0 24 24' width='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.292 5.708a1 1 0 010 1.414L9.414 18 3.707 12.293a1 1 0 011.414-1.414l4.293 4.293L18.878 5.708a1 1 0 011.414 0z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 0.75em center;
	background-size: 1.2em 1.2em;
	padding-right: 2.5em;
}

/* Mostrar icono si el select tiene un valor seleccionado distinto de vacío */
.gform_wrapper .gfield select[aria-invalid="false"]:not(:focus) option:checked:not([value=""])::after {
	content: '';
}

/* Esto realmente no aplica background al option, sino que nos permite usar JS si queremos */

.gform_wrapper .gfield select[aria-invalid="false"]:not(:focus):has(option:checked:not([value=""])) {
	background-image: url("data:image/svg+xml,%3Csvg fill='green' height='20' viewBox='0 0 24 24' width='20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.292 5.708a1 1 0 010 1.414L9.414 18 3.707 12.293a1 1 0 011.414-1.414l4.293 4.293L18.878 5.708a1 1 0 011.414 0z'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 0.75em center;
	background-size: 1.2em 1.2em;
	padding-right: 2.5em;
}

/* Ocultar si es inválido o sigue con el valor vacío */
.gform_wrapper .gfield select[aria-invalid="true"],
.gform_wrapper .gfield select:has(option:checked[value=""]) {
	background-image: none !important;
}


/* Quitar icono si hay error */
.gform_wrapper .gfield input[aria-invalid="true"] {
	background-image: none !important;
}


/* Gform */

.pcafe_sp_field .iti__selected-flag {
	z-index: 0;
	background: transparent !important;
	font-size: 12px;
	padding-right: 0px;
	margin-right: 0px;
}

.gform-theme--foundation .gform_fields {
	grid-column-gap: 20px;
	column-gap: 20px !important;
}

.gform-theme--foundation .gfield--width-half {
	grid-column: span 6 !important;
	row-gap: 20px;
}

.gform-theme--foundation .gf_wide {
	grid-column: span 12 !important;

}


.gform_wrapper.gravity-theme label {
	font-size: 14px;
	font-weight: 500;
}

/*
	 * Para uys
	.gform_wrapper.gravity-theme .validation_message {
		padding: 0;
		position: relative;
		top: -15px;
		margin: 5px;
		width: auto;
		color: #c02b0a;
		font-size: 12px;
		border-radius: 5px;
		width: auto;
		display: inline-block;
		padding: 4px;
		border: solid 1px #fff;
	}*/

.gform-theme--foundation .gform_body .gform_fields {
	row-gap: 30px;
}

.gform_fields .gfield .gfield_validation_message {
	margin-left: 15px;
	margin-bottom: 0px;
	position: relative;
	right: 0;
	background: transparent;
	padding: 5px;
	z-index: 1;
	color: red;
	right: 8px;
	border-radius: 5px;
	font-size: 10px;
	top: -10px;
}

.gfield--input-type-consent .validation_message {
	display: none !important;
}


/* CTA */
.gform-footer .gform_button {
	width: 100%;
	display: flex;
	flex-grow: 1;
	border-radius: 50px;
	font-size: 16px;
	padding: 15px 10px;
	font-weight: 600;
}

/* CTA FLOAT */
.cta {
	position: relative;
	cursor: pointer;
	padding: 0px;
	margin: 0 auto;
	width: 90%;
	border-radius: 100px !important;
}

.cta-desktop {
	position: relative;
	cursor: pointer;
	padding: 0;
	margin: 0;
	border-radius: 100px !important;
}


.cta a:hover {}

.cta a,
.cta-desktop a {
	position: abolute;
	border-radius: 100px !important;
}

.cta a::after,
.cta a::before,
.cta-desktop a::after,
.cta-desktop a::before {
	content: " ";
	position: absolute;
	z-index: -1;
	inset: -0.05rem;
	border-radius: inherit;
}

@keyframes rotate {
	0% {
		--gradient-angle: 0deg;
	}

	100% {
		--gradient-angle: 360deg;
	}
}

/* Nones */

.gform_wrapper .gform_validation_errors,
.gform_wrapper .gform_heading {
	display: none !important;
}

/* Gform */



.gform_wrapper .gfield--type-name .ginput_container--name,
.gform_wrapper .gfield--type-text .ginput_container,
.gform_wrapper .gfield--type-email .ginput_container,
.gform_wrapper .gfield--type-phone .ginput_container {
	position: relative !important;
}

.gfield_description.instruction {
	display: none !important;
}

.gfield--type-address .address_line_2,
.gfield--type-address .address_city,
.gfield--type-address .address_state,
.gfield--type-address .address_zip,
.gfield--type-address .address_country {
	display: none !important;
}

/* Multistep */

.fm .gform-page-footer {
	display: flex;
	flex-direction: column;
}

.gform-page-footer {
	margin-bottom: 0px;
	padding-bottom: 0px !important;
}

.fm .gform-page-footer .gform_previous_button {
	order: 2;
	background: transparent !important;
	font-size: 18px !important;
	color: #cfd3d9 !important;
	padding: 0px;
	margin: 20px 0px !important;
}

.fm-end .gform-page-footer .gform_button {
	margin: 0px !important;
	border-radius: 50px !important;
}

.fm-end .gform-page-footer .gform_button {
	background: #4EC623 !important;
}

.fm-end .gform-page-footer .gform_previous_button:hover {
	color: var(--e-global-color-3f9de96) !important;
}

.fm .gform_wrapper.gravity-theme .gform_page_footer .gform_next_button,
.fm .gform_wrapper.gravity-theme .gform_page_footer .gform_button {
	border: 0px;
	margin: 0px auto !important;
	width: 150px;
}

.fm .gform_wrapper.gravity-theme .gform_page_footer .gform_button {
	width: 100%;
}

.fm .gform-page-footer .gform-theme-button {
	border: 0px;
	border-radius: 100px;
	font-size: 16px;
	width: 100%;
	margin: 0px auto;
	line-height: 1 !important;
}

.fm .gform-page-footer .gform-theme-button:hover {
	background-color: #9cd790;
	color: #fff;
}

.fm .step-alone .gform-page-footer .gform-theme-button {
	display: none;
}



/* Spinner para GF 2.9 */
.gform_wrapper form[data-active-form="true"] .gform-loader {
	display: none !important;
}

.gform_wrapper form[data-active-form="true"] {
	opacity: 0.5;
	/* Reduce la opacidad */
	pointer-events: none;
	/* Deshabilitar la interacción con el formulario */
}

.gform_wrapper form[data-active-form="true"]:after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 150px;
	/* Tamaño del spinner */
	height: 150px;
	/* Tamaño del spinner */
	border: 4px solid rgba(255, 255, 255, 0.3);
	border-top-color: #000;
	border-radius: 50%;
	animation: spinloader 1s linear infinite;
	z-index: 11;
	/* Encima del overlay */
	transform-origin: center;
	/* Asegurar que el giro es alrededor del centro */
}

@keyframes spinloader {
	from {
		transform: translate(-50%, -50%) rotate(0deg);
		/* Ajustar transform completo */
		position: absolute;
	}

	to {
		transform: translate(-50%, -50%) rotate(360deg);
		/* Mantener el centro */
		position: absolute;
	}
}

/* CSS Desktop */
@media (min-width: 768px) {

	/* A eliminar en futuas versiones: solo para cursos.jobkiero
				.gform_wrapper .gform_body .gfield:not(.es_legal) .gform-field-label {
						top: -12px;
						font-size: 14px;
					}
				
					.gform-span-legal {
						font-size: 12px;
						display: block;
						color: #555555;
						margin: 0px 0px 0px 0px;
					}
				
					.gform-span-legal {
						margin: -20px 0px;
						display: block;
					}
				
					.gform-theme--foundation .gf_wide {
						grid-column: span 6 !important;
				
					}
				
					html h2 {
						font-size: 24px;
						line-height: 30px;
						letter-spacing: -1.3px;
					}
		*/

	#cmplz-cookiebanner-container .cmplz-cookiebanner {
		row-gap: 5px;
		padding: 15px;
	}
}