/* General link styles */
.link {
	outline: none;
	text-decoration: none;
	position: relative;
	font-size: 5em;
	line-height: 1;
	color: #9e9ba4;
	display: inline-block;
}

/* Nukun */
.link--nukun {
	color: #01345F;
	font-weight: 900;
	overflow: hidden;
	padding: 10px 0;
	-webkit-transition: color 0.3s;
	transition: color 0.3s;
}

.link--nukun:hover {
	color: #F53F61;
}

.link--nukun::before,
.link--nukun::after {
	content: '';
	position: absolute;
	width: 30%;
	height: 5px;
	background: #E3E8DC;
	bottom: 0;
	left: 35%;
	-webkit-transition: -webkit-transform 0.5s;
	transition: transform 0.5s;
	-webkit-transition-timing-function: cubic-bezier(0.2,1,0.3,1);
	transition-timing-function: cubic-bezier(0.2,1,0.3,1);
}

.link--nukun::after {
	background: black;
	-webkit-transform: translate3d(-300%,0,0) scale3d(0,1,1);
	transform: translate3d(-300%,0,0) scale3d(0,1,1);
}

.link--nukun:hover::before {
	-webkit-transform: translate3d(300%,0,0) scale3d(0,1,1);
	transform: translate3d(300%,0,0) scale3d(0,1,1);
}

.link--nukun:hover::after {
	-webkit-transform: translate3d(0,0,0) scale3d(1,1,1);
	transform: translate3d(0,0,0) scale3d(1,1,1);
}

.link--nukun span {
	color: #F53F61;
	display: inline-block;
	position: relative;
	-webkit-transform: perspective(1000px) rotate3d(0,1,0,0deg);
	transform: perspective(1000px) rotate3d(0,1,0,0deg);
	-webkit-transition: -webkit-transform 0.5s, color 0.5s;
	transition: transform 0.5s, color 0.5s;
	-webkit-transition-timing-function: cubic-bezier(0.2,1,0.3,1);
	transition-timing-function: cubic-bezier(0.2,1,0.3,1);
}

.link--nukun:hover span {
	color: #01345F;
	-webkit-transform: perspective(1000px) rotate3d(0,1,0,180deg);
	transform: perspective(1000px) rotate3d(0,1,0,180deg);
}

/* Media Queries */
@media screen and (max-width: 42em) {

	.link--nukun { font-size: 1em; }

}