/* Keep content visible until the library has successfully initialized. */
html:not(.uwma-aos-ready) [data-aos] {
	opacity: 1 !important;
	transform: var(--uwma-aos-base-transform, none) !important;
	pointer-events: auto !important;
}

/* A short rise suits text, cards and form fields without shifting the layout. */
html.uwma-aos-ready [data-aos='fade-up'] {
	transform: var(--uwma-aos-base-transform, translateX(0)) translate3d(0, 28px, 0);
}

html.uwma-aos-ready [data-aos='fade-up'].aos-animate {
	transform: var(--uwma-aos-base-transform, none);
}

/* The desktop join form centers its submit button with a transform. */
@media (min-width: 1200px) {
	.uwma-page .join-form__submit {
		--uwma-aos-base-transform: translateX(-50%);
	}
}

html.uwma-aos-ready .content-card[data-aos].aos-animate:hover,
html.uwma-aos-ready .member-card[data-aos].aos-animate:hover {
	transform: translateY(-2px);
}

/* Preserve hover feedback on controls alongside the scroll transition. */
html.uwma-aos-ready [data-aos] {
	transition-property: opacity, transform, background-color, color, border-color, box-shadow;
}

/* Set the starting state immediately; transition only when an item enters. */
html.uwma-aos-ready [data-aos]:not(.aos-animate) {
	transition: none !important;
}

/* Keyboard users can reach content before its scroll animation is triggered. */
html.uwma-aos-ready [data-aos]:focus,
html.uwma-aos-ready [data-aos]:focus-within {
	opacity: 1 !important;
	transform: var(--uwma-aos-base-transform, none) !important;
	pointer-events: auto !important;
	transition-delay: 0ms !important;
}

@media (prefers-reduced-motion: reduce) {
	html.uwma-aos-ready [data-aos] {
		opacity: 1 !important;
		transform: var(--uwma-aos-base-transform, none) !important;
		pointer-events: auto !important;
		transition: none !important;
	}
}
