
.timeline-main {
	font-family: "Open Sans", sans-serif;
	margin: 0;
	padding: 0 4em;
	min-width: 300px;
	max-width: 800px;
	margin: auto;
}

.timeline-p {
	font-size: 1em;
	line-height: 1.75em;
	border-top: 3px solid;
	-webkit-border-image: -webkit-gradient(linear, left top, right top, from(#743ad5), to(#d53a9d));
	-webkit-border-image: linear-gradient(to right, #743ad5 0%, #d53a9d 100%);
	-o-border-image: linear-gradient(to right, #743ad5 0%, #d53a9d 100%);
	border-image: -webkit-gradient(linear, left top, right top, from(#743ad5), to(#d53a9d));
	border-image: linear-gradient(to right, #743ad5 0%, #d53a9d 100%);
	border-image-slice: 1;
	border-width: 3px;
	margin: 0;
	padding: 40px;
	counter-increment: section;
	position: relative;
	color: #34435E;
}

.timeline-p:before {
	content: counter(section);
	position: absolute;
	border-radius: 50%;
	padding: 10px;
	height: 1.25em;
	width: 1.25em;
	background-color: #34435E;
	text-align: center;
	line-height: 1.25em;
	color: #ffffff;
	font-size: 1em;
}

.timeline-p:nth-child(odd) {
	border-right: 3px solid;
	padding-left: 0;
}

.timeline-p:nth-child(odd):before {
	left: 100%;
	margin-left: -20px;
}

.timeline-p:nth-child(even) {
	border-left: 3px solid;
	padding-right: 0;
}

.timeline-p:nth-child(even):before {
	right: 100%;
	margin-right: -20px;
}

.timeline-p:first-child {
	border-top: 0;
	border-top-right-radius: 0;
	border-top-left-radius: 0;
}

.timeline-p:last-child {
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}
