/*--------------------------------------------------------------
# Hero Section - Home Page Only
--------------------------------------------------------------*/
.hero {
	width: 100%;
	min-height: 100vh;
	position: relative;
	padding: 80px 0 60px 0;
	display: flex;
	align-items: center;
	background: var(--background-color);
	background-size: cover;
}

.hero h1 {
	margin: 0;
	font-size: 62px;
	font-weight: 600;
	line-height: 56px;
	color: var(--heading-color);
}

.hero h3 {
	margin: 0;
	font-size: 31px;
	font-weight: 400;
	color: var(--heading-color);
}

.hero p {
	color: color-mix(in srgb, var(--default-color), transparent 30%);
	margin: 5px 0 30px 0;
	font-size: 20px;
	font-weight: 400;
}

.hero h3 {
	margin: 30px 0 30px 0;
}
.hero .btn-cta {
	display: inline-block;
	padding: 8px 40px 10px 40px;
	border-radius: 50px;
	background: var(--accent-color);
	color: var(--contrast-color);
	transition: none;
	font-size: 16px;
	font-weight: 400;
	font-family: var(--heading-font);
	font-weight: 600;
	transition: 0.3s;
	border: 1px solid var(--accent-color);
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.1);
}

.hero .btn-cta:hover {
	background: var(--contrast-color);
	color: var(--accent-color);
	box-shadow: 0 8px 28px rgba(0, 0, 0, 0.1);
}

.hero .btn-watch-video {
	font-size: 16px;
	transition: 0.5s;
	color: var(--default-color);
	font-weight: 600;
}

.hero .btn-watch-video i {
	color: var(--accent-color);
	font-size: 32px;
	transition: 0.3s;
	line-height: 0;
	margin-right: 8px;
}

.hero .btn-watch-video:hover {
	color: var(--accent-color);
}

.hero .btn-watch-video:hover i {
	color: color-mix(in srgb, var(--accent-color), transparent 15%);
}

.hero .animated {
	animation: up-down 2s ease-in-out infinite alternate-reverse both;
}

@media (max-width: 640px) {
	.hero h1 {
		font-size: 28px;
		line-height: 36px;
	}

	.hero p {
		font-size: 18px;
		line-height: 24px;
		margin-bottom: 30px;
	}
}

@keyframes up-down {
	0% {
		transform: translateY(10px);
	}

	100% {
		transform: translateY(-10px);
	}
}
