/* =========================================================
   TSG — animações. SÓ NO FRONT.

   Esta folha NÃO entra em tsg_stylesheets(): aquele array alimenta
   add_editor_style(), e qualquer estado inicial escondido (opacity: 0) faria o
   cliente abrir Páginas → Home diante de uma tela em branco. Ela é enfileirada
   à parte, em inc/enqueue.php.

   Pre-hide condicionado a html.tsg-js. Sem a classe, nada está escondido.

   ========================================================= */

html.tsg-js .tsg-abertura__eyebrow,
html.tsg-js .tsg-abertura__titulo,
html.tsg-js .tsg-abertura__chamada,
html.tsg-js .tsg-sobre__texto,
html.tsg-js .tsg-video__slogan,
html.tsg-js .tsg-video__player,
html.tsg-js .tsg-numeros__item,
html.tsg-js .tsg-fique-por-dentro__chamada,
html.tsg-js .tsg-fique-por-dentro__item,
html.tsg-js .tsg-fique-por-dentro__vazio,
html.tsg-js .tsg-contato__titulo,
html.tsg-js .tsg-contato__item,
html.tsg-js .tsg-esg-pilar {
	opacity: var(--tsg-oculto, 0);
}

/* Opt-out pelo editor: Configurações do bloco → Classe(s) CSS adicional(is). */
.tsg-sem-animacao,
.tsg-sem-animacao * {
	--tsg-oculto: 1;
}

/* Hovers de estado — GSAP cuida só de entrada e scroll.
   A transition mora no seletor base, não no :hover: declarada só no :hover, a ida é
   animada e a volta é instantânea. */
@media (hover: hover) and (pointer: fine) {
	.tsg-numeros__item,
	.tsg-fique-por-dentro__item {
		transition: transform 240ms var(--wp--custom--ease-out);
	}

	.tsg-contato__item {
		transition:
			transform 240ms var(--wp--custom--ease-out),
			box-shadow 240ms var(--wp--custom--ease-out),
			border-color 240ms var(--wp--custom--ease-out);
	}

	.tsg-numeros__item:hover,
	.tsg-fique-por-dentro__item:hover,
	.tsg-contato__item:hover {
		transform: translateY(-4px);
	}

	.tsg-contato__item:hover {
		box-shadow: var(--wp--custom--sombra);
		border-color: color-mix(in srgb, var(--wp--preset--color--marca) 40%, transparent);
	}
}

@media (prefers-reduced-motion: reduce) {
	.wp-site-blocks *,
	.wp-site-blocks *::before,
	.wp-site-blocks *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}
