/* previously 'fit' images changed to background image, shrunk images look pixelated on some browsers */
.imgfit img {
	opacity: 0;
}
.imgfit {
	background-size: contain;
	background-position: 0 0;
	background-repeat: no-repeat;
}

/* animations */
.ha.grow {
	position: relative;
	transform: scale(0,1);
	-ms-transform: scale(0,1);
	-webkit-transform: scale(0,1);
	transform-origin: 0 0;
	-ms-transform-origin: 0 0;
	-webkit-transform-origin: 0 0;
}
.ha.grow.startani {
	transform: scale(1,1);
	transition: transform 2s ease;
	-ms-transform: scale(1,1);
	-ms-transition: -ms-transform 2s ease;
	-webkit-transform: scale(1,1);
	-webkit-transition: -webkit-transform 2s ease;
}

.ha.imgpie {
	opacity: 0;
}
.ha.imgpie.startani {
	opacity: 1;
	transition: opacity 1s ease;
	-webkit-transition: opacity 1s ease;
}

.ha.imggrow {
	position: relative;
	transform: translate(-100%, 0);
	-ms-transform: translate(-100%, 0);
	-webkit-transform: translate(-100%, 0);
}
.ha.imggrow.startani {
	transform: translate(0, 0);
	transition: transform 2.5s ease;
	-ms-transform: translate(0, 0);
	-ms-transition: -ms-transform 2.5s ease;
	-webkit-transform: translate(0, 0);
	-webkit-transition: -webkit-transform 2.5s ease;
}

.ha.imgpop {
	position: relative;
	overflow: hidden;
	transform: scale(0);
	-ms-transform: scale(0);
	-webkit-transform: scale(0);
}
.ha.imgpop.startani {
	animation: popin 500ms;
	-webkit-animation: popin 500ms;
	transform: scale(1);
	-ms-transform: scale(1);
	-webkit-transform: scale(1);
}
@keyframes popin {
	0% {
		transform: scale(0);
		-ms-transform: scale(0);
		-webkit-transform: scale(0);
	}
	60% {
		transform: scale(1.1);
		-ms-transform: scale(1.1);
		-webkit-transform: scale(1.1);
	}
	75% {
		transform: scale(0.7);
		-ms-transform: scale(0.7);
		-webkit-transform: scale(0.7);
	}
	85% {
		transform: scale(1.1);
		-ms-transform: scale(1.1);
		-webkit-transform: scale(1.1);
	}
	100% {
		transform: scale(1);
		-ms-transform: scale(1);
		-webkit-transform: scale(1);
	}
}

@-webkit-keyframes popin {
	0% {
		transform: scale(0);
		-ms-transform: scale(0);
		-webkit-transform: scale(0);
	}
	60% {
		transform: scale(1.1);
		-ms-transform: scale(1.1);
		-webkit-transform: scale(1.1);
	}
	75% {
		transform: scale(0.7);
		-ms-transform: scale(0.7);
		-webkit-transform: scale(0.7);
	}
	85% {
		transform: scale(1.1);
		-ms-transform: scale(1.1);
		-webkit-transform: scale(1.1);
	}
	100% {
		transform: scale(1);
		-ms-transform: scale(1);
		-webkit-transform: scale(1);
	}
}