.cmk-downup,

.cmk-updown {

	display: inline-block;

    position: relative;

	overflow: hidden;

	text-decoration: none;

    z-index: 1;

}

.cmk-downup:before {

    content: "";

    width: 50%;

    height: 100%;

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    left: 0;

    top: -100%;

    z-index: -1;

    transition: .5s;

    opacity: 0;

}

.cmk-downup:after {

    content: "";

    width: 50%;

    height: 100%;

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    right: 0;

    bottom: -100%;

    z-index: -1;

    transition: .5s;

    opacity: 0;

}

.cmk-updown:before {

    content: "";

    width: 50%;

    height: 100%;

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    left: 0;

    top: 100%;

    z-index: -1;

    transition: .5s;

    opacity: 0;

}

.cmk-updown:after {

    content: "";

    width: 50%;

    height: 100%;

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    right: 0;

    bottom: 100%;

    z-index: -1;

    transition: .5s;

    opacity: 0;

}

.cmk-downup:hover,

.cmk-updown:hover {

	color: #fff;

}

.cmk-downup:hover:before,

.cmk-updown:hover:before {

	top: 0;

	transition: .5s;

	opacity: 1;

}

.cmk-downup:hover:after,

.cmk-updown:hover:after {

	bottom: 0;

	transition: .5s;

	opacity: 1;

}



.cmk-slide-in-vertical,

.cmk-slide-in-horizontal,

.cmk-slide-out-vertical,

.cmk-slide-out-horizontal {

	display: inline-block;

    color: #fff;

    position: relative;

	overflow: hidden;

	text-decoration: none;

    z-index: 1;

}

.cmk-slide-out-vertical:hover,

.cmk-slide-out-horizontal:hover {

	transition: .5s;

}

.cmk-slide-in-vertical:hover,

.cmk-slide-in-horizontal:hover {

	transition: .5s;

}

.cmk-slide-out-horizontal:before {

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    content: "";

    width: 50%;

    height: 100%;

    left: 0;

    top: 0;

    z-index: -1;

    transition: .5s;

    opacity: 1;

}

.cmk-slide-out-horizontal:after {

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    content: "";

    width: 50%;

    height: 100%;

    right: 0;

    bottom: 0;

    z-index: -1;

    transition: .5s;

    opacity: 1;

}

.cmk-slide-out-horizontal:hover:before {

	left: -50%;

	transition: .5s;

	opacity: 0;

}

.cmk-slide-out-horizontal:hover:after {

	right: -50%;

	transition: .5s;

	opacity: 0;

}

.cmk-slide-out-vertical:before {

    content: "";

    width: 100%;

    height: 50%;

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    left: 0;

    top: 0;

    z-index: -1;

    transition: .5s;

    opacity: 1;

}

.cmk-slide-out-vertical:after {

    content: "";

    width: 100%;

    height: 50%;

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    right: 0;

    bottom: 0;

    z-index: -1;

    transition: .5s;

    opacity: 1;

}

.cmk-slide-out-vertical:hover:before {

	top: -50%;

	transition: .5s;

	opacity: 0;

}

.cmk-slide-out-vertical:hover:after {

	bottom: -50%;

	transition: .5s;

	opacity: 0;

}

.cmk-slide-in-vertical:before {

    content: "";

    width: 100%;

    height: 50%;

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    left: 0;

    top: -100%;

    z-index: -1;

    transition: .5s;

    opacity: 0;

}

.cmk-slide-in-vertical:after {

    content: "";

    width: 100%;

    height: 50%;

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    right: 0;

    bottom: -100%;

    z-index: -1;

    transition: .5s;

    opacity: 0;

}

.cmk-slide-in-vertical:hover:before {

	top: 0;

	transition: .5s;

	opacity: 1;

}

.cmk-slide-in-vertical:hover:after {

	bottom: 0;

	transition: .5s;

	opacity: 1;

}

.cmk-slide-in-horizontal:before {

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    content: "";

    width: 50%;

    height: 100%;

    left: -50%;

    top: 0;

    z-index: -1;

    transition: .5s;

    opacity: 0;

}

.cmk-slide-in-horizontal:after {

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    content: "";

    width: 50%;

    height: 100%;

    right: -50%;

    bottom: 0;

    z-index: -1;

    transition: .5s;

    opacity: 0;

}

.cmk-slide-in-horizontal:hover:before {

	left: 0;

	transition: .5s;

	opacity: 1;

}

.cmk-slide-in-horizontal:hover:after {

	right: 0;

	transition: .5s;

	opacity: 1;

}



.cmk-slide-left,

.cmk-slide-right,

.cmk-slide-up,

.cmk-slide-down {

	display: inline-block;

    color: #fff;

    position: relative;

    overflow: hidden;

    text-decoration: none;

    z-index: 5;

}

.cmk-slide-left:hover,

.cmk-slide-right:hover,

.cmk-slide-up:hover,

.cmk-slide-down:hover {

	color: #fff;

	transition: .5s;

}

.cmk-slide-left:before {

    content: "";

    width: 100%;

    height: 100%;

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    left: -100%;

    top: 0;

    z-index: -1;

    transition: .5s;

    opacity: 0;

}

.cmk-slide-left:hover:before {

	left: 0;

	transition: .5s;

	opacity: 1;

}

.cmk-slide-right:before {

    content: "";

    width: 100%;

    height: 100%;

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    right: -100%;

    top: 0;

    z-index: -1;

    transition: .5s;

    opacity: 0;

}

.cmk-slide-right:hover:before {

	right: 0;

	transition: .5s;

	opacity: 1;

}

.cmk-slide-up:before {

    content: "";

    width: 100%;

    height: 100%;

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    left: 0;

    bottom: -100%;

    z-index: -1;

    transition: .5s;

    opacity: 0;

}

.cmk-slide-up:hover:before {

	bottom: 0;

	transition: .5s;

	opacity: 1;

}

.cmk-slide-down:before {

    content: "";

    width: 100%;

    height: 100%;

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    left: 0;

    top: -100%;

    z-index: -1;

    transition: .5s;

    opacity: 0;

}

.cmk-slide-down:hover:before {

	top: 0;

	transition: .5s;

	opacity: 1;

}



.cmk-slideout-horizontal,

.cmk-slideout-vertical, 

.cmk-rotate-left,

.cmk-rotate-right {

	color: #fff;

	display: inline-block;

	overflow: hidden;

	position: relative;

	text-decoration: none;

	transition: 1s all ease;

    z-index: 5;

}

.cmk-slideout-horizontal:before,

.cmk-slideout-vertical:before, 

.cmk-rotate-left:before,

.cmk-rotate-right:before {

	background-color: #f2295b;

    color: #fff;

	content: "";

	position: absolute;

	top: 50%;

	left: 50%;

	transform: translate(-50%, -50%);

	z-index: -1;

	transition: all 0.6s ease;

}

.cmk-slideout-horizontal:hover,

.cmk-slideout-vertical:hover, 

.cmk-rotate-left:hover,

.cmk-rotate-right:hover {

	color: #fff;

	transition: 1s all ease;

}

.cmk-slideout-horizontal:before {

	width: 0;

	height: 100%;

}

.cmk-slideout-horizontal:hover:before {

	width: 100%;

}

.cmk-slideout-vertical:before {

	width: 100%;

	height: 0;

}

.cmk-slideout-vertical:hover:before {

	height: 100%;

}

.cmk-rotate-left::before {

	width: 100%;

	height: 0;

	transform: translate(-50%, -50%) rotate(45deg);

}

.cmk-rotate-left:hover:before {

	height: 300%;

}

.cmk-rotate-right:before {

	width: 100%;

	height: 0;

	transform: translate(-50%, -50%) rotate(-45deg);

}

.cmk-rotate-right:hover:before {

	height: 300%;

}



.cmk-bounce-left,

.cmk-bounce-right,

.cmk-bounce-up,

.cmk-bounce-down {

	position: relative;

    background-color: #f2295b;

    color: #fff;

	text-decoration: none;

	transition: color 0.4s linear;	

    z-index: 5;

    overflow: hidden;

}

.cmk-bounce-left:hover,

.cmk-bounce-right:hover,

.cmk-bounce-up:hover,

.cmk-bounce-down:hover {

	color: #fff;

}

.cmk-bounce-left:before {

	content: "";

	position: absolute;

	left: 0;

	top: 0;

	width: 100%;

	height: 100%;

	background-color: #f2295b;

    color: #fff;

	z-index: -1;

	transition: transform 0.5s;

	transform-origin: 0 0;

	transition-timing-function: cubic-bezier(0.5,1.6,0.4,0.7);

	transform: scaleX(0);

}

.cmk-bounce-right:before {

	content: "";

	position: absolute;

	left: 0;

	top: 0;

	width: 100%;

	height: 100%;

	background-color: #f2295b;

    color: #fff;

	z-index: -1;

	transition: transform 0.5s;

	transform-origin: 100% 0;

	transition-timing-function: cubic-bezier(0.5,1.6,0.4,0.7);

	transform: scaleX(0);

}

.cmk-bounce-up:before {

	content: "";

	position: absolute;

	left: 0;

	top: 0;

	width: 100%;

	height: 100%;

	background-color: #f2295b;

    color: #fff;

	z-index: -1;

	transition: transform 0.5s;

	transform-origin: 0 100%;

	transition-timing-function: cubic-bezier(0.5,1.6,0.4,0.7);

	transform: scaleY(0);

}

.cmk-bounce-down::before {

	content: "";

	position: absolute;

	left: 0;

	top: 0;

	width: 100%;

	height: 100%;

	background-color: #f2295b;

    color: #fff;

	z-index: -1;

	transition: transform 0.5s;

	transform-origin: 0 0;

	transition-timing-function: cubic-bezier(0.5,1.6,0.4,0.7);

	transform: scaleY(0);

}

.cmk-bounce-left:hover:before,

.cmk-bounce-right:hover:before {

	transform: scaleX(1);

}

.cmk-bounce-up:hover:before,

.cmk-bounce-down:hover:before {

	transform: scaleY(1);

}



.cmk-double-slide-left,

.cmk-double-slide-right,

.cmk-double-slide-up,

.cmk-double-slide-down {

	display: inline-block;

    color: #fff;

	text-decoration: none;

	position: relative;

    overflow: hidden;

    z-index: 5;

    transition: .3s;

}

.cmk-double-slide-left:hover,

.cmk-double-slide-right:hover,

.cmk-double-slide-up:hover,

.cmk-double-slide-down:hover {

	color: #fff;

}

.cmk-double-slide-left:before {

	content: '';

	width: 100%;

	height: 100%;

	position: absolute;

	background-color: #f2295b;

    color: #fff;

	opacity: .5;

	top: 0;

	left: -100%;

	transition: .3s;

	z-index: -1;

}

.cmk-double-slide-left:after {

	content: '';

	width: 100%;

	height: 100%;

	position: absolute;

	background-color: #f2295b;

    color: #fff;

	top: 0;

	left: -100%;

	transition: .3s;

	transition-delay: .2s;

	z-index: -1;

}

.cmk-double-slide-left:hover:before,

.cmk-double-slide-left:hover:after {

	left: 0;

}

.cmk-double-slide-right:before {

    content: '';

    width: 100%;

    height: 100%;

    position: absolute;

    background-color: #f2295b;

    color: #fff;

    opacity: .5;

    right: -100%;

    bottom: 0;

    transition: .3s;

    z-index: -1;

}

.cmk-double-slide-right:after {

	content: '';

	width: 100%;

	height: 100%;

	position: absolute;

	background-color: #f2295b;

    color: #fff;

	right: -100%;

    bottom: 0;

	transition: .3s;

	transition-delay: .2s;

	z-index: -1;

}

.cmk-double-slide-right:hover:before,

.cmk-double-slide-right:hover:after {

	right: 0;

}

.cmk-double-slide-up:before {

	content: '';

	width: 100%;

	height: 100%;

	position: absolute;

	background-color: #f2295b;

    color: #fff;

	opacity: .5;

	top: 100%;

	left: 0;

	transition: .3s;

	z-index: -1;

}

.cmk-double-slide-up:after {

	content: '';

	width: 100%;

	height: 100%;

	position: absolute;

	background-color: #f2295b;

    color: #fff;

	top: 100%;

	left: 0;

	transition: .3s;

	transition-delay: .2s;

	z-index: -1;

}

.cmk-double-slide-up:hover:before,

.cmk-double-slide-up:hover:after {

	top: 0;

}

.cmk-double-slide-down:before {

	content: '';

	width: 100%;

	height: 100%;

	position: absolute;

	background-color: #f2295b;

    color: #fff;

	opacity: .5;

	top: -100%;

	left: 0;

	transition: .3s;

	z-index: -1;

}

.cmk-double-slide-down:after {

	content: '';


	width: 100%;

	height: 100%;

	position: absolute;

	background-color: #f2295b;

    color: #fff;

	top: -100%;

	left: 0;

	transition: .3s;

	transition-delay: .2s;

	z-index: -1;

}

.cmk-double-slide-down:hover:before,

.cmk-double-slide-down:hover:after {

	top: 0;

}



.cmk-line-in-vertical,

.cmk-line-out-vertical,

.cmk-line-in-horizontal,

.cmk-line-out-horizontal {

	display: inline-block;

    color: #fff;

    position: relative;

	overflow: hidden;

	text-decoration: none;

    z-index: 1;

}

.cmk-line-out-vertical {

	color: #fff;

}

.cmk-line-in-vertical:hover,

.cmk-line-out-vertical:hover,

.cmk-line-in-horizontal:hover,

.cmk-line-out-horizontal:hover {

	color: #fff;

	transition: .5s;

}

.cmk-line-in-vertical:before {

    content: "";

    width: 100%;

    height: 5%;

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    left: 0;

    top: -100%;

    z-index: -1;

    transition: .5s;

    opacity: 0;

}

.cmk-line-in-vertical:after {

    content: "";

    width: 100%;

    height: 5%;

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    right: 0;

    bottom: -100%;

    z-index: -1;

    transition: .5s;

    opacity: 0;

}

.cmk-line-in-vertical:hover:before {

	top: 0;

	transition: .5s;

	opacity: 1;

}

.cmk-line-in-vertical:hover:after {

	bottom: 0;

	transition: .5s;

	opacity: 1;

}

.cmk-line-out-vertical:before {

    content: "";

    width: 100%;

    height: 50%;

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    left: 0;

    top: 0;

    z-index: -1;

    transition: .5s;

    opacity: 1;

}

.cmk-line-out-vertical:after {

    content: "";

    width: 100%;

    height: 50%;

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    right: 0;

    bottom: 0;

    z-index: -1;

    transition: .5s;

    opacity: 1;

}

.cmk-line-out-vertical:hover:before {

    height: 5%;

    top: 0;

    transition: .5s;

    opacity: 1;

}

.cmk-line-out-vertical:hover:after {

	height: 5%;

	bottom: 0;

	transition: .5s;

	opacity: 1;

}

.cmk-line-in-horizontal:before {

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    content: "";

    width: 50%;

    height: 5%;

    left: -50%;

    bottom: 0;

    z-index: -1;

    transition: .5s;

    opacity: 0;

}

.cmk-line-in-horizontal:after {

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    content: "";

    width: 50%;

    height: 5%;

    right: -50%;

    bottom: 0;

    z-index: -1;

    transition: .5s;

    opacity: 0;

}

.cmk-line-in-horizontal:hover:before {

	left: 0;

	transition: .5s;

	opacity: 1;

}

.cmk-line-in-horizontal:hover:after {

	right: 0;

	transition: .5s;

	opacity: 1;

}

.cmk-line-out-horizontal:before {

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    content: "";

    width: 50%;

    height: 5%;

    left: 0;

    bottom: 0;

    z-index: -1;

    transition: .5s;

    opacity: 1;

}

.cmk-line-out-horizontal:after {

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    content: "";

    width: 50%;

    height: 5%;

    right: 0;

    bottom: 0;

    z-index: -1;

    transition: .5s;

    opacity: 1;

}

.cmk-line-out-horizontal:hover:before {

	left: -50%;

	transition: .5s;

	opacity: 0;

}

.cmk-line-out-horizontal:hover:after {

	right: -50%;

	transition: .5s;

	opacity: 0;

}



.cmk-line-left,

.cmk-line-right {

	display: inline-block;

    color: #fff;

    position: relative;

    overflow: hidden;

    text-decoration: none;

    z-index: 5;

}

.cmk-line-left:hover,

.cmk-line-right:hover {

	transition: .5s;

}

.cmk-line-left:before {

    content: "";

    width: 100%;

    height: 5%;

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    left: -100%;

    bottom: 0;

    z-index: -1;

    transition: .5s;

    opacity: 0;

}

.cmk-line-left:hover:before {

	left: 0;

	transition: .5s;

	opacity: 1;

}

.cmk-line-right:before {

    content: "";

    width: 100%;

    height: 5%;

    background-color: #f2295b;

    color: #fff;

    position: absolute;

    right: -100%;

    bottom: 0;

    z-index: -1;

    transition: .5s;

    opacity: 0;

}

.cmk-line-right:hover:before {

	right: 0;

	transition: .5s;

	opacity: 1;

}



.cmk-lineout-horizontal {

	color: #fff;

	display: inline-block;

	overflow: hidden;

	position: relative;

	text-decoration: none;

	transition: 1s all ease;

}

.cmk-lineout-horizontal:before {

    background: #f2295b;

    color: #fff;

    content: "";

    position: absolute;

    bottom: -1px;

    left: 50%;

    transform: translate(-50%, -50%);

    z-index: -1;

    transition: all 0.6s ease;

}

.cmk-lineout-horizontal:hover {

	transition: 1s all ease;

}

.cmk-lineout-horizontal:before {

	width: 0;

	height: 5%;

}

.cmk-lineout-horizontal:hover:before {

	width: 100%;

}



.cmk-line-bounce-left,

.cmk-line-bounce-right {

	position: relative;

	text-decoration: none;

    z-index: 6;

	transition: color 0.4s linear;

    overflow: hidden;	

}

.cmk-line-bounce-left:hover,

.cmk-line-bounce-right:hover {

	color: #fff;

}

.cmk-line-bounce-left:before {

    content: "";

    position: absolute;

    left: 0;

    width: 100%;

    height: 5%;

    bottom: 0;

    background-color: #f2295b;

    color: #fff;

    z-index: -1;

    transition: transform 0.5s;

    transform-origin: 0 0;

    transition-timing-function: cubic-bezier(0.5,1.6,0.4,0.7);

    transform: scaleX(0);

}

.cmk-line-bounce-right:before {

    content: "";

    position: absolute;

    left: 0;

    bottom: 0;

    width: 100%;

    height: 5%;

    background-color: #f2295b;

    color: #fff;

    z-index: -1;

    transition: transform 0.5s;

    transform-origin: 100% 0;

    transition-timing-function: cubic-bezier(0.5,1.6,0.4,0.7);

    transform: scaleX(0);

}

.cmk-line-bounce-left:hover:before,

.cmk-line-bounce-right:hover:before {

	transform: scaleX(1);

}



.cmk-double-line-left,

.cmk-double-line-right {

	display: inline-block;

    color: #fff;

	text-decoration: none;

	position: relative;

    overflow: hidden;

    transition: .3s;

}

.cmk-double-line-left:hover,

.cmk-double-line-right:hover {

	color: #fff;

}

.cmk-double-line-left:before {

    content: '';

    width: 100%;

    height: 5%;

    position: absolute;

    background: #f2295b;

    color: #fff;

    opacity: .5;

    left: -100%;

    bottom: 0;

    transition: .3s;

    z-index: -1;

}

.cmk-double-line-left:after {

	content: '';

	width: 100%;

	height: 5%;

	position: absolute;

	background: #f2295b;

    color: #fff;

	left: -100%;

	bottom: 0;

	transition: .3s;

	transition-delay: .2s;

	z-index: -1;

}

.cmk-double-line-left:hover:before,

.cmk-double-line-left:hover:after {

	left: 0;

}

.cmk-double-line-right:before {

    content: '';

    width: 100%;

    height: 5%;

    position: absolute;

    background: #f2295b;

    color: #fff;

    opacity: .5;

    right: -100%;

    bottom: 0;

    transition: .3s;

    z-index: -1;

}

.cmk-double-line-right:after {

	content: '';

	width: 100%;

	height: 5%;

	position: absolute;

	background: #f2295b;

    color: #fff;

	right: -100%;

    bottom: 0;

	transition: .3s;

	transition-delay: .2s;

	z-index: -1;

}

.cmk-double-line-right:hover:before,

.cmk-double-line-right:hover:after {

	right: 0;

}



.cmk-wave {

    display: inline-block;

    position: relative;

    text-decoration: none;

    box-sizing: border-box;

    overflow: hidden;

}

.cmk-wave-text {

	position: relative;

	z-index: 5;

	color: #fff;

}

.wave {

	position: absolute;

	left: 0;

	top: -80px;

	width: 200px;

	height: 200px;

	background-color: #f2295b;

    color: #fff;

	box-shadow: inset 0 0 50px rgba(0,0,0,.5);

	transition: 0.5s;

}

.cmk-wave:hover .wave {

	top: -120px;

}

.wave:before,

.wave:after {

	content: '';

	position: absolute;

	width: 200%;

	height: 200%;

	top: 0;

	left: 50%;

	transform: translate(-50%, -75%);

}



.wave:before {

	border-radius: 45%;

	background-color: rgba(20,20,20,1);

    color: #fff;

	animation: animate 5s linear infinite;

}

.wave:after {

	border-radius: 40%;

	background-color: rgba(20,20,20,0.5);

    color: #fff;

	animation: animate 10s linear infinite;

}

@keyframes animate {

	0% 

	{

		transform: translate(-50%, -75%) rotate(0deg);

	}

	100% 

	{

		transform: translate(-50%, -75%) rotate(360deg);

	}

}