/* Artmark entrance animations.
   JS-gated (.am-anim-js is added by artmark-anim.js) so nothing is hidden
   when JavaScript is unavailable. After the entrance finishes the widget gets
   .am-anim--done and these rules step aside so hover effects behave normally. */

.am-anim-yes {
	--am-an-dur: 0.8s;
	--am-an-delay: 0s;
	--am-an-stagger: 0.12s;
	--am-an-from: translateY(28px);
}

.am-animtype-fade-in { --am-an-from: translateY(0); }
.am-animtype-fade-up { --am-an-from: translateY(28px); }
.am-animtype-fade-down { --am-an-from: translateY(-28px); }
.am-animtype-fade-left { --am-an-from: translateX(28px); }
.am-animtype-fade-right { --am-an-from: translateX(-28px); }
.am-animtype-zoom-in { --am-an-from: scale(0.94); }

/* Whole widget animates as one block */
.am-anim-js.am-anim--solo:not(.am-anim--done) {
	opacity: 0;
	transform: var(--am-an-from);
	transition: opacity var(--am-an-dur) ease, transform var(--am-an-dur) ease;
	transition-delay: var(--am-an-delay);
}

.am-anim-js.am-anim--solo.am-anim--in:not(.am-anim--done) {
	opacity: 1;
	transform: none;
}

/* Repeated items animate one after another (stagger) */
.am-anim-js.am-anim--items:not(.am-anim--done) .am-hero__card,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-div-card,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-choice-card,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-cap-card,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-pillar,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-risk__col,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-tband__feat,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-stat,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-sol__item,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-res-card,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-rcard,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-ind-card,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-pcard,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-commit__item,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-team-card,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-disc__box,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-statf__tile,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-herit__chip,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-open__row,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-reason,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-conv__item,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-fcard,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-cmp__row,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-gp__country,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-ilist__item,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-svc__card,
.am-anim-js.am-anim--items:not(.am-anim--done) .am-footer__col {
	opacity: 0;
	transform: var(--am-an-from);
	transition: opacity var(--am-an-dur) ease, transform var(--am-an-dur) ease;
	transition-delay: calc(var(--am-an-delay) + var(--am-an-i, 0) * var(--am-an-stagger));
}

.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-hero__card,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-div-card,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-choice-card,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-cap-card,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-pillar,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-risk__col,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-tband__feat,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-stat,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-sol__item,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-res-card,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-ind-card,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-pcard,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-commit__item,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-team-card,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-disc__box,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-statf__tile,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-herit__chip,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-open__row,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-reason,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-conv__item,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-fcard,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-cmp__row,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-gp__country,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-ilist__item,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-svc__card,
.am-anim-js.am-anim--items.am-anim--in:not(.am-anim--done) .am-footer__col {
	opacity: 1;
	transform: none;
}

@media (prefers-reduced-motion: reduce) {
	.am-anim-js,
	.am-anim-js * {
		opacity: 1 !important;
		transform: none !important;
		transition: none !important;
	}
}
