/**
 * Home Banner Module
 *
 * Styles for template-parts/modules/home_banner_module.php
 */

.home-banner-module {
	position: relative;
	min-height: 51vh;
	display: flex;
	align-items: center;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	padding: 120px 0 95px;
	margin-top: -120px;
}

.home-banner-module.no-padding-top    { padding-top: 0; }
.home-banner-module.no-padding-bottom { padding-bottom: 0; }

/* Video background */
.home-banner-module__video-wrap {
	position: absolute;
	inset: 0;
	overflow: hidden;
	z-index: 0;
}

.home-banner-module__video-wrap video {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Dark overlay */
.home-banner-module__overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.45);
	z-index: 1;
}

/* Content sits above overlay */
.home-banner-module .container {
	position: relative;
	z-index: 2;
}
.home-banner-module__body {
  padding-bottom: 0px;
}
.home-banner-module__heading {
	font-family: var(--header);
	font-size: 5.5rem;
    line-height: 1.05;
	color: var(--white);
	margin: 0;
	font-weight: 500; font-weight: 600;
	padding-bottom: 30px;
  padding-top: 70px;
}
.home-banner-module__heading em { font-family: 'Noto Serif Display', sans-serif; font-weight: 500; letter-spacing: -0.02em; }
.home-banner-module__body {}
.home-banner-module__body p {
	font-size: 1.25rem;
	line-height: 1.6;
	color: var(--white);
	margin-bottom: 30px;
	line-height: 26px;
  font-size: 1.125rem;
}
.home-banner-module__cta {
  font-family: var(--header);
  font-size: 1.1875rem;
  font-weight: 500;
  line-height: 1.37;
  border-radius: 48px;
  text-decoration: none;
  transition-duration: .18s;
  transition-timing-function: cubic-bezier(.5,0,.75,0);
  padding: 11px 24px 8px;
  background-color: #E6E7A5;
  color: #2F4946; font-size: 1rem; font-weight: 600;
}
.home-banner-module__cta:hover {
  background-color: #566b65;
  color: #fff;
}

#wh_banner_tint {
  display: block;
  background: #A4A49A;
  mix-blend-mode: multiply;
}
.wh_banner_tint {
  position: absolute;
  top: -114px;
  left: 0;
  right: 0;
  object-fit: cover;
  height: calc(100% + 114px);
	display: block;
  background: #A4A49A;
  mix-blend-mode: multiply;
}

@media (max-width: 1366px) {
}

@media (max-width: 992px) {
	.home-banner-module { min-height: 60svh; padding: 80px 0; }
}

@media (max-width: 768px) {
	.home-banner-module { min-height: 98svh; padding: 60px 0; }
	.home-banner-module__heading { font-size: 3rem;
  font-weight: 500;
  line-height: 1.15; }
	.home-banner-module__body p {font-size: 1.125rem;}
	.home-banner-module__content {padding-top: 30%;}
}

@media (max-width: 600px) {
	.home-banner-module { padding: 40px 0; }
}
