/**
 * Micro interacoes visuais isoladas (reversiveis).
 * Remover este arquivo + loader restaura o comportamento anterior.
 */

:root {
	--mi-ease: cubic-bezier(0.22, 1, 0.36, 1);
	--mi-fast: 180ms;
	--mi-base: 240ms;
	--mi-slow: 360ms;
	--mi-lift-y: -1px;
	--mi-shadow-soft: 0 8px 22px rgba(16, 24, 40, 0.07);
	--mi-shadow-soft-hover: 0 12px 28px rgba(16, 24, 40, 0.1);
}

/* Transicoes suaves em elementos interativos ja existentes. */
body .vlr-card,
body .vlr-service-card,
body .vlr-testimonial-card,
body .vlr-stat-card,
body .vlr-about-card,
body .vlr-about-value-card,
body .vlr-archive-card,
body .vlr-home-blog-card,
body .vlr-about-image-card,
body .equipe-card .equipe-foto img,
body .wp-block-button .wp-block-button__link,
body a.vlr-submenu-entry,
body .vlr-home-actions .wp-block-button__link,
body .vlr-card-image img,
body .wp-block-post-featured-image img {
	transition:
		transform var(--mi-base) var(--mi-ease),
		box-shadow var(--mi-base) var(--mi-ease),
		border-color var(--mi-base) var(--mi-ease),
		filter var(--mi-base) var(--mi-ease),
		opacity var(--mi-fast) var(--mi-ease),
		background-color var(--mi-base) var(--mi-ease),
		color var(--mi-base) var(--mi-ease);
}

/* Cards: profundidade sutil sem alterar tamanho/layout. */
@media (hover: hover) and (pointer: fine) {
	body .vlr-service-card:hover,
	body .vlr-service-card:focus-within,
	body .vlr-testimonial-card:hover,
	body .vlr-testimonial-card:focus-within,
	body .vlr-about-value-card:hover,
	body .vlr-about-value-card:focus-within,
	body .vlr-home-blog-card:hover,
	body .vlr-home-blog-card:focus-within,
	body .vlr-archive-card:hover,
	body .vlr-archive-card:focus-within {
		transform: translateY(var(--mi-lift-y));
		box-shadow: var(--mi-shadow-soft-hover);
	}

	body .equipe-card:hover,
	body .equipe-card:focus-within {
		transform: translateY(var(--mi-lift-y));
	}

	/* Botao/CTA com micro-lift premium, sem exagero. */
	body .wp-block-button .wp-block-button__link:hover,
	body .wp-block-button .wp-block-button__link:focus-visible,
	body .vlr-home-actions .wp-block-button__link:hover,
	body .vlr-home-actions .wp-block-button__link:focus-visible {
		transform: translateY(-1px);
		box-shadow: var(--mi-shadow-soft);
	}

	/* Imagem dentro de cards: leve zoom no hover do card pai. */
	body .vlr-service-card:hover .vlr-card-image img,
	body .vlr-home-blog-card:hover .wp-block-post-featured-image img,
	body .vlr-about-image-card:hover img,
	body .equipe-card:hover .equipe-foto img,
	body .equipe-card:focus-within .equipe-foto img {
		transform: scale(1.018);
	}
}

/* Touch (tablet/mobile): micro feedback ao toque/foco, sem hover persistente. */
@media (hover: none), (pointer: coarse) {
	body .equipe-card:active .equipe-foto img,
	body .equipe-card:focus-within .equipe-foto img {
		transform: scale(1.012);
	}

	body .equipe-card:active,
	body .equipe-card:focus-within {
		transform: translateY(-1px);
	}
}

/* Equipe: nitidez máxima perceptível sem alterar estrutura/arquivo da imagem. */
body .equipe-card .equipe-foto {
	overflow: hidden;
	border-radius: 14px;
}

body .equipe-card .equipe-foto img {
	image-rendering: auto;
	/* Safari/Chromium: preserva nitidez em downscale/hover transform. */
	image-rendering: -webkit-optimize-contrast;
	backface-visibility: hidden;
	transform: translateZ(0);
}

/* Foco visivel consistente para teclado */
body .wp-block-button .wp-block-button__link:focus-visible,
body a.vlr-submenu-entry:focus-visible {
	outline: 2px solid color-mix(in oklab, var(--vlr-color-accent, #f78e2f) 72%, white);
	outline-offset: 2px;
}

/* Estado inicial dos elementos revelados via JS. */
body.mi-enabled .mi-reveal {
	opacity: 0;
	transform: translateY(16px);
	transition:
		opacity var(--mi-slow) var(--mi-ease),
		transform var(--mi-slow) var(--mi-ease);
	transition-delay: var(--mi-delay, 0ms);
	will-change: opacity, transform;
}

body.mi-enabled .mi-reveal.mi-inview {
	opacity: 1;
	transform: translateY(0);
}

/* No Customizer, força estado estático para não atrapalhar edição visual. */
body.customize-support .mi-reveal,
body.customize-support .mi-reveal.mi-inview,
body.customize-partial-edit-shortcuts-shown .mi-reveal,
body.customize-partial-edit-shortcuts-shown .mi-reveal.mi-inview {
	opacity: 1 !important;
	transform: none !important;
	transition: none !important;
}

/* Sem animacao para acessibilidade/reduced motion. */
@media (prefers-reduced-motion: reduce) {
	:root {
		--mi-fast: 1ms;
		--mi-base: 1ms;
		--mi-slow: 1ms;
	}

	body .mi-reveal,
	body .mi-reveal.mi-inview {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}

	body .vlr-service-card:hover,
	body .vlr-testimonial-card:hover,
	body .vlr-about-value-card:hover,
	body .vlr-home-blog-card:hover,
	body .vlr-archive-card:hover,
	body .wp-block-button .wp-block-button__link:hover,
	body .vlr-home-actions .wp-block-button__link:hover {
		transform: none !important;
	}
}
