.jet-hor-timeline {
	position: relative;

	&-inner {
		.jet-hor-timeline--arrows-nav & {
			overflow: hidden;
		}
	}

	&-track {
		.jet-hor-timeline--scroll-bar & {
			overflow-x: auto;
			-webkit-overflow-scrolling: touch;
			-ms-overflow-style: -ms-autohiding-scrollbar;

			padding-bottom: 30px;

			&::-webkit-scrollbar {
				height: 8px;
				background: #EFEFF1;
				border-radius: 4px;
			}
			&::-webkit-scrollbar-button {
				width: 0;
				height: 0;
			}
			&::-webkit-scrollbar-thumb {
				background-color: #34314B;
				border: none;
				border-radius: 4px;
			}
			&::-webkit-scrollbar-track {
				border: none;
				background: transparent;
			}
			&::-webkit-scrollbar-corner {
				background: transparent;
			}
		}

		.jet-hor-timeline--arrows-nav & {
			transition: transform 500ms ease;
		}
	}

	&-list {
		position: relative;
		display: flex;

		&--top    { align-items: flex-end; }
		&--middle { align-items: flex-end; }
		&--bottom { align-items: flex-start; }
	}
	
	&-item {
		display: flex;
		flex-direction: column;
		flex-wrap: nowrap;
		padding-left: 15px;
		padding-right: 15px;

		flex: 0 0 33.33%;
		max-width: 33.33%;

		transition: .2s;

		.jet-hor-timeline-list--top & {
			padding-top: 15px;

		}
		.jet-hor-timeline-list--bottom & {
			padding-bottom: 15px;
		}

		&__card {
			position: relative;
			display: flex;
			flex-direction: column;
			flex-wrap: nowrap;

			border-width: 1px;
			background-color: #f8f8f8;
			transition: inherit;

			.jet-hor-timeline-list--top & {
				margin-bottom: 30px;

			}
			.jet-hor-timeline-list--bottom & {
				margin-top: 30px;
			}

			&-inner {
				display: flex;
				flex-direction: column;
				flex-wrap: nowrap;
				padding: 30px;
				overflow: hidden;
				z-index: 1;

				background-color: #f8f8f8;
				transition: inherit;
			}

			&-img {
				margin-bottom: 10px;

				img {
					vertical-align: top;
				}
			}

			&-title {
				margin: 0 0 10px;
				padding: 0;
				transition: inherit;
			}

			&-btn-wrap {
				margin-top: 15px;
			}

			&-arrow {
				position: absolute;
				width: 20px;
				height: 20px;
				border-width: 1px;
				transition: inherit;

				.jet-hor-timeline & {
					box-sizing: content-box;
				}

				&:before {
					content: '';
					display: block;
					width: 100%;
					height: 100%;
					background-color: #f8f8f8;
					transition: inherit;
				}

				.jet-hor-timeline-list--top & {
					top: 100%;
					transform: translateY(-50%) rotate(45deg);
					border-left-color: transparent !important;
					border-top-color: transparent !important;

				}
				.jet-hor-timeline-list--bottom & {
					bottom: 100%;
					transform: translateY(50%) rotate(45deg);
					border-right-color: transparent !important;
					border-bottom-color: transparent !important;
				}

				.jet-hor-timeline--align-left & {
					left: 20px;
				}

				.jet-hor-timeline--align-right & {
					right: 20px;
				}

				.jet-hor-timeline--align-center & {
					left: 50%;
				}
				.jet-hor-timeline--align-center .jet-hor-timeline-list--top & {
					transform: translateX(-50%) translateY(-50%) rotate(45deg);
				}
				.jet-hor-timeline--align-center .jet-hor-timeline-list--bottom & {
					transform: translateX(-50%) translateY(50%) rotate(45deg);
				}
			}
		}

		&__meta {
			transition: inherit;

			.jet-hor-timeline-list--top & {
				margin-bottom: 15px;

			}
			.jet-hor-timeline-list--bottom & {
				margin-top: 15px;
			}

			.jet-hor-timeline--align-left & {
				text-align: left;
				margin-right: auto;
			}

			.jet-hor-timeline--align-center & {
				text-align: center;
				margin-left: auto;
				margin-right: auto;
			}

			.jet-hor-timeline--align-right & {
				text-align: right;
				margin-left: auto;
			}
		}

		&__point {
			z-index: 1;
			transition: inherit;

			&-content {
				position: relative;
				display: flex;
				align-items: center;
				justify-content: center;
				width: 40px;
				height: 40px;
				min-width: 10px;
				min-height: 10px;

				font-size: 16px;
				color: #34314B;
				background-color: #EFEFF1;
				border-radius: 50%;
				transition: inherit;

				.jet-hor-timeline--align-left & {
					margin-left: 10px;
					margin-right: auto;
				}

				.jet-hor-timeline--align-center & {
					margin-left: auto;
					margin-right: auto;
				}

				.jet-hor-timeline--align-right & {
					margin-left: auto;
					margin-right: 10px;
				}
			}
		}

		&.is-active {
			.jet-hor-timeline-item__point-content {
				background-color: #55cdff;
				color: #fff;
			}
		}
	}
	
	&__line {
		position: absolute;
		top: 50%;
		height: 2px;
		transform: translateY(-50%);
		overflow: hidden;

		background-color: #EFEFF1;

		&-progress {
			width: 0;
			height: 100%;
			background-color: #55cdff;
			transition: 500ms ease;
		}
	}

	.jet-arrow {
		position: absolute;
		top: 50%;
		display: flex;
		justify-content: center;
		align-items: center;
		cursor: pointer;
		z-index: 999;
		transition: all 200ms linear;

		width: 36px;
		height: 36px;
		border-radius: 50%;

		font-size: 30px;
		line-height: 1;

		background-color: #55cdff;
		color: #fff;

		&:before {
			line-height: 0;
		}

		&.jet-prev-arrow {
			@include start(0);

			@if ( $direction == rtl ) {
				transform: translateY(-50%) scale(-1, 1);
			} @else {
				transform: translateY(-50%);
			}
		}
		&.jet-next-arrow {
			@include end(0);

			@if ( $direction == rtl ) {
				transform: translateY(-50%);
			} @else {
				transform: translateY(-50%) scale(-1, 1);
			}
		}

		&.jet-arrow-disabled {
			opacity: .5;
			cursor: default;
			pointer-events: none;
		}
	}
}