/**
 * Alfa Matrix — subtle motion & interaction polish.
 * Respects prefers-reduced-motion. Does not affect Elementor editor.
 */

@media (prefers-reduced-motion: no-preference) {
	html {
		scroll-behavior: smooth;
	}
}

/* Primary buttons — gentle lift */
@media (prefers-reduced-motion: no-preference) {
	.elementor-page .elementor-button,
	.elementor-page .ast-button,
	.elementor-page .wp-block-button__link {
		transition: transform 0.25s ease, box-shadow 0.25s ease, background-color 0.2s ease;
	}

	.elementor-page .elementor-button:hover,
	.elementor-page .elementor-button:focus-visible,
	.elementor-page .ast-button:hover,
	.elementor-page .ast-button:focus-visible,
	.elementor-page .wp-block-button__link:hover,
	.elementor-page .wp-block-button__link:focus-visible {
		transform: translateY(-2px);
		box-shadow: 0 10px 24px rgba(0, 0, 0, 0.12);
	}
}

/* Service / team / project cards */
@media (prefers-reduced-motion: no-preference) {
	.elementor-page .elementor-widget-icon-box .elementor-icon-box-wrapper,
	.elementor-page .elementor-widget-image-box .elementor-image-box-wrapper,
	.elementor-page .elementor-widget-hfe-infocard .hfe-infocard {
		transition: transform 0.3s ease, box-shadow 0.3s ease;
	}

	.elementor-page .elementor-widget-icon-box .elementor-icon-box-wrapper:hover,
	.elementor-page .elementor-widget-image-box .elementor-image-box-wrapper:hover,
	.elementor-page .elementor-widget-hfe-infocard .hfe-infocard:hover {
		transform: translateY(-4px);
	}
}

/* Client logo carousel — soft opacity on hover */
@media (prefers-reduced-motion: no-preference) {
	.elementor-widget-image-carousel .swiper-slide-image {
		transition: opacity 0.3s ease, transform 0.3s ease;
	}

	.elementor-widget-image-carousel .swiper-slide-inner:hover .swiper-slide-image {
		opacity: 0.82;
		transform: scale(1.03);
	}
}

/* Headings accent underline reveal (section titles) */
@media (prefers-reduced-motion: no-preference) {
	.elementor-page .elementor-widget-heading .elementor-heading-title {
		transition: letter-spacing 0.35s ease;
	}

	.elementor-page .elementor-widget-heading:hover .elementor-heading-title {
		letter-spacing: 0.02em;
	}
}

/* Swiper pagination dots */
@media (prefers-reduced-motion: no-preference) {
	.elementor-widget-image-carousel .swiper-pagination-bullet {
		transition: transform 0.25s ease, opacity 0.25s ease;
	}

	.elementor-widget-image-carousel .swiper-pagination-bullet-active {
		transform: scale(1.25);
	}
}

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