.cntl {
	position: relative;
	width: 100%;
	/*overflow: hidden;*/
	padding-top: 30px;
}

.cntl-center {
	left:0;
    right:0;
    margin-left:auto;
    margin-right:auto;
}

.cntl-bar {
	position: absolute;
	width: 1px;
	top: 0;
	bottom: 0;
	background-color: #ccc;
	box-shadow: inset 0px 0px 7px -2px #ccc;
}
.cntl-bar .container-circle {
  top: -20px;
  left: 50%;
  width: 25px;
  height: 25px;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}


.cntl-bar-fill {
	background-color: #2d3980;
	position: absolute;
	left:0;
	right:0;
	top:0;
	height:0;
	width: 2px;
}

.cntl-state {
	position: relative;
	width:100%;
	min-height: 200px;
	margin: 50px 0;
}

@media (min-width: 600px){
	.cntl-state {
		display: flex;
		justify-content: center;
		align-items: center;
	}
}

.cntl-state::after {
	display:block;
	content: ' ';
	clear:both;
}

.cntl-icon {
	padding: 8px 25px;
	background-color: #f9f9f9;
	position: absolute;
	top: -20px;
	text-align: center;
	width: 100px;
	font-size: 18px;
	color: #666;
}

.cntl-content {
	width: 40%;
	padding: 2%;
	/*float:left;*/
	opacity:0;
	position:relative;
	margin-left:-40%;
	text-align: right;
	color: #666;
	margin-right: 100px;
}

.cntl-image {
	opacity:0;
	width: 40%;
	padding: 2%;
}

.cntl-state:nth-child(2n+1) .cntl-image {
	float:left;
}

.cntl-image img {
	max-width: 100%;
}
@media (min-width: 992px){
	.cntl-image img {
		max-height: 210px;
	}
}

.cntl-content h4 {
	font-size:22px;
	font-style: italic;
	font-weight: 600;
	margin-bottom: 10px;
	color: #2d3980;
}


/*
animations
*/
.cntl-bar-fill,.cntl-content,.cntl-image {
	-webkit-transition: all 500ms ease;
	-moz-transition: all 500ms ease;
	-o-transition: all 500ms ease;
	-ms-transition: all 500ms ease;
	transition: all 500ms ease;
}

.cntl-state:nth-child(2n+2).cntl-animate .cntl-content {
	margin-right: 9%;
}

.cntl-animate .cntl-content {
	opacity:1;
	margin-left:0%;
}

.cntl-animate .cntl-image {
	opacity:1;
}




/* mobile support */

@media (max-width: 600px) {

	.cntl-bar {
		left: 35px;
		right: auto
	}

	.cntl-content {
		width:100%;
		float:none;
		padding-left: 100px;
		text-align: left;
	}
	.cntl-state:nth-child(2n+2) .cntl-content {
		margi-right:0%;
		float:none;
	}

	.cntl-image {
		width:100%;
		padding-left: 100px;
	}

	.cntl-state{
		margin: 0px 0px 50px;
	}
	.cntl-state:nth-child(2n+1) .cntl-image {
		float:none;
	}

	.animate .cntl-content {
		margin-left: 2%;
	}

	.cntl-icon {
		left: 0;
		right: auto;
		top: 0px;
	}

}
