:root {
    --aim-card-cta-font-weight: var(--wp--custom--ui--card-cta-font-weight, 500);
    --onlines-ui-hover-duration: var(--wp--custom--ui--hover-duration, 180ms);
    --onlines-ui-hover-easing: var(--wp--custom--ui--hover-easing, ease);
    --onlines-ui-color-transition: background-color var(--onlines-ui-hover-duration) var(--onlines-ui-hover-easing), color var(--onlines-ui-hover-duration) var(--onlines-ui-hover-easing), border-color var(--onlines-ui-hover-duration) var(--onlines-ui-hover-easing);
}

/* Card con imagen contraíble, extracto revelado y CTA inferior. */
:where(.onlines-ui-card--expandable) {
	--onlines-ui-card-height: 312px;
	--onlines-ui-card-media-height: 114px;
	--onlines-ui-card-media-height-active: 59px;
	--onlines-ui-card-padding-inline: 25px;
	--onlines-ui-card-padding-top: 30px;
	--onlines-ui-card-padding-active: 25px;
	--onlines-ui-card-padding-bottom: 25px;
	display: flex;
	height: var(--onlines-ui-card-height);
	min-width: 0;
	flex-direction: column;
	overflow: hidden;
	border-radius: 5px;
	background: var(--aim-white, var(--wp--preset--color--aim-white));
	color: var(--aim-dark, var(--wp--preset--color--aim-dark));
	text-decoration: none;
}

/* Cards de acción cuyo fondo se vuelve gradiente: el CTA permanece blanco. */
.onlines-ui-card--gradient-action .onlines-ui-card__boxed-cta,
.onlines-ui-card--gradient-action:hover .onlines-ui-card__boxed-cta,
.onlines-ui-card--gradient-action:focus-visible .onlines-ui-card__boxed-cta,
.onlines-ui-card--gradient-action:focus-within .onlines-ui-card__boxed-cta {
	background: var(--aim-white, var(--wp--preset--color--aim-white));
	color: var(--aim-panel, var(--wp--preset--color--aim-navy));
}

.is-aim-slider-loop .aim-slider__viewport {
	cursor: grab;
	touch-action: pan-y;
	-webkit-user-select: none;
	user-select: none;
}

.is-aim-slider-loop .aim-slider__viewport *,
.swiper-wrapper,
.swiper-slide {
	-webkit-user-select: none;
	user-select: none;
}

.is-aim-slider-loop .aim-slider__viewport img {
	-webkit-user-drag: none;
	-webkit-user-select: none;
	user-select: none;
}

.swiper-wrapper img,
.swiper-slide img {
	-webkit-user-drag: none;
}

.is-aim-slider.is-aim-slider-pointer-down,
.is-aim-slider.is-aim-slider-pointer-down * {
	-webkit-user-select: none;
	user-select: none;
}

.is-aim-slider.is-aim-slider-dragging,
.is-aim-slider.is-aim-slider-dragging * {
	-webkit-user-select: none;
	user-select: none;
}

.is-aim-slider.is-aim-slider-dragging .aim-slider__viewport {
	cursor: grabbing;
}

:where(.onlines-ui-card--expandable) :where(.onlines-ui-card__media) {
	position: relative;
	display: block;
	width: 100%;
	height: var(--onlines-ui-card-media-height);
	flex: 0 0 var(--onlines-ui-card-media-height);
	overflow: hidden;
	background: linear-gradient(
		90deg,
		var(--aim-navy-light, var(--wp--preset--color--aim-navy-light)) 0%,
		var(--aim-blue, var(--wp--preset--color--aim-blue)) 100%
	);
	transition: height 320ms ease, flex-basis 320ms ease;
}

.onlines-ui-card--expandable .onlines-ui-card__media picture,
.onlines-ui-card--expandable .onlines-ui-card__media img {
	display: block;
	width: 100%;
	height: 100%;
}

.onlines-ui-card--expandable .onlines-ui-card__media img {
	max-width: none;
	object-fit: cover;
	object-position: 50% 50%;
	transition: opacity var(--onlines-ui-hover-duration) var(--onlines-ui-hover-easing);
}

:where(.onlines-ui-card--expandable) :where(.onlines-ui-card__body) {
	display: flex;
	min-height: 0;
	flex: 1 1 auto;
	flex-direction: column;
	overflow: hidden;
	padding: var(--onlines-ui-card-padding-top) var(--onlines-ui-card-padding-inline) var(--onlines-ui-card-padding-bottom);
	background: var(--aim-white, var(--wp--preset--color--aim-white));
	transition: padding 320ms ease;
}

:where(.onlines-ui-card--expandable) :where(.onlines-ui-card__copy) {
	display: flex;
	min-height: 0;
	flex-direction: column;
	gap: 5px;
	overflow: hidden;
}

:where(.onlines-ui-card--expandable) :where(.onlines-ui-card__title) {
	display: -webkit-box;
	overflow: hidden;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

:where(.onlines-ui-card--expandable) :where(.onlines-ui-card__excerpt) {
	display: -webkit-box;
	max-height: 0;
	margin: 0;
	overflow: hidden;
	opacity: 0;
	transform: translateY(-4px);
	transition: max-height 320ms ease, opacity var(--onlines-ui-hover-duration) var(--onlines-ui-hover-easing), transform 320ms ease;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

:where(.onlines-ui-card--expandable) :where(.onlines-ui-card__cta) {
	margin-top: auto;
	color: var(--aim-gray, var(--wp--preset--color--aim-gray));
	transition: color var(--onlines-ui-hover-duration) var(--onlines-ui-hover-easing);
}

.onlines-ui-card--expandable.onlines-ui-card--interactive:focus-visible .onlines-ui-card__media {
	height: var(--onlines-ui-card-media-height-active);
	flex-basis: var(--onlines-ui-card-media-height-active);
}

.onlines-ui-card--expandable.onlines-ui-card--interactive:focus-visible .onlines-ui-card__media img {
	opacity: 0;
}

.onlines-ui-card--expandable.onlines-ui-card--interactive:focus-visible .onlines-ui-card__body {
	padding-top: var(--onlines-ui-card-padding-active);
}

.onlines-ui-card--expandable.onlines-ui-card--interactive:focus-visible .onlines-ui-card__excerpt {
	max-height: 57px;
	opacity: 1;
	transform: translateY(0);
}

.onlines-ui-card--expandable.onlines-ui-card--interactive:focus-visible .onlines-ui-card__cta {
	color: var(--aim-blue, var(--wp--preset--color--aim-blue));
}

.onlines-ui-card--expandable.onlines-ui-card--interactive:focus-visible {
	outline: 3px solid var(--aim-blue, var(--wp--preset--color--aim-blue));
	outline-offset: -3px;
}

@media (hover: hover) and (pointer: fine) {
	.onlines-ui-card--expandable.onlines-ui-card--interactive:hover .onlines-ui-card__media {
		height: var(--onlines-ui-card-media-height-active);
		flex-basis: var(--onlines-ui-card-media-height-active);
	}

	.onlines-ui-card--expandable.onlines-ui-card--interactive:hover .onlines-ui-card__media img {
		opacity: 0;
	}

	.onlines-ui-card--expandable.onlines-ui-card--interactive:hover .onlines-ui-card__body {
		padding-top: var(--onlines-ui-card-padding-active);
	}

	.onlines-ui-card--expandable.onlines-ui-card--interactive:hover .onlines-ui-card__excerpt {
		max-height: 57px;
		opacity: 1;
		transform: translateY(0);
	}

	.onlines-ui-card--expandable.onlines-ui-card--interactive:hover .onlines-ui-card__cta {
		color: var(--aim-blue, var(--wp--preset--color--aim-blue));
	}
}

:where(
    .aim-card-cta,
    .aim-hover-link,
    .aim-action-card__button,
    .aim-training-professional .seccion-imagen-contenido__button,
    .aim-training-courses .seccion-imagen-contenido__button,
    .aim-training-card__cta,
    .aim-professional-card__cta,
    .aim-training-related-card__cta,
    .aim-communication-card__cta,
    .aim-projects-featured__cta,
    .aim-project-card__cta,
    .aim-job-card__cta,
    .aim-library-featured__cta,
    .aim-library-video-card__cta,
    .aim-contact-location__cta,
    .aim-convenios__button,
    .card-noticia__cta,
    .card-noticia__editor-placeholder-cta
) {
    font-weight: var(--aim-card-cta-font-weight) !important;
	transform: none !important;
}

/* Las flechas de los CTA forman parte del estado inicial en todo el sitio. */
:where(
	.aim-hover-link__arrow,
	.aim-action-card__button-arrow,
	.aim-training-card__arrow,
	.aim-professional-card__arrow,
	.aim-training-related-card__arrow,
	.aim-convenios__button-arrow
) {
	display: inline-flex !important;
	height: 13px !important;
	flex: 0 0 15px;
	align-items: center;
	justify-content: center;
	width: 15px !important;
	overflow: visible !important;
	opacity: 1 !important;
	color: inherit;
	transform: translateX(0) !important;
	transition: transform var(--onlines-ui-hover-duration) var(--onlines-ui-hover-easing) !important;
}

:where(
	.aim-hover-link:hover .aim-hover-link__arrow,
	.aim-hover-link:focus-visible .aim-hover-link__arrow,
	.aim-program-card:hover .aim-hover-link__arrow,
	.aim-program-card:focus-visible .aim-hover-link__arrow,
	.aim-news-card:hover .aim-hover-link__arrow,
	.aim-news-card:focus-visible .aim-hover-link__arrow,
	.aim-action-card:hover .aim-action-card__button-arrow,
	.aim-action-card:focus-visible .aim-action-card__button-arrow,
	.aim-training-card:hover .aim-training-card__arrow,
	.aim-training-card:focus-visible .aim-training-card__arrow,
	.aim-professional-card:hover .aim-professional-card__arrow,
	.aim-professional-card:focus-visible .aim-professional-card__arrow,
	.aim-training-related-card:hover .aim-training-related-card__arrow,
	.aim-training-related-card:focus-visible .aim-training-related-card__arrow,
	.aim-convenios__card.has-link:hover .aim-convenios__button-arrow,
	.aim-convenios__card.has-link:focus-within .aim-convenios__button-arrow
) {
	transform: translateX(4px) !important;
}

:where(
	.aim-hover-link__arrow,
	.aim-action-card__button-arrow,
	.aim-training-card__arrow,
	.aim-professional-card__arrow,
	.aim-training-related-card__arrow,
	.aim-convenios__button-arrow
)::before {
	width: 15px;
	height: 13px;
	background-color: currentColor;
	content: "";
	-webkit-mask: url("../images/home/action-active-arrow.svg") center / contain no-repeat;
	mask: url("../images/home/action-active-arrow.svg") center / contain no-repeat;
}

:where(
	.aim-hover-link__arrow,
	.aim-action-card__button-arrow,
	.aim-training-card__arrow,
	.aim-professional-card__arrow,
	.aim-training-related-card__arrow,
	.aim-convenios__button-arrow
) > img {
	display: none !important;
}

/* Variantes heredadas donde la flecha todavía llega como un img directo. */
:where(
	.aim-communication-card__cta,
	.aim-library-featured__cta,
	.aim-library-video-card__cta,
	.aim-projects-featured__cta,
	.aim-project-card__cta,
	.aim-job-card__cta,
	.aim-contact-location__cta
)::after {
	position: relative;
	z-index: 1;
	display: block;
	width: 15px;
	height: 13px;
	flex: 0 0 15px;
	background-color: currentColor;
	content: "";
	transform: translateX(0);
	transition: transform var(--onlines-ui-hover-duration) var(--onlines-ui-hover-easing);
	-webkit-mask: url("../images/home/action-active-arrow.svg") center / contain no-repeat;
	mask: url("../images/home/action-active-arrow.svg") center / contain no-repeat;
}

:where(
	.aim-communication-card__cta,
	.aim-library-featured__cta,
	.aim-library-video-card__cta,
	.aim-projects-featured__cta,
	.aim-project-card__cta,
	.aim-job-card__cta,
	.aim-contact-location__cta
) > img {
	display: none !important;
}

:where(
	.aim-communication-card.has-link:hover .aim-communication-card__cta,
	.aim-communication-card.has-link:focus-visible .aim-communication-card__cta,
	.aim-library-featured__cta:hover,
	.aim-library-featured__cta:focus-visible,
	.aim-library-video-card:hover .aim-library-video-card__cta,
	.aim-library-video-card:focus-visible .aim-library-video-card__cta,
	.aim-projects-featured__card:hover .aim-projects-featured__cta,
	.aim-projects-featured__card:focus-visible .aim-projects-featured__cta,
	.aim-project-card:hover .aim-project-card__cta,
	.aim-project-card:focus-visible .aim-project-card__cta,
	.aim-job-card:hover .aim-job-card__cta,
	.aim-job-card:focus-visible .aim-job-card__cta,
	.aim-contact-location__cta:hover,
	.aim-contact-location__cta:focus-visible
)::after {
	transform: translateX(4px);
}

:where(
    .onlines-ui-button,
    .onlines-ui-control,
    .aim-language,
    .aim-menu-toggle,
    .aim-event-group__toggle,
    .aim-news__all,
    .onlines-newsletter-form button,
    .gform_wrapper input[type="submit"],
    .gform_wrapper button[type="submit"],
    .resena-historica__toggle,
    .resena-historica__page,
    .resena-historica__step,
    .slider__nav-button,
    .seccion-fondo__button
) {
    transition: var(--onlines-ui-color-transition);
}

.gform_wrapper .gfield.js-aim-focusable-field {
	cursor: text;
}

.gform_wrapper .gfield.js-aim-focusable-field.gfield--type-fileupload,
.gform_wrapper .gfield.js-aim-focusable-field.gfield--type-checkbox,
.gform_wrapper .gfield.js-aim-focusable-field.gfield--type-radio,
.gform_wrapper .gfield.js-aim-focusable-field.gfield--type-select {
	cursor: pointer;
}

.onlines-newsletter-form.js-aim-focusable-form {
	cursor: text;
}

.onlines-newsletter-form.js-aim-focusable-form button {
	cursor: pointer;
}

form textarea {
	resize: none !important;
}

/* Sistema compartido para formularios editoriales extensos. */
:where(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) {
	--aim-form-row-min-height: 62px;
	--aim-form-row-gap: 22px;
	--aim-form-control-height: 35px;
	--aim-form-label-size: 14px;
	--aim-form-label-weight: 400;
	--aim-form-label-line-height: 1.2;
	--aim-form-control-size: 16px;
	--aim-form-control-weight: 400;
	--aim-form-textarea-row-height: 97px;
	--aim-form-textarea-height: 80px;
	--aim-form-submit-height: 52px;
	--aim-form-submit-size: 16px;
	--aim-form-submit-weight: 500;
}

:where(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) .gform_wrapper .gfield_label {
	margin: 0 !important;
	font-size: var(--aim-form-label-size) !important;
	font-weight: var(--aim-form-label-weight) !important;
	line-height: var(--aim-form-label-line-height) !important;
	letter-spacing: 0 !important;
}

/* Estados completos de Gravity Forms para los formularios oscuros de AIM. */
:where(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) {
	--aim-form-error: var(--wp--preset--color--custom-rojo, #ce2958);
	--aim-form-error-text: color-mix(in srgb, var(--aim-form-error) 42%, white);
	--aim-form-success: var(--wp--preset--color--custom-verde, #40bc84);
}

:where(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) .gform_wrapper .gform_validation_errors {
	margin: 0 0 24px !important;
	padding: 13px 16px !important;
	border: 1px solid color-mix(in srgb, var(--aim-form-error) 72%, transparent) !important;
	border-left-width: 3px !important;
	border-radius: 6px !important;
	background: color-mix(in srgb, var(--aim-form-error) 9%, transparent) !important;
	box-shadow: none !important;
	color: var(--aim-white, #fff) !important;
}

:where(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) .gform_wrapper .gform_submission_error {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	margin: 0 !important;
	color: inherit !important;
	font-family: var(--aim-font-text, inherit) !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.4 !important;
}

:where(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) .gform_wrapper .gform_submission_error::before {
	width: 18px !important;
	height: 18px !important;
	flex: 0 0 18px !important;
	margin: 0 !important;
	background-size: 18px 18px !important;
}

:where(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) .gform_wrapper .gfield_error {
	height: auto !important;
	min-height: 0 !important;
	padding: 0 !important;
	border-top: 0 !important;
	border-right: 0 !important;
	border-bottom-color: transparent !important;
	border-left: 0 !important;
	background: transparent !important;
}

:where(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) .gform_wrapper .gfield_error:not(.gfield--type-fileupload):not(.aim-associate-employees-field) > .ginput_container {
	border-bottom: 1px solid color-mix(in srgb, var(--aim-form-error) 82%, transparent) !important;
	transition: border-color var(--onlines-ui-hover-duration) var(--onlines-ui-hover-easing) !important;
}

:where(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) .gform_wrapper .gfield_error:not(.gfield--type-fileupload):not(.aim-associate-employees-field):focus-within > .ginput_container {
	border-bottom-color: var(--aim-blue, #0d86e2) !important;
}

:where(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) .gform_wrapper .gfield--type-fileupload.gfield_error {
	border-color: var(--aim-form-error) !important;
	background: color-mix(in srgb, var(--aim-form-error) 6%, transparent) !important;
}

:where(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) .gform_wrapper .gfield_error :is(input, textarea, select) {
	background: transparent !important;
	color: var(--aim-white, #fff) !important;
}

/*
 * Gravity Forms aplica el estado inválido con variables y selectores propios
 * de mucha especificidad. Estos overrides deben conservar !important.
 */
html body :is(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) .gform_wrapper .gfield.gfield_error {
	--gf-color-danger: var(--aim-form-error) !important;
	--gf-ctrl-border-color-error: transparent !important;
	--gf-ctrl-outline-color-error: transparent !important;
	--gf-ctrl-label-color-primary: var(--aim-light-gray, rgba(255, 255, 255, 0.8)) !important;
	--gf-ctrl-label-color-secondary: var(--aim-light-gray, rgba(255, 255, 255, 0.8)) !important;
	color: var(--aim-light-gray, rgba(255, 255, 255, 0.8)) !important;
}

html body :is(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) .gform_wrapper .gfield.gfield_error > .gfield_label,
html body :is(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) .gform_wrapper .gfield.gfield_error legend.gfield_label {
	color: var(--aim-light-gray, rgba(255, 255, 255, 0.8)) !important;
}

html body :is(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) .gform_wrapper .gfield.gfield_error :is(
	input:not([type="file"]):not([type="checkbox"]):not([type="radio"]),
	textarea,
	select
) {
	border: 0 !important;
	border-radius: 0 !important;
	outline: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: var(--aim-white, #fff) !important;
}

html body :is(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) .gform_wrapper .gfield.gfield_error :is(
	input:not([type="file"]):not([type="checkbox"]):not([type="radio"]),
	textarea,
	select
):focus {
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
}

html body :is(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) .gform_wrapper .gfield.gfield_error .gfield_required {
	color: var(--aim-blue, #0d86e2) !important;
}

html body :is(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) .gform_wrapper .gfield.gfield_error .validation_message {
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
}

html body :is(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) .gform_wrapper .gfield.gfield_error .aim-associate-employees-select__toggle {
	border-color: var(--aim-form-error) !important;
	background: color-mix(in srgb, var(--aim-form-error) 7%, transparent) !important;
	color: var(--aim-white, #fff) !important;
}

:where(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) .gform_wrapper .validation_message {
	width: fit-content !important;
	max-width: 100% !important;
	display: inline-flex !important;
	align-items: center !important;
	gap: 7px !important;
	margin: 8px 0 0 !important;
	padding: 5px 9px !important;
	border: 0 !important;
	border-radius: 4px !important;
	background: color-mix(in srgb, var(--aim-form-error) 11%, transparent) !important;
	color: var(--aim-form-error-text) !important;
	font-family: var(--aim-font-text, inherit) !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	line-height: 1.35 !important;
}

:where(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) .gform_wrapper .validation_message::before {
	width: 5px;
	height: 5px;
	flex: 0 0 5px;
	border-radius: 50%;
	background: currentColor;
	content: "";
}

:where(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) .gform_confirmation_message {
	padding: 15px 18px !important;
	border: 1px solid color-mix(in srgb, var(--aim-form-success) 72%, transparent) !important;
	border-left-width: 3px !important;
	border-radius: 6px !important;
	background: color-mix(in srgb, var(--aim-form-success) 9%, transparent) !important;
	color: var(--aim-white, #fff) !important;
	font-family: var(--aim-font-text, inherit) !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.45 !important;
}

html body :is(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) .gform_ajax_spinner {
	width: 20px !important;
	height: 20px !important;
	margin: 0 0 0 12px !important;
	vertical-align: middle !important;
}

html body :is(
	.aim-contact-form,
	.aim-jobs-form,
	.aim-job-single-form,
	.aim-associate-form
) :is(input, button)[type="submit"]:disabled,
html body .aim-associate-form button.gform_next_button:disabled {
	cursor: wait !important;
	opacity: 0.65 !important;
}

/* GTranslate: la traduccion sigue activa, pero no muestra el loader con marca de Google. */
html body .goog-te-spinner-pos,
html body .goog-te-spinner-animation,
html body .goog-te-spinner,
html body .goog-te-spinner-icon,
html body .VIpgJd-ZVi9od-aZ2wEe-wOHMyf,
html body .VIpgJd-ZVi9od-aZ2wEe-OiiCO {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

/* Paginacion compartida para archivos y listados del sitio. */
.aim-pagination {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 30px;
	margin-top: 50px;
	font-family: var(--aim-font-display, var(--wp--preset--font-family--haas-display));
	font-size: 16px;
	font-weight: 500;
	line-height: 1.35;
	letter-spacing: 0;
}

.aim-pagination__step,
.aim-pagination__page {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 0;
	border-radius: 5px;
	text-decoration: none;
	transition:
		color var(--onlines-ui-hover-duration) var(--onlines-ui-hover-easing),
		background-color var(--onlines-ui-hover-duration) var(--onlines-ui-hover-easing);
}

.aim-pagination__step {
	min-height: 52px;
	padding: 15px 25px;
}

.aim-pagination__step--previous,
.aim-pagination__step--next {
	background: var(--aim-white, var(--wp--preset--color--aim-white));
	color: var(--aim-panel, #173763);
}

.aim-pagination__step--previous:hover,
.aim-pagination__step--previous:focus-visible,
.aim-pagination__step--next:hover,
.aim-pagination__step--next:focus-visible {
	background: var(--aim-blue, var(--wp--preset--color--aim-blue));
	color: var(--aim-white, var(--wp--preset--color--aim-white));
}

.aim-pagination__step.is-disabled {
	cursor: default;
	pointer-events: none;
}

.aim-pagination__pages {
	display: inline-flex;
	align-items: center;
	gap: 12px;
}

.aim-pagination__ellipsis {
	display: inline-flex;
	min-width: 20px;
	align-items: center;
	justify-content: center;
	color: var(--aim-white, var(--wp--preset--color--aim-white));
}

.aim-pagination__page {
	min-width: 32px;
	min-height: 32px;
	padding: 5px 10px;
	background: transparent;
	color: var(--aim-white, var(--wp--preset--color--aim-white));
}

.aim-pagination__page.is-current,
.aim-pagination__page:hover,
.aim-pagination__page:focus-visible {
	background: var(--aim-blue, var(--wp--preset--color--aim-blue));
	color: var(--aim-white, var(--wp--preset--color--aim-white));
}

.aim-pagination__step:focus-visible,
.aim-pagination__page:focus-visible {
	outline: 2px solid var(--aim-white, var(--wp--preset--color--aim-white));
	outline-offset: 3px;
}

@media (max-width: 1023px) {
	.aim-pagination {
		flex-wrap: wrap;
		gap: 20px;
	}
}

@media (max-width: 640px) {
	.aim-pagination {
		gap: 14px;
	}

	.aim-pagination__step {
		min-height: 48px;
		padding: 12px 18px;
	}

	.aim-pagination__pages {
		order: 3;
		width: 100%;
		justify-content: center;
	}

	body :is(
		.onlines-ui-button:not([class*="__step"]):not(.aim-pagination__page),
		.aim-training-single__register,
		.aim-job-single__apply,
		.aim-news__all,
		.aim-contact-location__cta,
		.seccion-fondo__button:not(.seccion-fondo__button--disabled),
		.seccion-imagen-contenido__button:not(.seccion-imagen-contenido__button--static),
		.grilla-tarjetas__button:not(.grilla-tarjetas__button--static),
		.ultimas-noticias__button,
		.slider__cta-link:not(.slider__cta-link--disabled),
		.onlines-newsletter-form button[type="submit"],
		.aim-newsletter .gform_wrapper input[type="submit"],
		.aim-newsletter .gform_wrapper button[type="submit"],
		.aim-contact-form .gform_wrapper input[type="submit"],
		.aim-contact-form .gform_wrapper button[type="submit"],
		.aim-contact-form__fallback > button,
		.aim-jobs-form .gform_wrapper input[type="submit"],
		.aim-jobs-form .gform_wrapper button[type="submit"],
		.aim-jobs-form__fallback > button,
		.aim-job-single-form .gform_wrapper input[type="submit"],
		.aim-job-single-form .gform_wrapper button[type="submit"],
		.aim-associate-form .gform_wrapper input[type="submit"],
		.aim-associate-form .gform_wrapper button[type="submit"],
		.aim-associate-fallback-actions button[type="submit"],
		.footer__newsletter-form input[type="submit"],
		.footer__newsletter-form button[type="submit"],
		.footer__fallback-button
	) {
		box-sizing: border-box;
		width: 100%;
		max-width: none;
		justify-content: center;
		text-align: center;
	}
}

/*
 * Módulo de cards informativas AIM.
 * `--icon` conserva altura para separar icono y copy; `--text` se ajusta al
 * contenido, elimina numeraciones decorativas y apoya el título en la base.
 */
.aim-criteria-card {
	padding: 30px;
	border: 1px solid rgba(255, 255, 255, 0.1);
	border-radius: 5px;
	background: linear-gradient(180deg, var(--aim-background, #131c33) 0%, var(--aim-navy-light, #1b2d54) 100%);
	box-shadow: none;
}

.aim-criteria-card--icon {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: space-between;
}

.aim-criteria-card--icon :where(img, svg, [class*="icon"]) {
	opacity: 0.56;
}

.aim-criteria-card--icon :where(h2, h3, h4) {
	color: var(--aim-white, #fff);
}

.aim-criteria-card--icon :where(p, [class*="excerpt"], [class*="description"]) {
	color: rgba(255, 255, 255, 0.7);
}

/* Las cards sin ícono centran verticalmente su contenido. */
.aim-criteria-card--text {
	min-height: 0;
	height: auto;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
}

/*
 * Los botones blancos del sitio pasan al azul claro de la paleta (`--aim-blue`).
 * El azul profundo (`--aim-deep-blue`) oscurecía demasiado el hover.
 */
.onlines-ui-button--inverse:hover,
.onlines-ui-button--inverse:focus-visible {
    background-color: var(--aim-blue, #0d86e2);
    color: var(--aim-white, #ffffff);
}

.onlines-ui-button--soft:hover,
.onlines-ui-button--soft:focus-visible {
    background-color: var(--aim-blue, #0d86e2);
    color: var(--aim-white, #ffffff);
}

:where(
    .onlines-ui-button,
    .onlines-ui-control,
    .aim-language,
    .aim-menu-toggle,
    .aim-event-group__toggle,
    .aim-news__all,
    .onlines-newsletter-form button,
    .gform_wrapper input[type="submit"],
    .gform_wrapper button[type="submit"],
    .resena-historica__toggle,
    .resena-historica__page,
    .resena-historica__step,
    .slider__nav-button,
    .seccion-fondo__button
):focus-visible {
    outline: 2px solid var(--aim-blue, #0d86e2);
    outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
	:where(.onlines-ui-card--expandable) :where(
		.onlines-ui-card__media,
		.onlines-ui-card__media img,
		.onlines-ui-card__body,
		.onlines-ui-card__excerpt,
		.onlines-ui-card__cta
	) {
		transition: none !important;
	}

	:where(
		.aim-hover-link__arrow,
		.aim-action-card__button-arrow,
		.aim-training-card__arrow,
		.aim-professional-card__arrow,
		.aim-training-related-card__arrow,
		.aim-convenios__button-arrow
	) {
		transform: translateX(0) !important;
		transition: none !important;
	}

	:where(
		.aim-communication-card__cta,
		.aim-library-featured__cta,
		.aim-library-video-card__cta,
		.aim-projects-featured__cta,
		.aim-project-card__cta,
		.aim-job-card__cta,
		.aim-contact-location__cta
	)::after {
		transform: translateX(0) !important;
		transition: none !important;
	}

    :where(
        .onlines-ui-button,
        .onlines-ui-control,
        .aim-language,
        .aim-menu-toggle,
        .aim-event-group__toggle,
        .aim-news__all,
        .onlines-newsletter-form button,
        .gform_wrapper input[type="submit"],
        .gform_wrapper button[type="submit"],
        .resena-historica__toggle,
        .resena-historica__page,
        .resena-historica__step,
        .aim-pagination__step,
        .aim-pagination__page,
        .slider__nav-button,
        .seccion-fondo__button
    ) {
        transition: none;
    }
}

/*
 * Texto corrido: las bajadas, párrafos y listas usan interletrado neutro.
 * Volantas, etiquetas, metadatos y categorías conservan su tracking funcional.
 */
body p:not([class*="eyebrow"]):not([class*="kicker"]):not([class*="label"]):not([class*="meta"]):not([class*="date"]):not([class*="tag"]):not([class*="sector"]):not([class*="category"]):not([class*="year"]),
body .wp-block-post-content li,
body .wp-block-post-content blockquote {
	letter-spacing: 0;
}
