/*
 * Final HERO presentation rules.
 * This stylesheet is intentionally loaded after every page-specific stylesheet.
 */
body.page-top .fv h1,
body.page-top .fv h1 *,
body.page-top .fv .sub,
body.page-top .fv .group,
body:not(.page-top) .hero .breadcrumb a,
body:not(.page-top) .hero .breadcrumb span,
body:not(.page-top) .hero .hero-breadcrumb a,
body:not(.page-top) .hero .hero-breadcrumb span,
body:not(.page-top) .page-hero .breadcrumb a,
body:not(.page-top) .page-hero .breadcrumb span,
body:not(.page-top) .hero .hero-en,
body:not(.page-top) .hero .hero-label,
body:not(.page-top) .hero .hero-eyebrow,
body:not(.page-top) .hero .hero-h1,
body:not(.page-top) .hero .hero-h1 *,
body:not(.page-top) .hero .hero-sub,
body:not(.page-top) .hero .hero-desc,
body:not(.page-top) .hero .single-hero-date,
body:not(.page-top) .page-hero h1,
body:not(.page-top) .page-hero h1 *,
body:not(.page-top) .page-hero p {
	color: #fff !important;
	text-shadow: 0 0 10px rgba(0, 0, 0, 0.9), 0 0 3px rgba(0, 0, 0, 0.9) !important;
}

@media (max-width: 768px) {
	body.page-top .fv {
		align-items: flex-end !important;
	}

	body.page-top .fv h1,
	body:not(.page-top) .hero .hero-h1,
	body:not(.page-top) .page-hero h1 {
		font-size: 26px !important;
	}

	body.page-template-page-about .page-hero,
	body.page-template-page-services .hero,
	body.page-template-page-achievements .hero {
		display: flex !important;
		align-items: flex-end !important;
		padding-bottom: 24px !important;
	}

	body.page-template-page-about .page-hero > .hero-inner,
	body.page-template-page-services .hero > .hero-inner,
	body.page-template-page-achievements .hero > .hero-inner {
		width: 100%;
		margin-top: auto;
	}

	body.page-recruit .hero > .hero-inner,
	body.page-template-page-new-grad .hero > .hero-inner,
	body.page-template-page-mid-career .hero > .hero-inner,
	body.single-post .hero > .hero-inner {
		display: flex !important;
		flex-direction: column !important;
		justify-content: flex-end !important;
		align-items: flex-start !important;
		height: 100% !important;
		min-height: 100% !important;
		padding-bottom: 24px !important;
	}

	body.page-recruit .hero-left {
		width: 100%;
	}

	body.page-recruit .hero-halftone-target {
		transform: none !important;
	}

	body.page-template-page-contact .hero > .hero-inner,
	body.page-template-page-blog .hero > .hero-inner {
		display: flex !important;
		flex-direction: column !important;
		justify-content: flex-end !important;
		align-items: flex-start !important;
		height: 100% !important;
		min-height: 100% !important;
		padding-bottom: 0 !important;
	}

	body.page-template-page-contact .hero-halftone-target,
	body.page-template-page-blog .hero-halftone-target {
		width: 100%;
		margin: 0 0 24px !important;
	}

	body.page-template-page-contact .breadcrumb,
	body.page-template-page-blog .breadcrumb,
	body.page-template-page-contact .type-tabs,
	body.page-template-page-blog .tab-nav {
		margin-top: 0 !important;
	}

	body.page-recruit .hero-btns,
	body.page-template-page-new-grad .hero-btns,
	body.page-template-page-mid-career .hero-btns {
		display: none !important;
	}
}
