/**
 * Miligram Accordion Icon
 *
 * Animação de rotação "+" -> "-" para o widget Nested Accordion do
 * Elementor (elementor-widget-n-accordion), em qualquer página/instância
 * do site. Substitui a troca instantânea (display:none/flex) que o
 * Elementor usa por defeito, que não é possível animar em CSS puro.
 *
 * O widget já renderiza os dois ícones (mais "e-closed", menos "e-opened")
 * — aqui deixamos os dois sempre no DOM, sobrepostos no mesmo lugar via
 * CSS Grid, e alternamos entre eles com rotação + transparência.
 */

.elementor-widget-n-accordion .e-n-accordion-item-title-icon {
	display: grid !important;
}

.elementor-widget-n-accordion .e-n-accordion-item-title-icon .e-opened,
.elementor-widget-n-accordion .e-n-accordion-item-title-icon .e-closed {
	display: flex !important;
	grid-area: 1 / 1;
	transition: transform 0.4s cubic-bezier(0.65, 0, 0.35, 1), opacity 0.3s ease;
}

/* Fechado: mostra o "+" parado; o "-" fica pronto, rodado e invisível. */
.elementor-widget-n-accordion .e-n-accordion-item-title-icon .e-closed {
	transform: rotate(0deg);
	opacity: 1;
}
.elementor-widget-n-accordion .e-n-accordion-item-title-icon .e-opened {
	transform: rotate(-90deg);
	opacity: 0;
}

/* Aberto: o "+" roda 90° e desvanece: o "-" entra na posição de repouso. */
.elementor-widget-n-accordion .e-n-accordion-item[open] > .e-n-accordion-item-title .e-n-accordion-item-title-icon .e-closed {
	transform: rotate(90deg);
	opacity: 0;
}
.elementor-widget-n-accordion .e-n-accordion-item[open] > .e-n-accordion-item-title .e-n-accordion-item-title-icon .e-opened {
	transform: rotate(0deg);
	opacity: 1;
}

/* Uma instância específica (homepage) já tinha uma rotação parcial e
   avulsa, presa só a esse elemento — anula-se para não compor com a
   animação acima e ficar diferente das restantes páginas. */
.elementor-element-6884a37 .e-n-accordion-item-title-icon {
	transform: none !important;
	transition: none !important;
}
.elementor-element-6884a37 .e-n-accordion-item[open] .e-n-accordion-item-title-icon {
	transform: none !important;
}

@media (prefers-reduced-motion: reduce) {
	.elementor-widget-n-accordion .e-n-accordion-item-title-icon .e-opened,
	.elementor-widget-n-accordion .e-n-accordion-item-title-icon .e-closed {
		transition: none;
	}
}
