
.tabstepper-block {
position: relative;
padding: 90px 0 0 0;
margin: 0 0 90px 0;
}
.tabstepper-head {
max-width: 550px;
z-index: 1;
}
.tabstepper-head h3 {
padding-top: 90px;
}
.tabstepper-head h5 {
margin: 0;
}
.tabstepper-block .tab_container {
position: relative;
overflow: hidden;
}
.tabstepper-block ul.tab_list {
position: absolute;
top: 0;
left: 0;
width: 48.5%;
max-width: 550px;
margin:  0 0 0px 0;
z-index: 2;
}
.tabstepper-block ul.tab_list li {
flex-grow: 1;
}
.tabstepper-block .step {
border-bottom: 1px solid #E9EEF4;
padding: 50px 0;
}
.tabstepper-block .step.step1 {
padding-top: 0;
}
.step-head {
display: flex;
align-items: center;
margin: 0 0 20px 0;
}
.step-head figure {
flex: 0 0 auto;
margin: 0 30px 0 0;
}
.step-head figure img {
max-width: 120px;
}
.step-head h5 {
flex: 0 1 auto;
margin: 0;
}
.tabstepper-block .step p:last-child {
margin: 0;
}
.tabstepper-block .more-steps {
display: none;
}
.tabstepper-block p.toggle-steps {
margin: 30px 0 0 0;
}
@media screen and (min-width: 768px) {
	.tabstepper-block ul.tab_list.stickytop {
	position: fixed;
	top: 80px;
	left: auto;
	width: calc(90% - 46.75%); /* Not relative to container, so mimick organic width here */
	}
	.tabstepper-block ul.tab_list.stickybottom {
	position: absolute;
	top: auto;
	width: 48.25%; /* Relative to container, so match organic width here */
	}
	.tabstepper-head.stickytop {
	position: fixed;
	top: 80px;
	width: calc(90% - 46.75%); /* Not relative to container, so mimick organic width here */
	}
	.tabstepper-head.stickybottom {
	position: absolute;
	top: auto;
	bottom: 0;
	width: 48.25%; /* Relative to container, so match organic width here */
	}
}
@media screen and (max-width: 767px) {
	.tabstepper-block {
	padding: 60px 0 0 0;
	margin: 0 0 60px 0;
	}
	.tabstepper-head {
	max-width: none;
	}
	.tabstepper-head h3 {
	padding-top: 0;
	}
	.step-head {
	display: block;
	}
	.step-head figure {
	margin: 0 0 20px 0;
	}
}