/**
 * Homepage specific styling goes here. Excluded on all subpages
 *
 * @format
 */

/* For most builds, this stylesheet should be wiped and started fresh */

#lottie {
	background-color: #fff;
	width: 100%;
	height: 100%;
	display: block;
	overflow: hidden;
	transform: translate3d(0, 0, 0);
	text-align: center;
	opacity: 0;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 99;
}

#lottie.finished {
	opacity: 0;
	pointer-events: none;
}

@media screen and (min-width: 1025px) {
	#lottie {
		opacity: 1;
		-webkit-transition: opacity 1000ms ease-out;
		-moz-transition: opacity 1000ms ease-out;
		-ms-transition: opacity 1000ms ease-out;
		-o-transition: opacity 1000ms ease-out;
		transition: opacity 1000ms ease-out;
	}
}

.home-hero {
	/* background-image: url(../images/home_hero_background.webp);
	background-size: cover;
	background-repeat: no-repeat; */
	background-position-x: 50%;
	margin-top: 80px;
	overflow: hidden;
}

.home-hero:before {
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	content: '';
	background: #f5f0ea;
	-webkit-transition: opacity 300ms ease-out;
	-moz-transition: opacity 300ms ease-out;
	-ms-transition: opacity 300ms ease-out;
	-o-transition: opacity 300ms ease-out;
	transition: opacity 300ms ease-out;
}

.home-hero.active:before {
	opacity: 0;
}

.home-hero-inner-people {
	display: none;
}

.home-hero-tagline {
	z-index: 4;
}

.home-hero-tagline-sm {
	font-size: 1.2rem;
	display: block;
	color: #c58c3e;
	margin-bottom: 4px;
	font-family: 'Poppins', sans-serif;
}

.home-hero-height-control {
	height: 290px;
	position: relative;
}

.home-hero .row,
.home-hero .columns,
.home-hero .home-hero-inner {
	height: 100%;
	max-width: 1280px;
}

.home-hero-main-people {
	display: flex;
	align-items: flex-end;
	width: 100%;
}

.home-hero-main-people-group {
	text-align: center;
	position: relative;
	margin: 0 auto;
	width: 100%;
	display: flex;
}

.home-hero-person-image {
	max-height: 270px;
}

.home-hero-person {
	z-index: 1;
	bottom: 0;
	position: relative;
	display: flex;
	-webkit-transition: all 200ms ease-out;
	-moz-transition: all 200ms ease-out;
	-ms-transition: all 200ms ease-out;
	-o-transition: all 200ms ease-out;
	transition: all 200ms ease-out;
}

.home-hero-person-1 {
	z-index: 0;
	position: absolute;
	left: calc(50% - 190px);
}

.home-hero-person-2 {
	z-index: 1;
	margin: 0 auto;
}

.home-hero-person-3 {
	z-index: 2;
	position: absolute;
	right: calc(50% - 190px);
}

.home-hero-tagline-lg {
	font-size: 5rem;
	line-height: 0.9;
	letter-spacing: -1.5px;
}

.home-hero-content-mobile {
	padding: 20px 0 0;
}

.home-hero-person-hover {
	position: absolute;
	display: none;
	background: rgba(0, 56, 102, 0.85);
	bottom: 20%;
	left: 0;
	right: 0;
	width: 100%;
	padding: 20px;
	max-width: 300px;
	text-align: center;
	margin: 0 auto;
}

.home-hero-person-hover h3 {
	font-family: 'Poppins', sans-serif;
	color: #c58c3e;
	text-transform: uppercase;
	font-weight: 600;
	margin-bottom: 0;
	font-size: 1rem;
}

.home-hero-person-hover span {
	color: #c58c3e;
}

.home-hero-person-hover:after {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 40px;
	height: 40px;
	color: #c58c3e;
	content: '\f067';
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: 'Font Awesome 6 Pro';
}

.home-hero-person-hover:focus,
.home-hero-person-hover:hover {
	text-decoration: underline;
}

@media screen and (min-width: 480px) {
	.home-hero-person-1 {
		left: calc(50% - 230px);
	}

	.home-hero-person-3 {
		right: calc(50% - 230px);
	}
}

@media screen and (min-width: 680px) {
	.home-hero-height-control {
		height: 370px;
	}

	.home-hero-person-image {
		max-height: 350px;
	}

	.home-hero-person-1 {
		left: calc(50% - 300px);
	}

	.home-hero-person-3 {
		right: calc(50% - 300px);
	}
}

@media screen and (min-width: 1025px) {
	.home-hero-person.active .home-hero-person-hover {
		display: block;
		-webkit-animation: fadeIn 220ms ease-out;
		animation: fadeIn 220ms ease-out;
	}

	.home-hero-main-content {
		height: 100%;
		display: flex;
		align-items: center;
	}

	.home-hero-person-1 {
		right: 210px;
	}

	.home-hero-person-2 {
		right: 0;
	}

	.home-hero-person-3 {
		right: -210px;
	}

	.home-hero-tagline-sm {
		font-size: 1.5rem;
	}
	.home-hero-tagline-lg {
		font-size: 7.2rem;
	}

	.home-hero-height-control {
		height: 620px;
	}

	.home-hero-main-people {
		position: absolute;
		right: 0;
		padding-right: 10vw;
		bottom: 0;
	}

	.home-hero-person {
		left: auto;
		position: absolute;
	}

	.home-hero-person.active {
		z-index: 3;
		transform: scale(1.01);
	}

	.home-hero-person-image {
		max-height: 603px;
	}
}

@media screen and (min-width: 1500px) {
	.home-hero-person-1 {
		right: 260px;
	}

	.home-hero-person-2 {
		right: 0;
	}

	.home-hero-person-3 {
		right: -260px;
	}
}

main.home-main {
	padding: 0 0 50px;
	min-height: 0;
}

.home-main-title-desktop {
	display: none;
	text-align: center;
	margin-bottom: 60px;
	font-size: 3rem;
}

.home-main-title span {
	font-size: 1.2rem;
	color: #c58c3e;
	margin-bottom: 10px;
	text-transform: uppercase;
	display: block;
	letter-spacing: 2px;
	font-family: 'Poppins', sans-serif;
}

.home-main-side {
	flex: 1;
	width: 100%;
	max-width: 400px;
	margin-bottom: 60px;
}

.home-main-content {
	flex: 1;
}

.home-main-content p:last-of-type {
	margin: 0;
}

.home-main-side .youtube-player {
	margin: 0;
	box-shadow: 0 0 14px #828282;
}

.home-main-side .youtube-player,
.home-main-side .youtube-player-inner {
	border-radius: 10px;
}

@media screen and (min-width: 800px) {
	main.home-main {
		padding: 0 0 90px;
	}

	.home-main-title-desktop {
		display: block;
	}

	.home-main-side {
		max-width: none;
	}

	.home-main-title-mobile {
		display: none;
	}

	.home-main-inner {
		flex-direction: row-reverse;
		align-items: flex-start;
		margin: 0 auto;
		max-width: 85%;
	}

	.home-main-content {
	}

	.home-main-title span {
		letter-spacing: 6px;
	}
}

@media screen and (min-width: 1025px) {
	main.home-main {
		padding-top: 90px;
	}
}

.section-lower-content {
	/* background-image: url(../images/section_white_h.jpg); */
	background-size: cover;
	background-repeat: no-repeat;
	background-position-x: 50%;
	padding: 50px 0;
}

.section-lower-content-inner {
	text-align: center;
	max-width: 600px;
	margin: 0 auto;
}

.xl-h2 {
	font-size: 2.5rem;
	line-height: 1.1;
}

@media screen and (min-width: 1025px) {
	.section-lower-content {
		padding: 150px 0;
	}
}

.section-clients-served {
	background: #003764;
	padding: 60px 0;
}

.section-clients-served .accordion-item {
	flex: 1;
	border-bottom: none;
}

.section-clients-served .accordion-item-title,
.section-clients-served .accordion-item.active {
	border-bottom: 1px solid #fff;
}

.accordion-item.active .accordion-item-title {
	border: none;
}

.section-clients-served .accordion-item-title:hover,
.section-clients-served .accordion-item-title:focus {
	background: #074b83;
}

@media screen and (min-width: 900px) {
	.section-clients-served {
		padding: 80px 0;
	}

	.section-clients-served-inner {
		display: flex;
	}

	.section-clients-served .accordion-item:not(:last-of-type) {
		margin-right: 18px;
	}
}

.section-home-posts {
	padding: 40px 0;
	border-top: 1px solid #dbdbdb;
	border-bottom: 1px solid #dbdbdb;
}

@media screen and (min-width: 720px) {
	.section-home-posts {
	}
}
