/* BEGIN BLOG CSS -----------------------------------------------> */


.blog #subContent form > div > div:last-of-type
{
	 text-align: right;
}

.blog #subContent form > div > div
{
    flex-basis: 100%;
}

.blog #bannerText
{
	padding: 20px;
	background: #ddd;
	border-radius: 10px;
}

.blog #searchMessage
{
	padding-bottom: 8px;
	margin-bottom: 1.3em;
	border-bottom: 1px solid currentColor;
	background-size: 12px 1px;
}

.blogPosts div.title
{
	margin-bottom: 1em;
	margin-bottom: 20px;
	font-size: max(22px, 
	             min(28px, 22px + (28 - 22) * ((100vw - 767px) / (1350 - 767))
	));
	color: #242323;
	font-weight: 700;
}

.blogPosts div.title a:not(:hover):not(:focus)
{
	color: inherit;
}

.blogPosts img
{
	height: auto;
	max-width: 100%;
}

.blogPosts .abstract
{
	font-size: 20px;
	line-height: 30px;
}

.blogPosts .abstract .readMore 
{
	margin-left: 10px;
}

.blogPosts .abstract .readMore a::after 
{
	position: relative;
	left: 6px;
	top: -2px;
	content: '';
	display: inline-block;
	width: 23px;
	height: 8px;
	background: currentColor;
	mask-image: url(../i/icon-arrow-long.svgz);
	mask-repeat: no-repeat;
	mask-size: 23px 8px;
	mask-position: center;
}

.blogPosts .abstract p:last-child
{
	padding-bottom: 20px;
}

.blogPosts .socialshare
{
	overflow: hidden;
	margin-top: 0;
}

.blogPosts .socialshare a 
{
	float: left;
	margin-right: 14px;
}

.blogPosts .socialshare a svg 
{
	display: block;
	width: auto;
	height: 16px;
	fill: #012F6E;
}

.blogPosts .image
{
	margin-bottom: 20px;
}

.blogAuthors
{
	margin-bottom: 24px !important;
}

.blogAuthors .bioposition
{
	margin: 0 0 13px;
}

.blogAuthors .phone
{
	margin: 0 0 7px;
}

.blogAuthors .links 
{
	color: #DFE4ED;
}

.nextPost a,
.blog #historyLinks a
{
	display: inline-block;
	padding: 13px 24px 17px;
	font-weight: 700;
	color: #ffffff;
	background: #D3450D;
}

/* in listing, make image a max height */
.blogPosts > div > div:not(.postDetail) img
{
	display: block;
	width: 100%;
	height: auto;
}

.blogPosts .sp_pencil img
{
	display: inline !important;
}

/* in listing, make sure the read more shows inline with the intro */
.blogPosts > div > div:not(:only-child) .intro p:last-child
{
	display: inline;
}

.blogPosts > div > div
{
	clear: both;
	margin-bottom: 2.5em;
}

/* fields within each blog post */
.blogPosts > div > div > div + div
{
	margin-top: .5em;
}

.blogPosts .blogComments
{
	margin-bottom: 0;
}

.blogPosts .blogComments > div > div
{
	padding: 10px 0;
	border: 1px solid currentColor;
	border-width: 1px 0 0 0;
}

.blogPosts .blogComments > div > div > div
{
	margin: 0 10px;
}

.blogPosts .blogComments .comment
{
	margin-top: 10px;
}

#addComment
{
	border-top: 1px solid currentColor;
}

.blog #historyLinks a
{
	float: left;
}

.blog #historyLinks a:last-child
{
	float: right;
}

.blogtag
{
	line-height: 1.5;
	margin: 1em 0;
}

.blogFilters ul,
.blogFilters li
{
	list-style: none;
	margin: 0 0 .5em 0;
}

/*
#subContent .blogFilters:not(.bioBlogFilters) .results_list > li:nth-child(n+6)
{
	display: none;
}
*/

#mainContent #blogArchives .results_list
{
	column-count: 2;
}

@media (min-width: 480px)
{
	#mainContent #blogArchives .results_list
	{
		column-count: 3;
	}
}

#mainContent #blogArchives .results_list,
#mainContent #blogArchives .results_list > li
{
	display: block;
	list-style: none;
	margin: 0 0 15px 0;
}

#mainContent #blogArchives .results_list > li
{
	margin: 0;
	padding: 0;
}

.blogPosts .blogAuthors .title
{
	margin: 0;
}

.blogAuthors .photo
{
	float: left;
	margin-right: 1em;
}

.blogAuthors ul,
.blogAuthors li
{
	list-style: none;
	margin: 0 0 10px 0;
}

#searchMessage.blogAuthors li
{
	padding-bottom: 0;
	border-bottom: 0;
}

.blogAuthors .abstract
{
	margin: 5px 0;
}

.vlog .image
{
	position: relative;
}

.vlog .image a::before,
.vlog .image a::after
{
	content: '';
	display: block;
	position: absolute;
	top: 10px;
	left: 10px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 25px 0 25px 43.3px;
	border-color: transparent transparent transparent white;
}

.vlog .image a::before
{
	border-left-color: #808080;
	filter: blur(8px);
}

#blogLinkedIn
{
	margin: 20px 0;
}

#blogLinkedIn > a
{
	position: relative;
	line-height: normal;

	display: block;
	padding-left: 35px;
}

#blogLinkedIn > a svg
{
	position: absolute;
	top: 1px;
	left: 0;
}

#subContent
{
	position: relative;
	padding-bottom: 40px;
	background: #F4F4F4;
	border: none;
}

.search_form form > div > div > label
{
	padding: 10px 0 0 15px;
	font-size: 19px;
}

#emailSignupForm
{
	margin-top: 40px;
}

form > div > div,
form > div
{
	margin: 0;
}

#blogSearch 
{
	margin-bottom: 27px;
}

#blogSearch.search_form form > div > div > label,
#emailSignupForm h2,
#blogSocialLinks h2
{
	position: static;
	padding: 0;
	margin: 0 0 7px;
	text-transform: uppercase !important;
	font-weight: 700;
	color: #012F6E;
	font-family: 'archivo_narrow';
	font-size: 28px !important;
}

#blogSearch.search_form form > div > div.hasFocus > label
{
	padding: 1px 7px;
	font-size: 21px;
	line-height: 1.8;
}

input:not([type]), 
input[type=text], 
input[type=tel], 
input[type=email], 
input[type=password], 
textarea, 
select, 
.customSelect
{
	height: 55px;
	border: 1px solid #b7c4d6;
	background: #ffffff;
}

#emailSignupForm div > div button
{
	position: absolute;
	right: 14px;
	top: 12px;
	font-size: 0px;
	border: none;
	width: 30px;
	height: 31px;
	background: #012F6E;
	mask-image: url(../i/icon-arrow-long.svgz);
	mask-repeat: no-repeat;
	mask-size: 28px 8px;
	mask-position: center;
}


#blogSearch.search_form form > div > div:last-child 
{
	position: static;

}

#blogSearch.search_form form > div > div input[type=submit]
{
	position: absolute;
	right: 12px;
	top: 67px;
	font-size: 0px;
	border: none;
	width: 31px;
	height: 31px;
	background: #D3450D;
	mask-image: url(../i/icon-search.svgz);
	mask-repeat: no-repeat;
	mask-size: 23px;
	mask-position: center;
}


#banner
{
	position: relative;
	height: 70vw;
	max-height: 474px;
}

#bannerImage 
{
	position: absolute;
	top: 0;
	left: 0;
	width: 100vw;
	left: calc(50% - 50vw);
}

#bannerContent 
{
	position: relative;
	top: 0;
	left: 0;

	display: flex;
	align-items: center;

	width: 100%;
	max-width: 1320px;
	height: 100%;

	padding: 100px 0 0 0;
	margin: 0 auto;
	box-sizing: border-box;
	color: #D3450D;


}

body.blueTitle #bannerContent 
{
	color: #004F9D;
}

#bannerImage::after 
{
	background: #ffffff;
	opacity: .72;
	left: auto;
	right: calc(100% - 50vw);
	z-index: 1;
}

#bannerContent h1
{
	width: 50%;
	padding-right: 5%;
	box-sizing: border-box;
	text-transform: initial;
	font-weight: 500;
	font-size: max(24px, 
	             min(58px, 24px + (58 - 24) * ((100vw - 600px) / (1350 - 600))
	));
}

#subContent a:not(:hover):not(:focus)
{
	color: inherit;
}

#subContent li
{
	margin: 0 0 25px;
}

#subContent h2
{
	padding: 0;
	margin-bottom: 10px;
	text-transform: initial;
	font-size: max(18px, 
	             min(24px, 18px + (24 - 18) * ((100vw - 600px) / (1350 - 600))
	));
}

.expandableHeading
{
	margin: 25px 0;
	font-weight: 700;
}

.expandableHeading button
{
	padding: 0 40px 0 0 !important;
	color: #012F6E;
}

.expandableHeading button::after
{
	right: 0;
	top: 10px;
}

.dateline
{
	position: relative;
	color: #012F6E;
	font-weight: 500;
	font-family: 'archivo_narrow';
	font-size: 20px;
}


.dateline span + span::before 
{
	content: '|';
	margin: 0 6px;
}

.dateline::after 
{
	content: '';
	display: block;
	width: 96px;
	height: 1px;
	margin-top: 12px;
	background: #F26831;
}

#blogSocialLinks
{
	margin-top: 35px;
}

#blogSocialLinks ul,
#blogSocialLinks li 
{
	margin: 0;
	list-style: none;
}


#blogSocialLinks ul
{
	display: flex;
	gap: 20px;
}

#blogSocialLinks svg circle 
{
	fill: #012F6E;
}

#blogSocialLinks svg path 
{
	fill: #ffffff;
}

a.eventLink
{
	position: relative;
	display: block;
	width: 100%;
	max-width: 342px;
	height: 55px;
	padding: 16px 17px 12px 60px;
	margin-top: 30px;
	box-sizing: border-box;
	color: #ffffff !important;
	background: #D3450D;
	line-height: 1;
	font-size: 19px;
	font-weight: 700;
}

a.eventLink svg
{
	position: absolute;
	left: 17px;
	top: calc(50% - 14px);
}

a.eventLink svg path 
{
	fill: #ffffff;
}

/*.resourcesListFeatured > ul.results_list > li .image
{
	position: relative;
}*/

div.hasFocus label 
{
	background: #ffffff;
}

.blogAuthors .authorintro 
{
	margin-top: 20px;
}

@media (min-width: 768px)
{
	.blogAuthors li 
	{
		margin: 0 0 8px;
	}

	.blogAuthors .wrapper 
	{
		overflow: hidden;
		background: #F4F4F4;
	}

	.blogAuthors .image 
	{
		width: 331px;
		margin: 0 34px 0 0;
		float: left;
	}

	.blogAuthors .image img
	{
		display: block !important;
		width: 331px !important;
		height: 185px;
		max-height: unset !important;
	}

	.blogAuthors .content 
	{
		padding: 20px 20px 20px 0;
	}
}

@media (min-width: 920px)
{

	#content 
	{
		display: flex;
		margin-top: 0;
	}

	#subContent
	{
		float: none;
		flex: 0 1 342px;
		padding-left: 50px;
		padding-top: 60px;
		margin: 0;
		box-sizing: border-box;

	}

	#subContent::before 
	{
		left: 0;
	}

	#mainContent:not(:only-child)
	{
		float: none;
		flex: 1 1 839px;
		padding-right: 75px;
		padding-top: 65px;
		margin-top: 0;
		box-sizing: border-box;
	}
}

@media (min-width: 1350px)
{
	#mainNav > ul > li:not(.current) > a:not(:hover):not(:focus), 
	#mainNav > ul > li:not(.current) > a:not(:hover):not(:focus),
	body.solidHeader #mainNav > ul > li:nth-child(n+5) > a:not(:hover):not(:focus)
	{
		color: #ffffff !important;
	}
}

/* END BLOG CSS -------------------------------------------------> */