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

#breadCrumb
{
	opacity: 0; /* temp or until we have further info to go on here */
}

@media (min-width: 1025px)
{
	.singlePost .byline *
	{
		display: none;
	}
	
	.singlePost .byline .bio,
	.singlePost .byline .bio *
	{
		display: inline-block;
	}
}

.blog .search_form div
{
	float: none;
}

.blog #subContent .search_form div
{
	margin: 0;
}

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

.blog #subContent #emailSignupForm button
{
	float: right;
}

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

.blog #subContent .search_form div input[type=text],
.blog #subContent .search_form div input[type=email]
{
	background: none;
}

.blog #subContent form input[type=submit], 
.blog #subContent form button[type=submit]
{
	width: auto;
}

#subContent div.search_form > form button[type=submit]:hover,
#subContent div.search_form > form button[type=submit]:focus
{
	border: 2px solid #F09720;
	color: #ffffff;
	animation: buttonSlide 300ms ease-in-out;
}

#subContent div.search_form > form button[type=submit]:before 
{
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    bottom: 0;
    content: '';
    display: block;
    transform: scaleX(0);
    transition: transform 300ms ease-in-out;
    transform-origin: 0 0;
    background: #F09720;
}

#subContent .search_form > form button[type=submit]:hover:before,
#subContent .search_form > form button[type=submit]:focus:before
{
	transform: scaleX(1);
}

#subContent .search_form form > div > div.hasFocus > label
{
	top: -2px;
	background: #f8f9fa;
}

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

#emailSignupForm
{
	margin-top: 30px;
}

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

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

.blogPosts div.title
{
	margin-bottom: 1em;
	font-size: 1.3em;
}

.blogPosts.singlePost div.title
{
	color: #3F67B1;
}

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

.blogPosts .socialshare
{
	padding: .5em 0;
	border-bottom: 1px solid rgba(112,112,112,0.48);
	text-align: right;
}

.blogPosts .image:not(:empty)
{
	float: left;
	margin-right: 1em;
}

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

.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
{
	margin: 1em 0;
	line-height: 1.5;
}

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

#subContent .blogFilters .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
{
	list-style: none;
	display: block;
	margin: 0 0 15px 0;
}

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

.blogAuthors .title
{
	margin: 0 0 .3em 0;
	font-size: 1.3em;
}

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

.blogAuthors .photo
{
	flex-shrink: 0;
	position: relative;
	width: 160px;
	height: 160px;
}

.blogAuthors .photo img
{
	display: block;
	width: 100% !important;
	height: 100%;
	border-radius: 160px;
	object-fit: cover;
	object-position: top;
}

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

.blogAuthors li
{
	overflow: hidden;
	padding-bottom: 10px;
	border-bottom: 1px solid currentColor;
}

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

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

ul#blogSocialLinks,
ul#blogSocialLinks > li
{
	list-style: none;
	position: relative;
	margin: 0;
	padding: 0;
}

ul#blogSocialLinks
{
	margin: 28px 0px;
}

ul#blogSocialLinks > li
{
	margin: 4px 0 4px 0;
	padding: 0;
}

ul#blogSocialLinks > li a svg
{
	width: 25px;
}

ul#blogSocialLinks > li a svg path
{
	fill: #3F67B1;
}

ul#blogSocialLinks > li a:hover svg path,
ul#blogSocialLinks > li a:focus svg path
{
	fill: #F09720;
}

#itemDate
{
	color: #F09720;
	font-size: 1.2rem;
}

.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
{
	display: block;
	position: relative;
	padding-left: 35px;
	line-height: normal;
}

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

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