/* =========================================================
   HOME HERO
========================================================= */

.hero-bg {
	position: relative;

	display: flex;
	align-items: center;

	min-height: 560px;
	padding: 120px 0;

	color: var(--white);

	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;

	overflow: hidden;
}


/* Overlay */

.hero-bg::before {
	content: '';

	position: absolute;
	inset: 0;
	z-index: 0;

	background: rgba(27, 42, 29, 0.50);
}


/* =========================================================
   LAYOUT
========================================================= */

.hero-bg .hero-inner {
	position: relative;
	z-index: 2;

	display: flex;
	align-items: center;

	width: 100%;
}


.hero-bg .hero-content {
	flex: 0 0 50%;

	padding-right: 40px;

	color: var(--white);
	text-align: center;
}


/* =========================================================
   TITLE
========================================================= */

.hero-bg h1 {
	margin: 0 0 16px;

	color: var(--white);

	font-family: 'Barlow', sans-serif;
	font-size: 44px;
	font-weight: 800;
	line-height: 1.15;
}


.hero-bg h1 span {
	color: #A5D6A7;
}


/* =========================================================
   SUBTITLE
========================================================= */

.hero-bg .hero-sub {
	margin: 0 0 12px;

	color: var(--white);

	font-family: 'Barlow', sans-serif;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.5;

	opacity: 0.95;
}


/* =========================================================
   BUTTONS
========================================================= */

.hero-bg .hero-btns {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 16px;

	margin-top: 28px;
}


.hero-bg .btn {
	padding: 16px 36px;

	font-family: 'Barlow', sans-serif;
	font-size: 17px;
	font-weight: 600;
}


.hero-bg .btn-outline-hero {
	color: var(--white);
	background: transparent;

	border: 2px solid var(--white);
}


.hero-bg .btn-outline-hero:hover {
	color: var(--green-dark);
	background: var(--white);
}


/* =========================================================
   FORM
========================================================= */

.hero-bg .contact-form-wrap.home-form {
	flex: 0 0 50%;

	width: 100%;
	max-width: 550px;

	margin-left: auto;
}


.hero-bg .contact-form-wrap.home-form span {
	text-align: left;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 980px) {

	.hero-bg .hero-inner {
		flex-direction: column;
	}

	.hero-bg .hero-content {
		flex: 0 0 auto;

		width: 100%;
		padding-right: 0;
		padding-bottom: 40px;
	}

	.hero-bg .contact-form-wrap.home-form {
		flex: 0 0 auto;

		width: 100%;
		max-width: 100%;

		margin-left: 0;
	}
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 768px) {

	.hero-bg {
		min-height: auto;
		padding: 40px 0;

		/*
		 * Це ОРИГІНАЛЬНА поведінка старого сайту:
		 * на mobile вони прибирають background image.
		 */
		background-image: none !important;

		background:
			linear-gradient(
				135deg,
				var(--green-bg) 0%,
				var(--white) 50%,
				#E3F2FD 100%
			);
	}


	.hero-bg::before {
		display: none;
	}


	.hero-bg .hero-content {
		max-width: none;

		padding: 0 0 30px;

		color: var(--text);
		text-align: left;
	}


	.hero-bg h1 {
		color: var(--dark);

		font-size: 30px;
	}


	.hero-bg h1 span {
		color: var(--green);
	}


	.hero-bg .hero-sub {
		color: var(--green-dark);

		font-size: 16px;
	}


	.hero-bg .hero-btns {
		justify-content: flex-start;
		flex-direction: column;
	}


	.hero-bg .hero-btns .btn {
		width: 100%;
	}


	.hero-bg .btn-outline-hero {
		color: var(--green);
		border-color: var(--green);
	}


	.hero-bg .btn-outline-hero:hover {
		color: var(--white);
		background: var(--green);
	}
}


@media (max-width: 480px) {

	.hero-bg h1 {
		font-size: 26px;
	}
}