.heroImageHeadlineContainer {
    display: flex;
    justify-content: center;
    padding-bottom: 40px;
}
.heroImageContainer {
    position: relative;
}
.heroImageContainer picture {
    display: inline-block;
}
.heroImageContainer img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
}
.heroImage {
    display: block;
    height: auto;
    max-width: 100%;
}
.heroContent {
	left: 60px;
	margin: 0;
	padding: 0;
    position: absolute;
	top: 50%;
    transform: translate(0, -50%);
    /* The transform: translate(0, -50%) shifts the text back top by half its
    own size, which is what makes the centering accurate even when the text
    block has different number of rows.
    */
	width: 50%;
    z-index: 1;
}


@font-face {
	font-family: 'GM';
	font-style: normal;
	font-weight: normal;
	src: url('/resource/site_GothamMediumFont') format('opentype');
}

.heroContent h1 {
    color: var(--primary-white-color);
	font-family: GM, sans-serif !important;

    margin: 0;
    padding: 0;

	text-transform: uppercase;

	overflow-wrap: break-word;
}


.heroContent hr {
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	font-size: 20px;
	line-height: 100%;

	color: var(--primary-red-color);
	font-family: Raleway, sans-serif;

    margin: 0;
    padding: 0;

	-webkit-font-smoothing: antialiased;
	text-align: left;
	height: 0;
	box-sizing: content-box;
	border: 0;
	border-top: 1px solid #eee;
	width: 10%;
	border-color: var(--primary-red-color);
}


/* 1920px and wider */
@media (min-width: 1919px) {
    .heroContent {
		left: 100px;
        width: 50%;
    }
	.heroContent h1 {
		font-size: 54px;
		line-height: 100% !important;
	}
	.heroContent hr {
		margin-top: 40px;
		margin-bottom: 40px;
	}
	.heroContent p {
		font-size: 24px;
		line-height: 140%;
		margin-bottom: 40px;
		width: 70%;
	}
}
/* 1920px and wider */

/* 1280 - 1920 */
@media (min-width: 1279px) and (max-width: 1918px) {
    .heroContent {
		left: 60px;
        width: 50%;
    }
	.heroContent h1 {
		font-size: 36px;
		line-height: 120%;
	}
	.heroContent hr {
		margin-top: 40px;
		margin-bottom: 40px;
	}
	.heroContent p {
		font-size: 18px;
		line-height: 140%;
		margin-bottom: 40px;
		width: 70%;
	}
}
/* 1280 - 1920 */

/* 768 - 800 */
/* mobile landscape */
@media (min-width: 767px) and (max-width: 801px) and (orientation: landscape) {
    .heroContent {
		left: 60px;
        width: 42%;
    }
	.heroContent h1 {
		font-size: 20px;
		line-height: 120%;
	}
	.heroContent hr {
		margin-top: 20px;
		margin-bottom: 20px;
	}
	.heroContent p {
		font-size: 12px;
		line-height: 120%;
		margin-bottom: 20px;
		width: 68%;
	}
}

/* mobile portrait */
@media (max-width: 820px) and (orientation: portrait) {
    .heroContent {
		left: 20px;
		width: 90%;
    }
	.heroContent h1 {
		font-size: 18px;
		line-height: 120%;
	}
	.heroContent hr {
		margin-top: 20px;
		margin-bottom: 20px;
	}
	.heroContent p {
		font-size: 12px;
		line-height: 140%;
		margin-bottom: 20px;
		width: 60%;
	}
}
