.tm-counter {
	&.align-left {
		.number-wrap {
			justify-content: flex-start;
		}
	}

	&.align-center {
		.number-wrap {
			justify-content: center;
		}
	}

	&.align-right {
		.number-wrap {
			justify-content: flex-end;
		}
	}

	.heading {
		margin-bottom: 0;
	}

	&.style-01 {

		.icon {
			font-size: 80px;
			line-height: 1;
			margin-bottom: 11px;
		}

		.number-wrap {
			display: flex;
			margin-bottom: 16px;
			font-size: 64px;
			font-weight: 600;
			line-height: 1;
		}

		.sub-heading {
			font-size: 24px;
			font-weight: 600;
			line-height: 1.34;
			margin-bottom: 32px;
		}

		.heading {
			font-size: 16px;
			font-weight: 700;
			text-transform: uppercase;
			letter-spacing: 2px;
		}
	}

	&.style-02 {

		.icon {
			font-size: 80px;
			line-height: 1;
			margin-bottom: 11px;
		}

		.number-wrap {
			display: flex;
			margin-bottom: 19px;
			font-size: 56px;
			font-weight: 400;
			line-height: 1;
		}

		.sub-heading {
			font-size: 24px;
			font-weight: 600;
			line-height: 1.34;
			margin-bottom: 32px;
		}

		.heading {
			font-size: 14px;
			font-weight: 500;
			text-transform: uppercase;
			letter-spacing: 2px;
			color: #7e7e7e;
		}
	}

	&.style-03 {
		.counter-wrap {
			display: flex;
		}

		.icon {
			border-radius: 10px;
			height: 80px;
			width: 80px;
			line-height: 80px;
			background: #fff;
			font-size: 30px;
			text-align: center;
			margin-right: 20px;
			box-shadow: 0 0 15px rgba(51, 51, 51, .05);
		}

		.content-wrap {
			padding-top: 10px;
		}

		.number-wrap {
			display: flex;
			margin-bottom: 5px;
			font-size: 34px;
			font-weight: 600;
			line-height: 1;
		}

		.heading {
			font-size: 16px;
			font-weight: 500;
			line-height: 1.5;
			text-transform: uppercase;
			letter-spacing: 2px;
		}

		.description {
			margin-top: 5px;
		}
	}

	&.style-04 {

		.icon {
			font-size: 80px;
			line-height: 1;
			margin-bottom: 11px;
		}

		.number-wrap {

			.number {
				font-size: 40px;
				font-weight: 600;
				line-height: 1.2;
				color: #ffffff;
				margin-bottom: 10px;
			}
		}

		.sub-heading {
			font-size: 24px;
			font-weight: 600;
			line-height: 1.34;
			margin-bottom: 32px;
		}

		.heading {
			font-size: 16px;
			font-weight: 700;
			text-transform: uppercase;
			letter-spacing: 2px;
		}

		.description {
			opacity: 0.7;
			font-size: 16px;
			font-weight: 700;
			line-height: 1.5;
			letter-spacing: 2px;
			color: #ffffff;
			margin-top: 16px;
		}
	}
}

@include media-breakpoint-down(lg) {
	.tm-counter {
		&.style-01 {
			.number-wrap {
				font-size: 54px;
			}
		}
	}
}

@include media-breakpoint-down(md) {
	.tm-counter {
		&.style-01 {
			.number-wrap {
				font-size: 44px;
			}
		}
	}
}

@include media-breakpoint-down(sm) {
	.tm-counter {
		&.style-01 {
			.number-wrap {
				font-size: 34px;
			}
		}
	}
}
