/**
* todo o conteudo abaixo é para toda parte da animação da "section-three" 
*/
.box-alice {
	padding: 10px;
	max-width: 100%;
	text-align: center;
}

.box-alice__inner {
	margin-bottom: -15px;
}

.box-alice__inner > * {
	margin-bottom: 15px;
}

.box-alice__icon {
	padding: 5px 10px;
	border: 2px solid #730BB8;
	font-size: 30px;
	color: #66b6d0;
}

.box-alice__icon-sm {
	font-size: 22px;
}

.box-alice__icon-md {
	font-size: 35px;
}

@media (max-width: 767.98px) {
	.box-alice {
		max-width: 370px;
		margin-left: auto;
		margin-right: auto;
	}
}

@media (min-width: 576px) {
	.box-alice__inner {
		display: flex;
		flex-direction: row;
		align-items: stretch;
		text-align: left;
	}
	.box-alice__inner > * + * {
		padding-left: 30px;
	}
	.box-alice__aside {
		flex-shrink: 0;
	}
	.box-alice__main {
		position: relative;
		top: -5px;
		flex-grow: 1;
	}
	.box-alice__icon-outer {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		height: 84px;
	}
	.box-alice__icon-outer::before, .box-alice__icon-outer::after {
		content: '';
		display: block;
		margin-left: auto;
		margin-right: auto;
		height: 2px;
		width: 22px;
		background: #730BB8;
	}
	.ie-10 .box-alice__icon-outer,
	.ie-11 .box-alice__icon-outer {
		justify-content: flex-start;
	}
	.box-alice__icon {
		display: -webkit-inline-flex;
		display: -ms-inline-flexbox;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-width: 50px;
		min-height: 60px;
		margin-top: 9px;
		margin-bottom: 8px;
		text-align: center;
	}
}

@media (min-width: 992px) and (max-width: 1199.98px) {
	.box-alice {
		padding-top: 25px;
		padding-bottom: 25px;
	}
	.box-alice__main {
		padding-left: 20px;
	}
	.box-alice__title {
		font-size: 16px;
	}
	.box-alice__icon {
		min-width: 44px;
		font-size: 24px;
	}
	.box-alice__icon-sm {
		font-size: 18px;
	}
	.box-alice__icon-md {
		font-size: 28px;
	}
}

@media (min-width: 992px) {
	html:not(.tablet):not(.mobile) .box-alice__icon-outer {
		transition: .3s;
	}
	html:not(.tablet):not(.mobile) .box-alice__icon-outer::before, html:not(.tablet):not(.mobile) .box-alice__icon-outer::after {
		animation: .3s h-to-w both;
	}
	html:not(.tablet):not(.mobile).ie-10 .box-alice__icon-outer::before,
	html:not(.tablet):not(.mobile).ie-10 .box-alice__icon-outer::after, html:not(.tablet):not(.mobile).ie-11 .box-alice__icon-outer::before,
	html:not(.tablet):not(.mobile).ie-11 .box-alice__icon-outer::after {
		animation: .3s h-to-w--ie both;
	}
	html:not(.tablet):not(.mobile) .box-alice {
		position: relative;
		transition: .22s;
	}
	html:not(.tablet):not(.mobile) .box-alice::before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.1);
		transition: .33s;
		pointer-events: none;
		transform: scale3d(1.08, 1.08, 1.08);
		opacity: 0;
		visibility: hidden;
	}
	html:not(.tablet):not(.mobile) .box-alice:hover::before {
		opacity: 1;
		visibility: visible;
		transform: scale3d(1, 1, 1);
	}
	html:not(.tablet):not(.mobile) .box-alice:hover .box-alice__icon-outer {
		height: 100%;
	}
	html:not(.tablet):not(.mobile) .box-alice:hover .box-alice__icon-outer::before, html:not(.tablet):not(.mobile) .box-alice:hover .box-alice__icon-outer::after {
		animation: .22s w-to-h both;
	}
	html:not(.tablet):not(.mobile).ie-10 .box-alice:hover .box-alice__icon-outer::before,
	html:not(.tablet):not(.mobile).ie-10 .box-alice:hover .box-alice__icon-outer::after, html:not(.tablet):not(.mobile).ie-11 .box-alice:hover .box-alice__icon-outer::before,
	html:not(.tablet):not(.mobile).ie-11 .box-alice:hover .box-alice__icon-outer::after {
		animation: .22s w-to-h--ie both;
	}
}

@media (min-width: 992px) {
	.box-alice {
		padding: 35px 20px;
	}
}

@media (min-width: 1200px) {
	.box-alice__main {
		max-width: 240px;
	}
}


@keyframes w-to-h {
	0% {
		width: 22px;
		height: 2px;
	}
	50% {
		width: 2px;
		height: 2px;
	}
	100% {
		width: 2px;
		height: 50%;
	}
}

@keyframes h-to-w {
	0% {
		width: 2px;
		height: 50%;
	}
	50% {
		width: 2px;
		height: 2px;
	}
	100% {
		width: 22px;
		height: 2px;
	}
}

@keyframes w-to-h--ie {
	0% {
		width: 22px;
		height: 2px;
	}
	50% {
		width: 2px;
		height: 2px;
	}
	100% {
		width: 2px;
		height: 28px;
	}
}

@keyframes h-to-w--ie {
	0% {
		width: 2px;
		height: 28px;
	}
	50% {
		width: 2px;
		height: 2px;
	}
	100% {
		width: 22px;
		height: 2px;
	}
}
