/* BEGIN MIXED-DETAIL CSS -----------------------------------------> */
/* Includes bio, area, office profile page CSS in effort to reduce duplicate code */

body.profilePage > div#body
{
	max-width: 1480px;
	margin: 0px auto;
}

body.profilePage #banner
{
	height: auto;
}

body.profilePage.itemDetailPage #banner
{
	height: 295px;
}

body.profilePage #bannerContent
{
	position: relative;
	left: auto;
	top: auto;
	color: inherit;
}

body.profilePage #bannerContent
{
	padding-top: 108px; /* it was requested bios do not sit behind header */
}

body.profilePage #bannerExtras:not(:empty)
{
	top: inherit;
	height: 66px;
}

#profilePhoto
{
	position: relative;
	margin-bottom: 20px;
}

#profilePhoto img
{
	position: relative;
	left: -105vw;
	display: block;
	width: 220vw;
	height: auto;
	transition: all 250ms ease;
}

#profileInfo h1
{
	margin-bottom: 0;
	font-size: 36px;
	font-weight: 700;
	color: #f26731;
	color: #D3450D;
	line-height: 1.1;
}

body.itemDetailPage h1#pageTitle
{
	color: #012f6e;
}

#profileInfo
{
	font-size: 21px;
}

#profileInfo a:not(:hover):not(:focus)
{
	color: #2d2e6c;
}

#bioContact,
#bioContact li,
#bioAccessories,
#bioAccessories li
{
	list-style: none;
	margin: 0;
	padding: 0;
}

#bioContact
{
	margin: 20px 0;
}

#area_recognitions
{
	margin-top: 55px;
}

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

#practiceSection,
#industrySection
{
	margin-bottom: 30px !important;
}

#practiceSection li,
#industrySection li
{
	margin-bottom: 4px;
	/*text-transform: uppercase;*/
}

#practiceSection li a,
#industrySection li a
{
	display: block;
	padding: 16px 8px 16px 10px;
	background: #f4f4f4;
	color: #012f6e;
	color: #f26831;
	color: #D3450D;
	color: #414141;
	font-family: 'archivo_narrow';
	font-size: 0.8rem;
	font-size: 0.95rem;
	font-size: 1.2rem;
	font-size: 1.1rem;
	font-weight: 700;
	font-weight: 400;
}

#practiceSection li a:hover,
#practiceSection li a:focus,
#industrySection li a:hover,
#industrySection li a:focus
{
    color: #9393b4;
}

#profile_experience_spot .expandableList .results_list > li:nth-child(n+2)
{
	display: none;
}

/* spreadsheet row #46
#repmatterSection ul,
#repmatterSection ul > li
{
	list-style: none;
	margin-left: 0;
}
*/

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

#profile_experience_spot li
{
	position: relative;
	margin: 0;
}

#profile_experience_spot .image
{
	margin-bottom: 10px;
	background: #cecece;
}

#profile_experience_spot img
{
	display: block;
	width: 100%;
	height: auto;
}

#profile_experience_spot .title
{
	font-size: calc(22px + (32 - 22) * ((100vw - 320px) / (1350 - 320)));
	line-height: 1.3;
}

#profile_experience_spot a:hover .title,
#profile_experience_spot a:focus .title
{
	/*color: #012f6e;*/
}

#profile_experience_spot a:hover img,
#profile_experience_spot a:focus img
{
	opacity: 0.8;
}

#profile_experience li,
#profile_experience.expandableList .results_list > li:nth-last-child(n+5) ~ li:nth-child(n+4)
{
	/*display: none;*/
}

body.profilePage #lowerContent
{
	position: relative;
	padding: 45px 0;

	background: #f4f4f4;
}

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

#profile_newsitems li
{
	display: block;
	margin-bottom: 8px;
	padding: 25px calc(28px + (40 - 28) * ((100vw - 320px) / (1100 - 320))) 40px;
	box-sizing: border-box;
	background: #ffffff;
}

#profile_newsitems a
{
	display: block;
	height: 100%;
}

#profile_newsitems .section
{
	margin-bottom: calc(30px + (50 - 30) * ((100vw - 320px) / (1100 - 320)));
}

#profile_newsitems .title
{
	color: #242323;
	color: #666666;
	font-size: calc(16px + (24 - 16) * ((100vw - 320px) / (1350 - 320)));
}

#profile_newsitems a .title
{
	color: #242323;
}

#profile_newsitems .title a:not(:hover):not(:focus)
{
	color: inherit;
}

#profile_newsitems a:hover .title,
#profile_newsitems a:focus .title
{
	color: #012f6e;
}

#profile_newsitems .expandableList .results_list > li:nth-child(n+3),
#profile_newsitems .expandableList .results_list > li:nth-last-child(n+5) ~ li:nth-child(n+4)
{
	display: none;
}

#newsSection #backToTop
{
	display: inline-block;
	position: absolute;
	left: 0;
	right: 0;
	margin: 0px auto;
	bottom: 50px;
	text-transform: uppercase;
	font-size: 19px;
	text-align: center;
}

#newsSection #backToTop svg
{
	fill: currentColor;
	width: auto;
	height: 18px;
	margin-right: 27px;
	transform: rotate(-90deg);
}

div.jumpSection
{
	margin: 0 0 35px;
}

/* smooth scroll jump link JS does not work for these randomly
 so we turn it off there, in the JS jumpLinks() and add the below
 to defeat the sticky header jump difference */
body.capabilities-item #overviewSection h2.expandableChild
{
	scroll-margin-top: 130px;
}

#repmatterSection ul
{
	margin-bottom: 0px;
}

body.contact-item #subNav
{
	z-index: 20;
}

.podcastList .title
{
	font-size: 1.1rem;
}

.podcastList .abstract
{
	font-size: 0.9rem;
}

.podcastList ul li
{
	margin-bottom: 20px;
}

.podcastList ul li .abstract p
{
	margin: 0px;
	padding: 0px;
}

.podcastList .podcastcode
{
	margin-top: 10px;
}

#bio_podcast .view_more,
#area_podcast .view_more
{
	text-align: right;
}

@media (min-width: 768px)
{
	#profilePhoto
	{
		margin-bottom: 0;
	}

	#profilePhoto::after
	{
		position: absolute;
		left: calc(50% - 50vw);
		bottom: 0;
		content: '';
		display: block;
		width: 50vw;
		height: 100%;
		background: rgba(255,255,255, .60);
	}

	#profilePhoto img
	{
		position: relative;
		left: -38vw;
		display: block;
		width: 160vw;
		height: auto;
	}

	#profileInfoWrapper
	{
		position: absolute;
		top: 108px;
		left: 0;
		display: flex;
		align-items: center;
		width: 50%;
		padding-right: 40px;
		height: calc(100% - 108px);
		box-sizing: border-box;
	}

	#profileInfo h1
	{
		font-size: calc(30px + (50 - 30) * ((100vw - 768px) / (1600 - 768)));
	}

	#profile_experience_spot ul
	{
		position: relative;
		z-index: 1;
		background: #2d2e6c; /* WCAG contrast */
	}

	#profile_experience_spot li
	{
		display: flex;
		align-items: center;
		min-height: 250px;
		padding: calc(42px + (60 - 42) * ((100vw - 768px) / (1600 - 768)));
		box-sizing: border-box;
	}

	#profile_experience_spot .image
	{
		margin: 0;
	}

	#profile_experience_spot .image::after
	{
		content: '';
		position: absolute;
		z-index: -1;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-image: linear-gradient(to right, rgba(0,0,0,0.35) 30%, transparent);
	}

	#profile_experience_spot .image img
	{
		position: absolute;
		top: 0;
		left: 0;
		z-index: -1;
		height: 100%;
		object-fit: cover;
	}

	#profile_experience_spot .content
	{
		box-sizing: border-box;
		color: #ffffff;
	}

	#profile_experience_spot .content p:last-child
	{
		margin-bottom: 0;
	}

	#profile_experience_spot .title
	{
		max-width: 530px;
	}

	#profile_experience_spot .title::after
	{
		display: block;
		content: '';
		width: 100%;
		max-width: 96px;
		height: 1px;
		margin: calc(18px + (26 - 18) * ((100vw - 320px) / (1600 - 320))) 0;
		background: #f26831;
	}

	#profile_experience_spot a:hover .title::after,
	#profile_experience_spot a:focus .title::after
	{

		background: #ffffff;
	}

	#profile_experience_spot .abstract
	{
		font-size: 18px;
		line-height: 26px;
	}
}

@media (min-width: 920px)
{
	body.profilePage #lowerContent
	{
		padding-left: calc(236px + (338 - 236) * ((100vw - 1100px) / (1600 - 1100)));
	}

	#newsSection #backToTop
	{
		display: inline-block;
		position: absolute;
		right: inherit;
		margin: 0px;
		font-size: 21px;
		text-align: left;
	}

	/* Required or else there isn't enough space for the page to scroll down and trigger the waypoint */
	#profile_newsitems
	{
		min-height: 600px;
	}
}

@media (min-width: 1100px)
{
	body.profilePage #bannerContent
	{
		padding-top: 0;
	}

	#profilePhoto::after
	{
		height: calc(100% - 108px);
	}

	#profile_experience_spot li
	{
		min-height: 330px;
	}

	#profile_newsitems ul
	{
		display: flex;
		flex-wrap: wrap;
	}

	#profile_newsitems li
	{
		width: calc(50% - 8px);
		margin: 0 4px 8px;
		padding: 40px calc(42px + (60 - 42) * ((100vw - 1100px) / (1600 - 1100))) 70px;
	}

	#profile_newsitems a
	{

	}
}

@media (min-width: 1200px)
{
	#practiceSection ul,
	#industrySection ul
	{
		display: flex;
		flex-wrap: wrap;
		margin: 0 -2px;
	}

	#practiceSection li,
	#industrySection li
	{
		width: calc(50% - 4px);
		margin: 0 2px 4px;
	}
}

@media (min-width: 1350px)
{
	#profilePhoto img
	{
	    left: -25vw;
	    width: 140vw;
	}

	#profile_experience_spot .title
	{
		font-size: 32px;
	}

	#profile_newsitems .title
	{
		font-size: 24px;
	}

	#practiceSection li a,
	#industrySection li a
	{
		padding: 16px 35px 16px 35px;
	}
}

@media (min-width: 1600px)
{

	#profilePhoto img
	{
	    position: relative;
	    left: calc(50% - 58vw);
	    display: block;
	    width: 120vw;
	    height: auto;
	}

	#profileInfo h1
	{
		font-size: 50px;
		line-height: 1;
	}

	#bioContact
	{
		margin: calc(20px + (35 - 20) * ((100vw - 1600px) / (1920 - 1600))) 0 calc(20px + (30 - 20) * ((100vw - 1600px) / (1920 - 1600)));
	}

	#profile_newsitems li
	{
	    padding: 40px 60px 70px;
	}

	#profile_newsitems a
	{

	}
}

@media (min-width: 1800px)
{
	#profilePhoto img
	{
	    position: relative;
	    left: calc(50% - 50vw);
	    display: block;
	    width: 100vw;
	    height: auto;
	}
}

@media (min-width: 1920px)
{
	#bioContact
	{
		margin: 35px 0 30px;
	}
}

@media (max-width: 767px)
{
	body.profilePage:not(.itemDetailPage) #bannerExtras
	{
		display: inline-flex;
		position: static;
		width: auto;
		margin-top: 20px;
	}

	body.contact-item #subNav
	{
		position: relative;
		bottom: inherit;
		padding: 0px;
	}

	body.contact-item #subNav #bannerExtras:not(:empty)
	{
		height: 66px;
	}
}


/* PRACTICE/INDUSTRY */

/* xref Bios */

.xrefBioList > ul.results_list,
.xrefBioList > ul.results_list > li
{
	position: relative;
	list-style: none;
	margin: 0;
	padding: 0;
}

.xrefBioList > ul.results_list > li
{
	width: 100%;
	margin: 0 0 10px 0px;
	background: #f4f4f4;
}

.xrefBioList > ul.results_list > li .nametitle
{
	padding: 0px 16px 10px 16px;
}

.xrefBioList > ul.results_list > li .photo
{
	position: relative;
	width: 100%;
	height: auto;
	min-height: 220px;
	margin-bottom: 10px;
	overflow: hidden;
	background: #fff;
}

.xrefBioList > ul.results_list > li .photo a:not(.sp_class)
{
	display: block;
	position: relative;
	width: 100%;
	height: auto;
	min-height: 220px;
}

.xrefBioList > ul.results_list > li .photo a:not(.sp_class) img
{
	display: block;
	position: absolute;
    margin: auto;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
	opacity: 1;
	/*transition: all 0.6s ease-out;*/
}

/*
.xrefBioList > ul.results_list > li:hover .photo a:not(.sp_class) img,
.xrefBioList > ul.results_list > li:focus-within .photo a:not(.sp_class) img,
.xrefBioList > ul.results_list > li .photo a:focus:not(.sp_class) img
{
	transform: scale(1.04);
	opacity: 0.8;
}
*/

.xrefBioList > ul.results_list > li .title,
.xrefBioList > ul.results_list > li .title a
{
	font-size: 0.9rem;
	font-weight: 700;
	line-height: 1.1;
	text-transform: uppercase;
}

.xrefBioList > ul.results_list > li .title a:hover,
.xrefBioList > ul.results_list > li .title a:focus
{
	color: #012f6e;
}

.xrefBioList > ul.results_list > li .position
{
	margin: 6px 0 6px 0;
	font-size: 0.9rem;
	font-weight: 500;
	line-height: 1.1;
}

.xrefBioList > ul.results_list > li .contact
{
	font-size: 0.9rem;
}

.xrefBioList > ul.results_list > li .contact a
{
	color: #2d2e6c;
}

.xrefBioList > ul.results_list > li .contact a:hover,
.xrefBioList > ul.results_list > li .contact a:focus
{
	color: #f26831;
}

@media (min-width: 768px)
{
	.xrefBioList > ul.results_list
	{
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
	}

	.xrefBioList > ul.results_list > li
	{
		width: calc(50% - 3px);
		margin: 0 0 10px 5px;
	}

	.xrefBioList > ul.results_list > li:nth-child(odd)
	{
		margin: 0 0 10px 0;
	}

	.xrefBioList > ul.results_list > li .nametitle
	{
		padding: 0px 36px 20px 36px;
	}
}


/* OFFICES */

#officeAddress
{
	margin: 10px 0 20px 0;
}

#officeAddressPhone
{
	margin: 10px 0 10px 0;
}

#buttonGroup
{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	position: relative;
}

#buttonGroup button.toggleGroupButton
{
	width: calc(50% - 4px);
	margin: 0px 0px 7px 7px;
	padding: 12px 20px;
	background: #f4f4f4;
	border: 0px;
	color: #f26831;
	color: #C5410D; /* WCAG contrast */
	color: #414141;
	font-family: 'archivo_narrow';
	font-size: 0.8rem;
	font-size: 1.1rem;
	font-weight: 400;
	/*text-transform: uppercase;*/
	text-align: left;
	cursor: pointer;
}

#buttonGroup button.toggleGroupButton:nth-of-type(odd)
{
	margin: 0px 0px 7px 0px;
}

#buttonGroup button.toggleGroupButton.current,
#buttonGroup button.toggleGroupButton:hover,
#buttonGroup button.toggleGroupButton:focus
{
	/*background: #e1e1e1;*/
	color: #f26831;
	color: #C5410D; /* WCAG contrast */
	 color: #9393b4;
}

.toggleGroupText
{
	display: none;
}

/* bioList on office profile */

.bioList
{
	margin: 30px 0 20px 0;
}

.bioList > div.results-criteria-wrapper
{
	display: flex;
	justify-content: space-between;
	margin: 0 0 30px 0;
}

.bioList > div.results-criteria-wrapper > div
{
	padding: 0 20px 0 0;
}

.bioList > div.results-criteria-wrapper ul.results_criteria,
.bioList > div.results-criteria-wrapper ul.results_criteria > li
{
	display: inline;
	position: relative;
	list-style: none;
	margin: 0;
	padding: 0;
}

.bioList > div.results-criteria-wrapper ul.results_criteria > li:after
{
	content: ',\00a0';
}

.bioList > div.results-criteria-wrapper ul.results_criteria > li:last-child:after
{
	display: none;
}

.bioList > div.results-criteria-wrapper button
{
	 align-self: flex-start;
}

.bioList > ul.results_list,
.bioList > ul.results_list > li
{
	position: relative;
	list-style: none;
	margin: 0;
	padding: 0;
}

.bioList > ul.results_list > li
{
	width: 100%;
	margin: 0 0 10px 0px;
	background: #f4f4f4;
}

.bioList > ul.results_list > li .nametitle
{
	padding: 20px 16px 20px 16px;
}

.bioList > ul.results_list > li .photo
{
	position: relative;
	width: 100%;
	height: auto;
	min-height: 220px;
	overflow: hidden;
	background: #fff;
}

.bioList > ul.results_list > li .photo a:not(.sp_class)
{
	display: block;
	position: relative;
	width: 100%;
	height: auto;
	min-height: 220px;
}

.bioList > ul.results_list > li .photo a:not(.sp_class) img
{
	display: block;
	position: absolute;
    margin: auto;
    /*top: 0;*/
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
	opacity: 1;
	transition: all 0.3s ease-out;
}

.bioList > ul.results_list > li:hover .photo a:not(.sp_class) img,
.bioList > ul.results_list > li:focus-within .photo a:not(.sp_class) img,
.bioList > ul.results_list > li .photo a:focus:not(.sp_class) img
{
	transform: scale(1.05);
	/*opacity: 0.8;*/
}

.bioList > ul.results_list > li .title,
.bioList > ul.results_list > li .title a
{
	color: #000;
	font-size: 0.9rem;
	font-weight: 700;
	line-height: 1.1;
	text-transform: uppercase;
}

body:is(.cababilities, .industries, .experience, .resources) .bioList > ul.results_list > li .title,
body:is(.capabilities, .industries, .experience, .resources) .bioList > ul.results_list > li .title a
{
	color: #c54100;
}

body.altColors .bioList > ul.results_list > li .title a
{
	color: #012f6e;
}

body.altColors .bioList > ul.results_list > li .title a:is(:hover, :focus)
{
	text-decoration: underline;
	text-decoration-thickness: 1px;
}

.bioList > ul.results_list > li .title a:hover,
.bioList > ul.results_list > li .title a:focus
{
	color: #f26831;
}

.bioList > ul.results_list > li .position
{
	margin: 6px 0 0px 0;
	font-size: 0.9rem;
	font-weight: 500;
	line-height: 1.1;
}

.bioList > ul.results_list > li .contact
{
	padding: 0px 16px 10px 16px;
	font-size: 0.9rem;
}

.bioList > ul.results_list > li .contact > div
{
	display: inline-block;
}

.bioList > ul.results_list > li .contact > div:before
{
	display: inline-block;
	content: '|';
	margin: 0 6px 0 6px;
}

.bioList > ul.results_list > li .contact > div:first-child:before
{
	display: none;
}

.bioList > ul.results_list > li .contact a
{
	color: #2d2e6c;
}

.bioList > ul.results_list > li .contact a:hover,
.bioList > ul.results_list > li .contact a:focus
{
	color: #f26831;
}

@media (min-width: 480px)
{
	.bioList > ul.results_list
	{
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
	}

	.bioList > ul.results_list > li
	{
		width: calc(50% - 3px);
		margin: 0 0 10px 5px;
	}

	.bioList > ul.results_list > li:nth-child(odd)
	{
		margin: 0 0 10px 0;
	}

	.bioList > ul.results_list > li .nametitle
	{
		padding: 20px 36px 10px 36px;
	}

	.bioList > ul.results_list > li .contact
	{
		padding: 0px 36px 20px 36px;
	}
}

@media (min-width: 480px)
{
	.bioList > ul.results_list
	{
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
	}

	.bioList > ul.results_list > li
	{
		width: calc(50% - 3px);
		margin: 0 0 10px 5px;
	}

	.bioList > ul.results_list > li:nth-child(odd)
	{
		margin: 0 0 10px 0;
	}

	.bioList > ul.results_list > li .nametitle
	{
		padding: 20px 36px 10px 36px;
	}

	.bioList > ul.results_list > li .contact
	{
		padding: 0px 36px 20px 36px;
	}
}

@media (min-width: 1025px)
{
	.bioList > ul.results_list > li .photo
	{
		min-height: 180px;
	}

	.bioList > ul.results_list > li .photo a:not(.sp_class)
	{
		min-height: 180px;
	}

	.bioList > ul.results_list > li,
	.bioList > ul.results_list > li:nth-child(odd)
	{
		width: calc(33.33% - 4px);
		margin: 0 0 10px 5px;
	}

	.bioList > ul.results_list > li:nth-child(3n+1)
	{
		margin: 0 0 10px 0;
	}
}



/* MATTER, NEWS, EVENT, PUBS TYPE PROFILE PAGES */

div.blog,
div.publication,
span.publication
{
	font-style: italic;
}

#itemContent
{
	margin: 20px 0 0 0;
}

.photoRight
{
	float: right;
	margin-left: 14px;
}

#itemShare
{
	display: inline-block;
	margin-left: 14px;
}

.rsvpButton
{
	margin-bottom: 40px;
}


/* attachments */

.attachment_item > div
{
	margin: 0 0 6px 0;
}

#content #biosPopupSection
{
	display: none;
}

#content #item_bio h2,
#content #item_area h2
{
	display: none;
}

/* END MIXED-DETAIL CSS -------------------------------------------> */
