/* BEGIN DEFAULT CSS --------------------------------------------> */

html
{
	/* make sure the browser doesn't go smaller than 320, and throws a scrollbar */
	max-width: 320px;

	/* prevent vertical scrollbar jump */
	overflow-y: scroll;

	/* horizontal scroll for the ^ 320px max */
	overflow-x: visible;

	color: #1C1C1C;
	font-family: 'lato', Arial, sans-serif;
	line-height: 1.6;

	/* adjust these on other elements */
	--min-font-size: 16;
	--max-font-size: 20;

	/* you probably won't need to adjust these on other elements, but you can */
	--fluid-start: 767;
	--fluid-end: 1920;
}

html, h1, h2, h3, h4, h5, h6
{
	/* fluid css - https://codepen.io/lowbatteries/full/qBEyXEP */
	font-size: calc(var(--max-font-size) * 1px); /* IE11 */
	font-size: max(
		var(--min-font-size) * 1px, min(
			var(--max-font-size) * 1px,
			var(--min-font-size) * 1px + (var(--max-font-size) - var(--min-font-size)) * ((100vw - var(--fluid-start) * 1px) / (var(--fluid-end) - var(--fluid-start)))
		));
}

html:not([data-whatintent="keyboard"]) *:focus
{
	outline: 0;
}

/* above 321px no need for horizontal scroll */
@media (min-width: 321px)
{
	html
	{
		max-width: unset;

		/* need to hide bottom scrollbar if using the calc(50vw - 50%) method */
		/*overflow-x: hidden;*/
		overflow-x: clip;
	}
}

body
{
	position: relative;
	min-width: 320px;

	/* in mobile or tablet we do not want anything outside the body bounds scrollable */
	/*overflow-x: hidden;*/
	overflow-x: clip;

	margin: 0 auto;
	padding: 90px 16px 0 16px;
	background: #fff;
	box-sizing: border-box;
}

html[class*='translated'] #header 
{
	margin-top: 40px;
}

@media (min-width: 920px)
{
	body
	{
		/* increased side padding */
		padding: 0 44px 0 44px;
	}
}

@media (min-width: 1025px)
{
	body
	{
		 /* was hidden, now we want the default */
		 overflow-x: unset;
	}
}

@media (min-width: 1350px)
{
	body
	{
		/* further increased side padding */
		padding: 0 80px 0 80px;
	}
}

p
{
	margin: 0.5em 0 1.25em 0;
}

/* normalize cell padding in tables - https://codepen.io/lowbatteries/pen/vRPBar */
td p:first-child
{
	margin-top: 0;
	padding-top: 0;
}

td p:last-child
{
	margin-bottom: 0;
	padding-bottom: 0;
}


b, strong
{
	/* relative, works better if you have a light base font */
	font-weight: bolder;
}

b b,
strong strong,
strong b,
b strong
{
	/* bad HTML was making multiple levels of bold */
	font-weight: inherit;
}

/* no blockquote, just padding - make it equal */
p[style*='padding-left: 30px'],
td p[style*='padding-left: 30px']
{
	padding-right: 30px
}

p[style*='padding-left: 60px'],
td p[style*='padding-left: 60px']
{
	padding-right: 60px
}

p[style*='padding-left: 90px'],
td p[style*='padding-left: 90px']
{
	padding-right: 90px
}

sup, sub
{
	line-height: 0;
}

a
{
	color: #3F67B1;
	text-decoration: none;
}

a:hover,
a:focus
{
	color: #F09720;
}

/* search results highlight */
mark
{
	background: #3F67B1;
	color: white;
}

/* needed for IE11 */
main, nav, footer { display: block }

/* make tel: links look like normal text */
a[href^="tel:"]
{
    color: inherit !important;
    text-decoration: inherit !important;
}

h1, h2, h3, h4, h5, h6
{
	margin: 0;
	padding: 0;
	color: #000000;

	/* relative, works better if you have a light base font */
	font-weight: bolder;

	line-height: normal;
}

h1
{
	padding: 5px 0 15px 0;
	color: #000;
	font-weight: 700;
	--min-font-size: 36;
	--max-font-size: 44;
}

h2
{
	padding: 12px 0 8px 0;
	font-weight: 700;
	--min-font-size: 26;
	--max-font-size: 34;
	text-transform: uppercase;
}

#subContent h2
{
	padding: 12px 0 4px 0;
	--min-font-size: 17;
	--max-font-size: 23;
}

.results-criteria-wrapper h2
{
	font-weight: bold;
	font-size: 1.1em;
}

h2.highlightText
{
	padding: 12px 0 28px 0;
	color: #3F67B1;
	font-weight: 400;
	line-height: 1.3;
	text-transform: none;
}

h3
{
	padding: 12px 0 4px 0;
	--min-font-size: 21.5;
	--max-font-size: 29.5;
}

h4
{
	padding: 12px 0 4px 0;
	color: #000;
	font-size: 21.5px;
	font-weight: inherit;
	--min-font-size: 21.5;
	--max-font-size: 29.5;
}

h5
{
	padding: 12px 0 4px 0;
	text-transform: uppercase;
	--min-font-size: 18;
	--max-font-size: 27;
}

/* Reserved for Print Pilot */
h6
{
	font-weight: bolder;
	--min-font-size: 14;
	--max-font-size: 22;
}

ul, ol
{
	margin: 0 0 1em 0;
	padding: 0;
}

ol
{
	padding-left: 1em;
}

li
{
	margin: 1em 0em 1em 1.5em;
	padding: 0;
}

li ~ li
{
	margin-top: 1em;
}

/* bullet graphic
ul li
{
	list-style: none url('../i/bullet.png'); /* data-uri *\/
}
*/

ol ol,
ul ul
{
	margin: .5em 0 0 0;
	padding: 0;
}

/* invalid directly-nested lists need the left margin from 'li' above */
ol > ol,
ul > ul
{
    margin-left: 1.5em;
}

/* wysiwyg sometimes puts text in lists inside paragraphs, making uneven spacing */
li > p
{
	margin: 0;
	padding: 0;
}

img
{
	border: 0;
}

p.smsdisclaimer 
{
	margin-bottom: 0;
}

/* make sure WYSIWYG images don't overflow content */
:not(td) > p img,
:not(td) > h1 img,
:not(td) > h2 img,
:not(td) > h3 img,
:not(td) > h4 img,
:not(td) > h5 img,
:not(td) > h6 img
{
	max-width: 100%;
	height: auto;
}

#content > * > :first-child,
#content > * > :first-child > :first-child
{
	margin-top: 0;
}

#content a svg path
{
	fill: #3F67B1;
}

#content a:hover svg path,
#content a:focus svg path
{
	fill: inherit;
}

@media (max-width: 767px)
{
	/* make wys tables take up full width on smaller screens */
	#mainContent table[style*=width]
	{
		width: 100% !important;
		height: auto !important;
	}
}

@media (max-width: 500px)
{
	/* make wys images take up full width on smaller screens */
	p > img,
	p > a:not(sp_pencil) > img
	{
		float: none !important;
		width: 100% !important;
		height: auto !important;
		margin: 10px 0 18px 0 !important;
	}
}


/* ---- START FLEXIBLE BACKGROUNDS ---

	items that need a background stripe - make sure the item itself has:

	- position:relative
	- a background color set
	- no uncleared floats (needs to stretch to its contents height
	- can't use overflow: hidden
*/

#mainNav > ul + ul::before,
#aboveContent::before,
#belowContent::before,
#subContent::before,
#footerTop::before,
#footerDisclaimer::before,
.bioContactXREF::before,
#sideSubscribe::before
{
	content: '';
	position: absolute;
	z-index: -1;
	top: 0;
	bottom: 0;

	/*
		we need to be left offset by the width of the left margin, which is half the
		difference between page width and viewport width

			long version, before simplifying: -(100vw - 100%)/2
	*/
	left: calc(50% - 50vw);

	width: 100vw;
	background: inherit;
}

#mainNav > ul + ul::before
{
	opacity: 0.47;
	background-image: linear-gradient(69.57deg, rgba(90, 98, 136, 0.89) 0%, rgba(88, 95, 132, 0.922) 18.4%, #555c80 35.3%, #2d3144 100%);
}

body.scrolled #mainNav > ul + ul::before
{
	opacity: 0.13;
	/*background-image: linear-gradient(1.24deg, rgba(245, 245, 245, 0.89) 0%, rgba(123, 123, 123, 0.89) 100%);*/
	background-image: linear-gradient(1.24deg, rgba(245, 245, 245, 0.89) 0%, rgba(123, 123, 123, 0.89) 70%);
}

.bioContactXREF::before,
#sideSubscribe::before
{
	left: 0px;
}


/* Smooth Resizing of Elements -----------------------------------> */

#logo svg,
#banner,
.letterLinks > *,
.bioList > ul > li,
#footerSocial
{
	transition-property: top, right, bottom, left,
		width, height,
		max-width, max-height,
		min-width, min-height,
		padding, margin;
	transition-duration: 500ms;
	transition-timing-function: ease;
}


/* Object Support ------------------------------------------------> */

.errors,
.mandatory
{
	color: #c33;
}

.errors a
{
	color: inherit;
	text-decoration: underline;
}

table.results_list
{
	border-collapse: collapse;
	width: 100%;
}

table.results_list th
{
	text-align: left;
}

table.results_list td:not(:last-child)
{
	padding-right: 10px;
}

@media (max-width: 767px)
{
	table.results_list,
	table.results_list td,
	table.results_list tr
	{
		display: block;
	}

	table.results_list th
	{
		display: none;
	}
}

#captcha_wrapper
{
	grid-column-start: 1;
	clear: both;
	float: none;
	height: auto;
}

#captcha_wrapper img
{
	display: inline-block;
	margin: 2px 10px 0 0;
}

#captcha_wrapper button.reloadCode
{
	display: inline-block;
	position: relative;
	margin: 12px 0 0 0;
	padding: 0.25em;
	width: 2.25em;
	height: 2.25em;
	background: transparent;
	box-sizing: border-box;
	border: 0;
	font-size: 12px;
	vertical-align: top;
	-webkit-appearance: none;
}

.reloadCode.loading
{
	animation: reloadRotate 600ms linear 10;
}

@keyframes reloadRotate
{
	100%
	{
    	transform: rotate(360deg);
	}
}

.reloadCode:before,
.reloadCode:after
{
	content: "";
	display: block;
}

.reloadCode:before
{
	width: 1.5em;
	height: 1.5em;
	border: 0.125em solid currentColor;
	border-top-color: transparent;
	border-radius: 50%;
	transform: rotate(45deg);
}

.reloadCode:after
{
	position: absolute;
	top: 0;
	left: 50%;
	width: 0;
	height: 0;
	border-width: 0.3125em 0 0.3125em 0.5em;
	border-style: solid;
	border-color: transparent transparent transparent currentColor;
}

.itemList ul,
.itemList ul li
{
	list-style: none;
	margin-left: 0;
}

.itemList > ul li
{
	margin: 0em 0em .8em 0em;
}

#resultPageLinks
{
	margin: 1em 0;
}

#resultPageLinks a,
#resultPageLinks span
{
	margin-left: 7px;
	padding: 0 3px 2px;
}

#resultPageLinks span
{
	border-bottom: 2px solid #333333;
}

/* buttons to look like links */
.expandButton button,
.collapseButton button
{
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	border: none;
	color: inherit;
	font: inherit;
	text-transform: inherit;
	text-align: inherit;
	cursor: pointer;
}

.expandButton button,
.collapseButton button
{
	color: #3F67B1;
	text-decoration: none;
	cursor: pointer;
}

.expandButton:hover,
.expandButton:focus,
.collapseButton:hover,
.collapseButton:focus
{
	color: #888888;
}

.expandButton.expanded
{
	display: none;
}

.expandableContent
{
	display: none;
	overflow: hidden;
}

.extraItems
{
	 display: none;

	 /* prevent slideToggle jump */
	 overflow: hidden;
}



/* Keyboard Content Jumpers  ---------------------------------------> */

/*
	how these content jumps should work on desktop:

	1. Initially completely hidden (transparent, in the second block)
	2. On focus, they are made fully visible and clickable
*/

.contentJump
{
	display: block;
	position: absolute;
	z-index: 999;
	top: 5px;
	right: 50%;

	/* padding and background needed for keyboard-focus */
	padding: 5px 15px;

	background: white;
}

/* make them transparent unless keyboard focused */
.contentJump:not(:focus),
.contentJump:not(:focus)::selection
{
	z-index: -1;
	color: transparent !important;
	background: transparent !important;
	pointer-events: none;
}


/* Header --------------------------------------------------------> */

#header
{
	position: fixed;
	z-index: 2000;
	top: 0;
	left: 0;
	width: 100%;
	height: 90px;
	padding: 0 16px 0 16px;
	box-sizing: border-box;
}

body.scrolled #header
{
	height: 90px;
	background: #ffffff;
	box-shadow: 3px 3px 5px rgba(0,0,0,0.5);
}

#logo
{
	/* inline-block to prevent logo from interfering with nav */
	display: inline-block;

	position: relative;
	z-index: 10000;
	max-height: 90px;
	margin: 0px 0 0 0;
}

body.scrolled #logo
{
	max-height: 90px;
	margin: 0px 0 0 0;
}

#logo svg
{
	display: block;
	position: relative;
	width: auto;
	max-width: calc(100% - 40px);
	height: 90px;
	transition: fill 0.5s ease-out, height 0.15s ease-out;
}

body.scrolled #logo svg
{
	height: 90px;
}

body.mobileActive #logo svg #text *
{
	fill: #FFFFFF;
}

body.mobileActive #logo svg #flameMiddle
{
	fill: #444;
}

.google_translate_trigger
{
	cursor: pointer;
}

#google_translate_element
{
	position: absolute;
	min-height: 0;
	top: 0;
	left: 0;
	width: 111px;
	height: 47px;;
	min-width: 100%;
	min-height: 100%;
	/* width: 0;
	height: 0;
	top: 20px;
	margin: 0 !important;
	left: -80px !important;
	overflow: hidden; */
	font-size: 0px;
	opacity: 0;
	z-index: 10;
}

#google_translate_element select 
{
	margin: 0;
	min-height: 0;
	color: inherit;
	background: none;
	opacity: 0;
	width: 111px;
	height: 47px;;
	min-width: 100%;
	min-height: 100%;
}

#google_translate_trigger
{
	cursor: pointer;
}

/* iframe.skiptranslate
{
	top: 40px !important;
} */


@media (min-width: 920px)
{
	#header
	{
		padding: 0 44px 0 44px;
	}

	#logo
	{
		max-height: 115px;
		margin: 6px 0 0 0;
	}

	body.scrolled #logo
	{
		max-height: 90px;
		margin: 0px 0 0 0;
	}

	#logo svg
	{

		height: 115px;
	}

	body.scrolled #logo svg
	{
		height: 90px;
	}
}

@media (min-width: 1350px)
{
	#header
	{
		height: 225px;
		padding: 0 80px 0 80px;
	}

	body.scrolled #header
	{
		height: 115px;
		background: rgba(255,255,255,0.89);
	}

	#logo
	{
		max-height: 127px;
		margin: 69px 0 0 0;
	}

	body.scrolled #logo
	{
		margin: 6px 0 0 0;
		max-height: 91px;
	}

	#logo svg
	{
		width: auto;
		max-width: unset;
		height: 127px;
	}

	body.scrolled #logo svg
	{
		height: 91px;
	}
}


/* Banner --------------------------------------------------------> */

#banner
{
	position: relative;
	z-index: 40;
	width: calc(100% + 32px);
	height: 243px;
	margin-left: -16px;
	background: #000; /* WCAG Contrast */
}

#bannerImage
{
	position: relative;
	left: calc(50% - 50vw);
	width: 100vw;
	height: auto;
}

#bannerImage::after
{
	content: '';
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	width: 100%;
	height: 243px;
	/*
	background-image: linear-gradient(5deg,  #5a6288 2%, transparent 50%);
	opacity: 0.64;
	*/
	background-image: linear-gradient(10deg,  #5a6288 30%, transparent 60%);
	opacity: 0.64;
}

#bannerImage > picture > img
{
	display: block;
	position: absolute;
	z-index: 1;
	width: 100%;
	height: 243px;
	object-fit: cover;
}

#bannerImage > video
{
	display: block;
	width: 100%;
	height: 243px;
	object-fit: cover;
}

#bannerContent
{
	position: absolute;
	z-index: 2;
	bottom: 0;
	left: 16px;
	right: 16px;
	bottom: 20px;
	width: calc(100% - 32px);
	max-width: 1712px;
	margin: 0px auto;
	color: #fff;
	font-size: 16px;
}

#bannerContent h1#pageTitle
{
	color: #ffffff;
	text-transform: uppercase;
	--min-font-size: 26;
	--max-font-size: 34;
}

#bannerContent h1#pageTitle > span
{
	color: #F09720;
}

#bannerAccessories
{
	display: flex;
	gap: 16px;
}

#bannerAccessories a#pdfLink,
#bannerAccessories a.socialshare_button
{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 54px;
	height: 54px;
	border: 2px solid #F09720;
	box-sizing: border-box;
	border-radius: 54px;
	text-align: center;
}

#bannerAccessories svg
{
	fill: #ffffff;
}

#bannerAccessories a#pdfLink:hover,
#bannerAccessories a#pdfLink:focus,
#bannerAccessories a.socialshare_button:hover,
#bannerAccessories a.socialshare_button:focus
{
	background: #F09720;
}

#breadCrumb,
#breadCrumb li
{
	position: relative;
	list-style-type: none;
	margin: 0;
	padding: 0;
	font-size: 0.8rem;
}

#breadCrumb
{
	display: flex;
	justify-content: flex-end;
	margin-left: auto;
	margin-right: -12px;
	color: #ffffff;
}

#tabCrumbs
{
	display: none;
	justify-content: space-between;
	align-items: center;
	margin-top: 26px;
	padding-top: 16px;
	border-top: 1px solid rgba(180, 180, 180, 0.48);
}

#breadCrumb li
{
	display: block;
	float: left;
}

#breadCrumb li a,
#breadCrumb li span:not(.highlight)
{
	display: inline-block;
	padding-left: 12px;
	padding-right: 12px;
}

#breadCrumb li a
{
	color: #ffffff;
}

#breadCrumb li a:hover,
#breadCrumb li a:focus
{
	color: #F09720;
}

@media (min-width: 768px)
{
	#titleWrapper
	{
		display: flex;
		justify-content: space-between;
		gap: 20px;
	}

	#bannerContent h1#pageTitle
	{
		--min-font-size: 36;
		--max-font-size: 44;
	}
}

@media (min-width: 920px)
{
	#banner
	{
		width: calc(100% + 88px);
		margin-left: -44px;
	}

	#bannerContent
	{
		left: 44px;
		right: 44px;
		width: calc(100% - 88px);
	}
}

@media (min-width: 1025px)
{
	#tabCrumbs
	{
		display: flex;
	}

	#banner,
	#bannerImage::after,
	#bannerImage > picture > img
	{
		height: 343px;
	}
	
}

@media (min-width: 1350px)
{
	#banner
	{
		width: calc(100% + 160px);
		height: auto;
		margin-left: -80px;
	}

	#bannerImage > picture > img
	{
		position: relative;
		width: 100%;
		height: auto;
	}

	#bannerImage::after
	{
		height: 100%;
	}

	#bannerContent
	{
		left: 80px;
		right: 80px;
		width: calc(100% - 160px);
	}

	#bannerImage > video
	{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
}


/* Popup search --------------------------------------------------------> */

#searchJump
{
	display: block;
	position: absolute;
	z-index: 10000;
	top: 53px;
	top: 32px;
	right: 77px;
	line-height: 1;
	cursor: pointer;
}

#searchJump svg
{
	display: block;
	width: 100%;
	height: auto;
	width: 26px;
	fill: #3F425E;
}

body.scrolled #searchJump svg
{
	fill: #3F425E;
}

body.mobileActive #searchJump svg
{
	fill: #FFF;
}

#searchJump:hover svg,
#searchJump:focus svg
{
	opacity: 0.7;
	fill: #3F425E;
	transition: fill 0.3s, opacity 0.3s;
}

body.mobileActive #searchJump:hover svg,
body.mobileActive #searchJump:focus svg
{
	opacity: 0.7;
}

@media (min-width: 920px)
{
	#searchJump
	{
		right: 105px;
	}

	#searchJump svg
	{
		fill: #fff;
	}
}

@media (min-width: 1350px)
{
	#searchJump
	{
		top: 60px;
		right: 80px;
	}
}

#siteSearch
{
	opacity: 0;
	visibility: hidden;
	position: fixed;
	z-index: 9999;
	top: 0;
	left: 0;
	right: 0;
	background: rgba(0,0,0,.85) !important;
	height: 0;
	overflow: hidden;

	/* this is the close transition - fade out, hide height */
	transition: opacity 0.25s, height 0s 1s, visibility 0s 1s;
}

#siteSearch:target,
#siteSearch.target
{
	opacity: 1;
	visibility: visible;
	height: 100vh;

	/* this is the fade in transition, fade in - change height immediately */
	transition: opacity 0.25s, height 0s;
}

#siteSearch > div
{
	display: flex;
	justify-content: center;
	align-items: stretch;
	width: 70vw;
	min-width: 290px;
	max-width: 1500px;
	margin: 20vh auto auto auto;
	border-bottom: 2px solid white !important;
}

#siteSearch div > *:not(label)
{
	display: block;
	overflow: hidden;
	margin: 0;
	background: none;
}

#siteSearch div button
{
	position: static;
	margin-left: 2px;
	padding: 10px;
	border: 0;
	cursor: pointer;
}

#siteSearch div button img
{
	width: 25px;
	height: 25px;
}

#siteSearch input#searchtext2
{
	flex-grow: 1;
	width: 80%;
	min-height: auto;
	padding: 2px 2px 2px 5px;
	border: 0;
	color: white;
	font:inherit;
	font-size: 30px;
	font-weight: bold;
}

#searchClose
{
	display: none;
}

#searchClose
{
	display: block;
	position: absolute;
	top: 15px;
	right: 10px;
	width: 0;
	height: 0;
	overflow: hidden;
	padding: 28px 28px 0 0;
	background: none !important;
	border: none;
	box-sizing: border-box;
	color: inherit;
	font: inherit;
	font-size: 0;
	text-align: inherit;
	text-transform: inherit;
	cursor: pointer;
}

#searchClose::after,
#searchClose::before
{
	content: '';
	display: block;
	position: absolute;
	top: -2px;
	bottom: -2px;
	left: 50%;
	width: 0;
	border: 1px solid white;
	border-radius: 4px;
	transform: rotate(-45deg);
}

#searchClose::before
{
	transform: rotate(45deg);
}

#searchPopup
{
	display: block;
	position: fixed;
	overflow: auto;
	z-index: 10000;
	top: calc(20vh + 54px);
	left: calc(50% - 145px);
	width: calc(70vw);
	min-width: 290px;
	max-width: 2000px;
	max-height: calc(70vh - 84px);
	background: white;
	box-shadow: 0 4px 8px rgba(0,0,0,0.5);
}

.searchPopup > *
{
	display: block;
	width: 100%;
	margin: 0;
	padding: 5px 36px;
	box-sizing: border-box;
	font-size: 16px !important;
	line-height: 1.4;
}

.searchPopup * p
{
	margin: 0;
	padding: 0;
}

.searchPopup .link
{
	font-weight: bold;
}

.searchPopup .selected
{
	position: relative;
	background: #ddd;
}

.searchPopup .selected::after
{
	content: '»';
	position: absolute;
	bottom: 10px;
	right: 10px;
	width: 1.3em;
	height: 1.3em;
	background: white;
	border-radius: 50%;
	box-shadow: 0 0 1px black;
	color: #999;
	line-height: 1.3em;
	text-align: center;
}

/* search popup predictive */
#inlineSearchPopup
{
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	max-height: 350px;
}

.searchPopup
{
	display: block;
	position: fixed;
	z-index: 10000;
	top: calc(20vh + 54px);
	left: calc(50% - 145px);
	width: calc(70vw);
	min-width: 290px;
	max-width: 2000px;
	max-height: calc(70vh - 84px);
	overflow: auto;
	background: white;
	box-shadow: 0 4px 8px rgba(0,0,0,0.5);
}

.searchPopup a
{
	background: none;
	color: black;
	font-weight: normal;
	text-shadow: none;
}

.searchPopup > *
{
	display: block;
	width: 100%;
	margin: 0;
	padding: 5px 36px;
	box-sizing: border-box;
	font-size: 16px !important;
	line-height: 1.4;
}

.searchPopup * p
{
	margin: 0;
	padding: 0;
}

.searchPopup .link
{
	font-weight: bold;
}

.searchPopup .selectable:hover
{
	background: #ebebeb;
}

.searchPopup .selected
{
	position: relative;
	background: #ddd;
}

.searchPopup .selected::after
{
	content: '»';
	position: absolute;
	bottom: 10px;
	right: 10px;
	width: 1.3em;
	height: 1.3em;
	background: white;
	border-radius: 50%;
	box-shadow: 0 0 1px black;
	color: #999;
	line-height: 1.3em;
	text-align: center;
}

.searchPopup .popupHeader,
#allSearch
{
	position: -webkit-sticky !important;
	position: sticky !important;
	top: 0;
	margin-top: 14px;
	background: white;
	color: black;
	font-size: 19px !important;
	text-transform: uppercase;

}

.searchPopup .popupHeader,
.searchPopup .popupHeader a
{
	font-weight: bold;
}

#allSearch
{
	top: auto;
	bottom: 0;
}

.searchPopup .popupHeader:not(.selected) a,
#allSearch:not(.selected) a
{
	color: inherit;
}

/* search popup results: bio */
.acBio .results_list > div
{
	display: flex;
	padding-bottom: 10px;
}

.acBio a
{
	font-weight: bold;
}

.acBio .photo
{
	padding: 0 10px 0 0;
}

.acBio .photo img
{
	display: block;
	max-width: 70px;
	max-height: 50px;
	border: 1px solid #ccc;
}

#allSearch
{
	position: -webkit-sticky;
	position: sticky;
	bottom: 0;
	width: 100%;
	margin: 0px;
	padding: 10px 38px;
	background: #3a3a3a;
	font-size: 16px !important;
}

#allSearch a
{
	color: white !important;
	font-weight: bold;
}

@media (min-width: 501px)
{
	#searchPopup,
	.searchPopup
	{
		left: calc(50% - 50vw + 15vw);
	}
}


/* Main Navigation -----------------------------------------------> */

#mainNav
{
	position: relative;
	font-weight: 400;
	line-height: normal;
}

/* base style resets */
#mainNav ul,
#mainNav li
{
	list-style: none;
	position: relative;
	margin: 0;
	padding: 0;
	text-align: left;
}

/* top level */
#mainNav > ul
{
	width: 100%;
}

/* all menu links */
#mainNav a
{
	color: #ffffff;
	text-decoration: none;
}

#mainNav li > a
{
	display: block;
	padding: 10px 18px;
}

#mainNav li li:hover > a,
html[data-whatintent="keyboard"] #mainNav li li:focus-within > a
{
	/* using data-whatintent, because some browsers don't understand focus-within */
	background: none;

	color: #F09720;
	text-decoration: none;
}

/* main subnav items */
/* subnavs should be same background/color as main nav*/
#mainNav ul,
#mainNav ul li
{
	background: inherit;
	font-size: inherit;
}

#mainNav > ul ul
{
	display: none;
	position: absolute;
}

/*
#mainNav #navButton-professionals ul div
{
	color: white;
}

#mainNav #navButton-professionals ul div form > div > div
{
	flex-basis: 100%;
}

#mainNav .letterLinks
{
	margin-left: 0;
	color: #ccc;
}

#mainNav .letterLinks a,
#mainNav .letterLinks span
{
	width: calc(100% / 13);
}

#mainNav .letterLinks > *:nth-child(12),
#mainNav .letterLinks > *:last-child
{
	width: calc(100% / 13 - 1px);
}
*/
#mainNav > ul + ul > li#navButton-phone a
	{
		color: #ffffff !important;
	}

/* Desktop Navigation ------------------------------------------------> */

@media (min-width: 1350px)
{
	#mainNav
	{
		display: flex;
		position: absolute;
		z-index: 9999;
		top: 50px;
		right: 0px;
	}

	#mainNav > ul,
	#mainNav > ul > li
	{
		display: inline-block;
		background: none;
	}

	/* we want real hover, not fake touch-hover */
	html:not([data-whatintent="touch"]) #mainNav > ul :hover > ul,
	#mainNav > ul .touchOpen > ul,
	#mainNav > ul .keepOpen > ul
	{
		display: block;
	}

	/* focus-within separated because IE11 chokes on it, but if someone has focus within
		a menu we definitely want it to be visible */
	#mainNav > ul .keepOpen > ul:focus-within
	{
		display: block;
	}

	/* last two double/triple drops go right like parent above */
	#mainNav > ul > li:nth-last-child(-n + 2):hover > ul ul
	{
		left: inherit;
		right: 100%;
	}

	#mainNav > ul ul
	{
		/*** center the drops ***/
		left: calc(50% - 250px);
		width: 578px;

		background: rgba(90,98,136,0.89);
		padding: 18px 10px 28px 10px;
	}

	#mainNav > ul > li
	{
		font-size: 1.25rem;
	}

	#mainNav ul li
	{
		background: none;
	}

	#mainNav > ul > li > a
	{
		white-space: nowrap;
	}

	#mainNav > ul:first-of-type
	{
		right: 0px;
		/*padding-right: 100px;*/
		padding-right: 120px;
	}

	#mainNav > ul:first-of-type > li > a
	{

	}

	body.scrolled #mainNav > ul > li > a
	{
		color: #3F425E;
	}

	#mainNav > ul > li > a:hover,
	#mainNav > ul > li > a:focus,
	#mainNav > ul > li:hover > a,
	#mainNav > ul > li:focus > a,
	body.scrolled #mainNav > ul > li > a:hover,
	body.scrolled #mainNav > ul > li > a:focus,
	body.scrolled #mainNav > ul > li:hover > a,
	body.scrolled #mainNav > ul > li:focus > a
	{
		background: rgba(90,98,136,0.89);
		color: #F09720;
	}

	/*
	#mainNav > ul:first-of-type > li.current > a::after,
	#mainNav > ul:first-of-type > li > a:hover::after,
	#mainNav > ul:first-of-type > li > a:focus::after
	{
		content: '';

		height: 2px;
		background: #000000;

		position: absolute;
		bottom: 0;
		left: 18px;
		right: 18px;

		z-index: 99999999;
	}
	*/

	#mainNav > ul li.current > a:not(:hover):not(:focus)
	{
		color: #F09720;
	}

	/* second-level links */
	#mainNav li li > a
	{
		color: #FFF;
		font-size: 1.05rem;
	}

	/* dropdown current page highlight */
	#mainNav > ul > li > ul .current > a:not(:hover):not(:focus)
	{
		color: #F09720;
		background: none;
	}

	#mainNav > ul + ul > li.current > a:not(:hover):not(:focus)
	{
		background: none;
		color: #F09720;
	}

	/* only users who clicked in to the subnav need to see the header */
	#mainNav .subNavHeader,
	#subNavBack
	{
		display: none;
	}

	/* push double drops out the width of the parent */
	#mainNav > ul li > ul ul
	{
		display: none !important; /* no double drops by default */

		top: 0;
		left: 100%;
	}

	/*** split menu styles ***/
	#mainNav > ul:not(:only-child)
	{
		/* we want to right-align these */
		display: flex;
		justify-content: flex-end;
	}

	/* position the second nav above and make it smaller */
	#mainNav > ul + ul
	{
		position: absolute;
		right: 0px;
		top: -50px;
		width: auto;
		width: 100vw;
		width: calc(100vw - 80px);
		/*width: calc(100vw + 1.5vw);*/
		padding-right: 68px;
	}

	/* hide drops on secondary nav */
	#mainNav > ul + ul ul
	{
		display: none !important
	}

	#mainNav > ul + ul > li
	{
		/*margin-right: 1.8vw;*/
		font-size: 0.90rem;
	}

	#mainNav > ul + ul > li > a,
	p.stndButton a
	{
		padding: 15px 14px 14px 18px !important;
	}

	body.scrolled:not(.intranetSite) #mainNav > ul + ul > li:last-child > a
	{
		color: #fff;
	}

	#mainNav > ul + ul > li#navButton-evaluation,
	p.stndButton a
	{
		background: #3f66b1;
		font-weight: 600;
	}

	#mainNav > ul + ul > li#navButton-evaluation a,
	p.stndButton a
	{
		color: #ffffff;
	}

	#mainNav > ul + ul > li#navButton-evaluation a::after,
	p.stndButton a::after
	{
		position: relative;
		top: 4px;
		content: '\203A';
		margin-left: 14px;
		margin-right: 4px;
		font-size: 36px;
		line-height: 0;
	}

	#mainNav > ul + ul > li#navButton-phone
	{
		background: #F09720;;
		font-weight: 600;
	}

	

	p.stndButton a:is(:hover, :focus)
	{
		background: rgba(90,98,136,0.89);
	}

	/*
	#mainNav > ul + ul > li > a:first-child::after
	{
		left: 0;
		right: 0;
	}
	*/

	/* styles above, repeated, because some browsers don't understand focus-within */
	#mainNav > ul + ul > li:focus-within > a
	{
		background: none !important;
	}

	/*** end split menu styles ***/


	/* mobile nav button is not visible at this screen width */

	button#navToggle
	{
		display: none;
	}

	/* mega menu styles */
	/*
	#mainNav #navButton-professionals ul
	{
		width: 100vw;
		max-width: 600px;
		box-sizing: border-box;
		padding-left: 20px;
		padding-right: 20px;
	}

	#mainNav #navButton-practices ul
	{
		width: 100vw;
		max-width: 600px;
		box-sizing: border-box;
	}

	#navButton-practices > ul
	{
		columns: 2;
	}

	#mainNav #navButton-practices a
	{
		white-space: normal;
		break-inside: avoid;
	}

	/* sub practices *\/
	#navButton-practices ul ul
	{
		display: block;
		position: static;
		width: auto;
		padding: 0;
	}

	/* third level practices *\/
	#navButton-practices ul ul ul
	{
		padding-left: 1em;
	}

	#navButton-practices ul ul a::before
	{
		content: '– ';
	}
	*/
}


/* Mobile Navigation ------------------------------------------------> */

@media (max-width: 1349px)
{
	#mainNav,
	#mainNav li ul
	{
		position: fixed;
		display: block;
		visibility: hidden;
		z-index: 9998;
		top: 0;
		right: -100vw;
		left: auto;
		width: 100vw;
		height: 100vh;
		padding: 160px 0px 10px;
		border-top: 130px solid transparent;
		padding: 33px 16px 0px 120px;
		background: #2F3351;
		box-sizing: border-box;
		box-shadow: 0 0 200px 15px rgba(0,0,0,.8);
		transition: right 0.7s;
		overflow: auto;
	}

	#mainNav
	{
		display: flex;
		flex-direction: column;
		align-items: flex-end; /* need to keep nested items to the right side of screen */
		padding-left: 0px;
		padding-right: 0px;
	}

	#mainNav::before,
	#mainNav > ul + ul::before
	{
		display: none;
	}

	#mainNav > ul,
	#mainNav li ul
	{
		padding-left: 0px;
		padding-right: 0px;
		width: 40vw; /* put a max width on lists even though the parent expands the full viewport */
	}

	#mainNav.target,
	#mainNav.target li ul
	{
		left: auto !important; /* might be set by repositionDrops, ignore it */
	}

	/* needed to avoid a keyboard trap on mobile */
	html[data-whatintent="keyboard"] #mainNav li:not(.touchOpen) > ul
	{
		visibility: hidden;
	}

	#mainNav li ul
	{
		box-shadow: none;
	}

	#mainNav.target,
	#mainNav li.touchOpen > ul
	{
		visibility: visible;
		right: 0;
	}

	#mainNav ul,
	#mainNav li
	{
		display: block;
		margin: 0;
		padding: 0;
	}

	#mainNav a
	{
		color: #ffffff;
	}

	#mainNav li.current > a
	{
		color: #989797;
	}

	#mainNav > ul > li
	{
		margin: 0.8rem 48px 0px 0px;
		font-size: 1.2rem;
		text-transform: uppercase;
	}

	#mainNav > ul > li:hover > a,
	html[data-whatintent="keyboard"] #mainNav > ul > li:focus-within > a
	{
		/* using data-whatintent, because some browsers don't understand focus-within */
		background: none;
		color: #cccccc;
	}

	#mainNav > ul ul > li
	{
		font-size: 1rem;
		text-transform: none;
	}

	#mainNav li li:hover > a,
	html[data-whatintent="keyboard"] #mainNav li li:focus-within > a
	{
		/* using data-whatintent, because some browsers don't understand focus-within */
		background: none;
		color: #cccccc;
	}

	#mainNav li > a:first-child:not(:last-child)::after
	{
		content: '›';
		position: absolute;
		top: 0;
		right: 0;
		font-size: 2rem;
		font-weight: 200;
	}

	#mainNav #subNavBack
	{
		position: absolute;
		top: 0;
	}

	#mainNav #subNavBack a
	{
		position: relative;
		margin-left: 1px;
	}

	#mainNav #subNavBack a::before
	{
		content: '‹';
		position: absolute;
		left: 0;
		font-size: 2.5rem;
		font-weight: 300;
		line-height: 0.85rem;
	}

	#mainNav ul ul li.subNavHeader
	{
		margin-top: 12px;
		font-size: 1.2rem;
		text-transform: uppercase;
	}

	#mainNav #navButton-professionals ul li#megaSearch
	{
		display: none !important; /* hide megaSearch in mobile always */
	}


	/* Mobile Nav 'Hamburger' Button */

	button#navToggle
	{
		display: block;
		position: absolute;
		z-index: 9999;
		/*top: calc(50% - 14px);*/
		top: 31px;
		right: 40px;
		font-size: 0;
	}

	.mobileNav
	{
		display: inline-block;
		overflow: visible;
		margin: 0;
		padding: 4px;
		background-color: transparent;
		border: 0;
		color: inherit;
		font: inherit;
		text-transform: none;
		cursor: pointer;
		transition-timing-function: linear;
		transition-duration: .15s;
		transition-property: opacity, filter;
	}

	button#navToggle.mobileNav.isActive
	{
		position: fixed; /* allows for home page alert message repositioning */
		top: 31px;
	}

	.mobileNav.isActive:hover,
	.mobileNav.isActive:focus,
	.mobileNav:hover,
	.mobileNav:focus
	{
		opacity: .7;
	}

	.mobileNavBox
	{
		position: relative;
		display: inline-block;
		width: 40px;
		height: 22px;
	}

	.mobileNavBox span
	{
		display: block;
		top: 50%;
		margin-top: -2px;
	}

	.mobileNavBox span
	{
		position: absolute;
		top: 10px;
		width: 40px;
		height: 4px;
		background-color: #fff;
		border-radius: 4px;
		transition-timing-function: ease;
		transition-duration: .15s;
		transition-property: transform;
	}

	body.scrolled .mobileNavBox span
	{
		background-color: #2F3351;
	}

	.mobileNav.isActive .mobileNavBox span
	{
		width: 30px;
		height: 2px;
		background-color: #fff;
	}

	.mobileNavBox span:first-child
	{
		top: 0;
	}

	.mobileNavBox span:last-child
	{
		top: 20px;
	}


	/* Add in a 'MENU' label if necessary, hidden by default */

	.mobileNavLabel
	{
		display: none;
		/*display: inline-block;
		margin-left: 5px;
		color: #fff;
		font-weight: 600;
		vertical-align: middle;
		text-transform: uppercase;*/
	}


	/* SPRING - default mobile nav button style */
	/* see https://github.com/jonsuh/hamburgers for other effects */

	.mobileNavSpring .mobileNavBox span
	{
		top: 0px;
		/*transition: background-color 0s linear .13s;*/
	}

	.mobileNavSpring .mobileNavBox :first-child
	{
		top: 10px;
		transition: top .1s cubic-bezier(.33333, .66667, .66667, 1) .2s, transform .13s cubic-bezier(.55, .055, .675, .19);
	}

	.mobileNavSpring .mobileNavBox :last-child
	{
		top: 20px;
		transition: top .2s cubic-bezier(.33333, .66667, .66667, 1) .2s, transform .13s cubic-bezier(.55, .055, .675, .19);
	}

	.mobileNavSpring.isActive .mobileNavBox :nth-child(2)
	{
		transition-delay: .22s;
		background-color: transparent !important;
	}

	.mobileNavSpring.isActive .mobileNavBox :first-child
	{
		top: 0;
		transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .15s, transform .13s cubic-bezier(.215, .61, .355, 1) .22s;
		transform: translate3d(0, 10px, 0) rotate(45deg);
	}

	.mobileNavSpring.isActive .mobileNavBox :last-child
	{
		top: 0;
		transition: top .2s cubic-bezier(.33333, 0, .66667, .33333), transform .13s cubic-bezier(.215, .61, .355, 1) .22s;
		transform: translate3d(0, 10px, 0) rotate(-45deg);
	}


	/* ToggleDrop version - subs expand below instead of swing in from side
		Just add .toggleDrop to the #mainNav element */
	/*
	#mainNav.toggleDrop li ul
	{
		display: none;
		position: relative;
		right: auto !important;
		left: auto !important;
		height: auto;
		padding-top: 0px;
		padding-left: 10px;
		background: none;
		visibility: visible;
		transition: none;
	}

	#mainNav.toggleDrop li ul li.subNavHeader
	{
		display: none;
	}

	#mainNav.toggleDrop li > a:first-child:not(:last-child)::after
	{
		text-align: center;
		transform: rotate(90deg);
		transition: transform 150ms ease-out;
	}

	#mainNav.toggleDrop li > a.toggleDropOpen:first-child:not(:last-child)::after
	{
		transform: rotate(-90deg);
		transform-origin: 0px center;
	}
	*/
}

/* mobile stlyles cont. - for  smaller screens */
@media (max-width: 919px)
{
	#mainNav > ul,
	#mainNav li ul
	{
		width: 100%;
		margin-left: 0px;
	}

	#mainNav,
	#mainNav li ul
	{
		padding-right: 16px;
		padding-left: 16px;
	}

	#mainNav > ul > li
	{
		font-size: 1.6rem;
	}

	#mainNav > ul ul > li
	{
		font-size: 1.5rem;
	}

	#mainNav li > a:first-child:not(:last-child)::after
	{
		top: 2px;
		font-size: 2.4rem;
	}

	#mainNav #subNavBack a::before
	{
		left: -10px;
		font-size: 3rem;
		line-height: 1.3rem;
	}

	#mainNav ul ul li.subNavHeader
	{
		margin-top: 10px;
		font-size: 1.6rem;
	}

	button#navToggle
	{
		right: 12px;
	}

	.mobileNavBox span
	{
		background-color: #2F3351;
	}

	.mobileNav.isActive .mobileNavBox span
	{
		background-color: #fff;
	}
}


/* Sub Navigation ------------------------------------------------> */

#subContent h3#parentLink
{
	color: #1C1C1C;
	font-size: 1.2rem;
	font-weight: 700;
	text-transform: uppercase;
}

#subContent h3#parentLink a
{
	color: #1C1C1C;
}

#subContent h3#parentLink a:hover,
#subContent h3#parentLink a:focus
{
	color: #F09720;
}

#subContent ul.subNavList
{
	margin: 1em 0;
	/*font-family: 'avenir', Arial, sans-serif;*/
	font-size: 1.2rem;
}

#subContent ul.subNavList li
{
	list-style: none;
	margin: 0px;
	padding: 13px 0px;
	color: #2F3351;
	line-height: 1.2;
}

#subContent ul.subNavList li a
{
	color: #2F3351;
}

#subContent ul.subNavList ul
{
	padding-left: 10px;
}

#subContent ul.subNavList li a:hover,
#subContent ul.subNavList li a:focus,
#subContent ul.subNavList li.here > a,
#subContent ul.subNavList li.hereParent > a
{
	color: #F09720;
}


/* Tabs and Expandable Headers ------------------------------------> */
/* these headings are to have similar styling */

.expandableHeading,
h2.sectionTitle
{
	position: relative;
	padding-right: 35px;
	color: #2F3351;
	font-weight: 700;
	cursor: pointer;
	letter-spacing: 1.5px;
}

.expandableHeading button
{
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	border: none;
	color: inherit;
	font: inherit;
	text-transform: inherit;
	text-align: inherit;
	cursor: pointer;
}

.expandableHeading button::after,
h2.sectionTitle::after
{
	content: '';
	display: inline-flex;
	justify-content: center;
	align-items: center;
	float: right;
	width: 20px;
	height: 20px;
	margin: 0.3rem -35px 0 0;
	background: url('../i/arrow-orange-right.svg') center no-repeat; /* data-uri */
	color: black;
	font-weight: 300;
	font-size: 16px;
	line-height: 1.1;
	text-align: center;
	vertical-align: middle;
	transition: transform 250ms ease-out;
}

.expandableHeading.expanded button::after,
h2.sectionTitle.isOpen::after
{
	transform: rotate(90deg);
}

/* mobile/tablet tabs */
@media (max-width: 1024px)
{
	#tabLinks
	{
		display: none;
	}

	h2.sectionTitle
	{
		display: block;
	}

	.contentSection
	{
		display: block !important;
	}

	.contentSection > *
	{
		display: none;
		padding: 10px 0 10px 0;
	}

	#tabLinks a#tabViewAll
	{
		display: none;
	}
}

/* desktop tabs */
@media (min-width: 1025px)
{
	#tabLinks a
	{
		display: inline-block;
		position: relative;
		padding: max(10px, 0.9vw) 0.5em;
		color: #fff;
		font-size: 0.85rem;
	}

	#tabLinks a.current
	{
		background: #F09720;
		color: #fff;
		text-decoration: none;
		cursor: default;
	}

	#tabLinks a:not(.current):hover
	/*#tabLinks a:focus*/
	{
		color: #ccc;
	}

	.expandableHeading button::after,
	h2.sectionTitle::after
	{
		margin: 0.4rem -35px 0 0;
	}

	.sectionTitle
	{
		display: none;
	}

	#tabLinks a#tabViewAll
	{
		float: right;
		padding: 0.5em 0;
		border: none;
	}
}

@media (min-width: 1480px)
{
	#tabLinks a
	{
		padding: max(20px, 1.2vw) 1.2em;
		font-size: 1rem;
	}

	.expandableHeading button::after,
	h2.sectionTitle::after
	{
		margin: 0.5rem -35px 0 0;
	}
}


/* Basic Tiles ----------------------------------------------------> */

/* Make a tile like:
	$lister->attributes['div_results']['class'] = 'itemTile';
	$lister->link_tags = array('WRAP');
*/

.itemTile .results_list
{
	position: relative;
}

.itemTile .results_list > * /* could be a div or li */
{
	display: flex;
	flex-direction: column;
	position: relative;
	width: 100%;
	margin: 0 0 20px 0;
	box-sizing: border-box;
	color: #fff;
}

.itemTile .results_list > * > a:not(.sp_pencil)
{
	display: block;
	flex: 1 0 auto;
	padding: 20px;
	background: #cccccc;
	color: #fff;
}

.itemTile .results_list > * > a:not(.sp_pencil):hover,
.itemTile .results_list > * > a:not(.sp_pencil):focus
{
	background: #bbbbbb;
	text-decoration: none;
}

.itemTile .results_list > * .title
{
	color: #3F67B1;
	font-weight: 700;
	font-size: 24px;
}

@media (min-width: 501px)
{
	.itemTile .results_list
	{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.itemTile .results_list > *
	{
		width: calc(50% - 10px);
	}
}


/* Content -------------------------------------------------------> */

#content
{
	display: flex;
	flex-direction: column;
	position: relative;
	z-index: 20;
	max-width: 1712px;
	min-height: 350px;
	margin: 2.5rem auto;
}

main
{
	order: 1;
	position: relative;
	width: 100%;
	margin: 1rem 0 0 0;
	padding: 0 0 0.5rem 0;
	box-sizing: border-box;
}

#subNav
{
	order: 3;
	position: relative;
	width: 100%;
	margin: 0 0 0 0;
	padding: 1rem 0 0.5rem 0;
	box-sizing: border-box;
}

#subContent
{
	order: 2;
	position: relative;
	width: 100%;
	margin: 1rem 0 0 0;
	padding: 1rem 0 0.5rem 0px;
	box-sizing: border-box;
	background: #f8f9fa;
}

#aboveContent
{
	position: relative;
	z-index: 30;
}

#belowContent
{
	position: relative;
	z-index: 30;
	background: #ffffff;
}

@media (min-width: 920px)
{
	#content
	{
		display: block;
	}

	#content.contentStripe::before
	{
		content: '';
		position: absolute;
		z-index: -1;
		left: calc(100% - 31%);
		top: -2.5rem;
		bottom: 0px;
		width: 100vw;
		height: calc(100% + 5rem);
		background: #f8f9fa;
	}

	#content::after
	{
		/* make div stretch to height of content */
		content: '';
		clear: both;
		display: block;
	}

	#mainContent:not(:only-child)
	{
		float: left;
		width: calc(100% - 31% - 80px);
	}

	#subContent
	{
		clear: right;
		float: right;
		width: 31%;
		margin-top: 0;
		padding: 1rem 0 0.5rem 3.5vw;
		padding-top: 0;
		background: none;
	}
}

#subContent li
{
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	line-height: 1.4;
}

div.texthtml
{
	margin: 5px 0 8px 0;
}

.texthtml p
{
	padding: 0 0 8px 0;
}

ul.none
{
	list-style: none;
	margin: 5px 0 8px 0;
}

ul.none li
{
	padding: 0;
	margin: 0 0 8px 0;
}

/*
	JS now takes care of the hiding of these elements based on div class.
	It wouldn't be horrible to retain these in addition though.
*/

/* if there are 7 or more, hide any items after first 5 */
.expandableList:not(.homeAreaList):not(.sideItemList) .results_list > li:nth-last-child(n+7) ~ li:nth-child(n+6)
{
	display: none;
}

/* hide all items for area, industry, and office 'professionals' */
.expandableFullList .results_list > li
{
	display: none;
}

.popupPlayerPlaylist .expandableList,
.popupPlayerPlaylist .expandableList li
{
	display: block;
}

#subContent .itemSection:not(#bio_education) ul,
#subContent .itemSection:not(#bio_education) ul li
{
	list-style: none;
	margin-left: 0;
}

#mainContent .itemSection ul.results_list
{
	margin-bottom: 0em;
}

#area_bio ul.results_list,
#industry_bio ul.results_list,
#office_bio ul.results_list
{
	margin: 0 0 8px 0;
}

.itemSection ~ .itemSection > .extraItems > ul > li
{
	margin-top: 0;
}


/* XREF news lists like the landing page listing styles */

.xrefNewsList > ul.results_list > li
{
	position: relative;
	width: 100%;
	margin: 0 0 20px 0;
	padding: 0 0 20px 0;
	border-bottom: 1px solid rgba(112,112,112,0.48);
}

.xrefNewsList .image,
.xrefNewsList .photo
{
	position: relative;
	width: 100%;
	/*height: 200px;*/
	margin: 0 0 10px 0;
}

.xrefNewsList .image img,
.xrefNewsList .photo img
{
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
	object-fit: cover;
	/*object-position: top;*/
}

.xrefNewsList .info
{
	align-self: center;
}

.xrefNewsList .infoinner
{
	margin: 0 0 10px 0;
	color: #2F3351;
	font-size: 0.8rem;
	text-transform: uppercase;
}
.xrefNewsList .title
{
	margin: 0 0 18px 0;
	color: #2F3351;
	font-size: 1.2rem;
	line-height: 1.4;
}

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

.xrefNewsList .abstract p:first-child
{
	margin-top: 0px;
	padding-top: 0px;
}

.xrefNewsList .abstract p:last-child
{
	margin-bottom: 0px;
	padding-bottom: 0px;
}

.xrefNewsList span.splitter
{
	padding: 0px 8px;
}

/*@media (min-width: 768px)*/

@media (min-width: 1250px)
{
	.xrefNewsImageList > ul.results_list > li
	{
		display: flex;
		gap: max(20px, 3.4vw);
		margin: 0 0 38px 0;
		padding: 0 0 38px 0;
	}

	.xrefNewsList .image,
	.xrefNewsList .photo
	{
		flex-grow: 0;
		flex-shrink: 0;
		width: 367px;
		height: 218px;
		margin: 0;
	}
}


/* View More type links */

.view_more a
{
	display: inline-block;
	width: auto;
	margin: 0 0 28px 0;
	padding: 7px 14px 7px 14px;
	background: #969696;
	color: #fff;
	vertical-align: middle;
}

.view_more a:hover,
.view_more a:focus
{
	background: #868686;
	text-decoration: none;
}

.rsvpButton
{
	margin: 10px 0 0 0;
}

.view_more a#tabViewMore
{
	margin: 0 0 38px 0;
	padding: 0 0 0 32px;
	background: url('../i/arrow-blue-down.svg') left center no-repeat; /* data-uri */
	color: #3F67B1;
}

.view_more a#tabViewMore:hover,
.view_more a#tabViewMore:focus
{
	/*background: none;*/
	background: url('../i/arrow-orange-down.svg') left center no-repeat; /* data-uri */
	color: #FFA327;
}


/* Contact XREFs */

.bioContactXREF
{
	position: relative;
	top: -1rem;
	left: -16px;
	width: calc(100% + 32px);
	padding: 25px 16px;
	background: #EEEFF2;
	box-sizing: border-box;
}

.bioContactXREF h2
{
	margin-bottom: 18px;
}

.bioContactXREF ul.results_list > li
{
	display: flex;
	gap: 20px;
	align-items: center;
	position: relative;
}

.bioContactXREF ul.results_list > li .photo
{
	flex-shrink: 0;
	position: relative;
	width: 160px;
	height: 160px;
}

.bioContactXREF ul.results_list > li .photo img
{
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 160px;
	object-fit: cover;
	object-position: top;
}

.bioContactXREF ul.results_list > li .info
{
	flex-shrink: 1;
}

.bioContactXREF ul.results_list > li .title
{
	margin-bottom: 6px;
	font-size: 1.4rem;
	line-height: 1.1;
}

.bioContactXREF ul.results_list > li .bioposition
{
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 1.2;
}

.bioContactXREF ul.results_list > li .email
{
	margin-top: 18px;
	padding-top: 8px;
	border-top: 1px solid rgba(180,180,180,0.48);
	font-size: 0.9rem;
}

#subContent .bioContactXREF ul.results_list > li a:not(:hover):not(:focus)
{
	color: #3F67B1;
}

@media (min-width: 768px)
{
	.bioContactXREF ul.results_list > li .photo img
	{
		transform: scale(0);
		transition: transform 250ms ease-out;
	}

	.bioContactXREF ul.results_list > li.zoomImage .photo img
	{
		transform: scale(1);
	}
}

@media (min-width: 920px)
{
	.bioContactXREF
	{
		top: -2.5rem;
		left: -3.5vw;
		padding: 4rem 0px 2.5vw 3.5vw;
	}
}


/* Sidebar Subscribe */

#sideSubscribe
{
	position: relative;
	top: -1rem;
	left: -16px;
	width: calc(100% + 32px);
	padding: 25px 16px;
	background: #EEEFF2;
	box-sizing: border-box;
	color: #ffffff;
	font-size: 0.9rem;
}

#sideSubscribe #sideSubscribeImage
{
	position: absolute;
	z-index: 5;
	bottom: 0;
	top: 0;
	left: 0;
	right: calc(50% - 50vw);
	margin: auto;
}

#sideSubscribe #sideSubscribeImage:after
{
	content: '';
	position: absolute;
	z-index: 6;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(59, 70, 102, 0.79);
}

#sideSubscribe #sideSubscribeImage img
{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#sideSubscribe > div
{
	position: relative;
	z-index: 10;
}

#sideSubscribe h3
{
	color: #ffffff;
	font-weight: 700;
	text-transform: uppercase;
	--min-font-size: 16;
	--max-font-size: 20;
}

#sideSubscribe a#sideSubscribeButton
{
	display: inline-flex;
	justify-content: center;
	align-items: center;
	position: relative;
	z-index: 10;
	border-radius: 44px;
	border: 2px solid #F09720;
	padding: 9px 32px;
	color: #ffffff;
	text-align: center;
	overflow: hidden;
}

#sideSubscribe a#sideSubscribeButton:hover,
#sideSubscribe a#sideSubscribeButton:focus
{
	animation: buttonSlide 300ms ease-in-out;
}

#sideSubscribe a#sideSubscribeButton: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;
}

#sideSubscribe a#sideSubscribeButton:hover:before,
#sideSubscribe a#sideSubscribeButton:focus:before
{
	transform: scaleX(1);
}

@media (min-width: 920px)
{
	#sideSubscribe
	{
		top: -2.5rem;
		left: -3.5vw;
		padding: 3rem 0px 3.5vw 3.5vw;
	}
}


/* Lower Subscribe */

#lowerSubscribeContact
{
	display: flex;
	flex-direction: column;
	gap: 20px;
	position: relative;
	width: 100%;
}

#lowerSubscribe
{
	position: relative;
	width: 100%;
	padding: 25px 16px;
	background: #EEEFF2;
	background: #000;
	box-sizing: border-box;
	color: #ffffff;
	font-size: 0.9rem;
}

#lowerContact
{
	position: relative;
	width: 100%;
	padding: 25px 16px;
	background: #EEEFF2;
	box-sizing: border-box;
	color: #ffffff;
	font-size: 0.9rem;
}

#lowerSubscribe #lowerSubscribeImage,
#lowerContact #lowerContactImage
{
	position: absolute;
	z-index: 5;
	bottom: 0;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
}

#lowerSubscribe #lowerSubscribeImage:after,
#lowerContact #lowerContactImage:after
{
	content: '';
	position: absolute;
	z-index: 6;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(59, 70, 102, 0.79);
}

#lowerSubscribe #lowerSubscribeImage img,
#lowerContact #lowerContactImage img
{
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#lowerSubscribe > div,
#lowerContact > div
{
	position: relative;
	z-index: 10;
}

#lowerSubscribe h3,
#lowerContact h3
{
	color: #ffffff;
	font-weight: 700;
	text-transform: uppercase;
	--min-font-size: 16;
	--max-font-size: 20;
}

#lowerContact h3
{
	margin-bottom: max(20px, 2.5vw);
}

#lowerSubscribe a#lowerSubscribeButton
{
	display: inline-flex;
	justify-content: center;
	align-items: center;
	position: relative;
	z-index: 10;
	border-radius: 44px;
	border: 2px solid #F09720;
	padding: 9px 32px;
	color: #ffffff;
	text-align: center;
	overflow: hidden;
}

#lowerSubscribe a#lowerSubscribeButton:hover,
#lowerSubscribe a#lowerSubscribeButton:focus
{
	animation: buttonSlide 300ms ease-in-out;
}

#lowerSubscribe a#lowerSubscribeButton: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;
}

#lowerSubscribe a#lowerSubscribeButton:hover:before,
#lowerSubscribe a#lowerSubscribeButton:focus:before
{
	transform: scaleX(1);
}

#lowerContact .bioContactXREF
{
	top: 0;
	left: 0;
	width: 100%;
	padding: 0;
	background: none;
}

#lowerContact .bioContactXREF .email a
{
	color: #F09720;
}

#lowerContact .bioContactXREF .email a:hover,
#lowerContact .bioContactXREF .email a:focus
{
	color: #fff;
}

@media (min-width: 920px)
{
	#lowerSubscribeContact
	{
		flex-direction: row;
		justify-content: space-between;
		height: 427px;
	}

	#lowerSubscribe
	{
		width: calc(66.66% - 10px);
		padding: 3rem 3.5vw 3.5vw 3.5vw;
	}

	#lowerContact
	{
		width: calc(33.33% - 10px);
		padding: 3rem 3.5vw 3.5vw 3.5vw;
	}
}


/* Static Spotlight (upper/lower) */

.staticSpotlight
{
	position: relative;
	width: 100%;
	max-width: 1594px;
	margin: 2.5em auto;
}

.staticSpotlight .results_list > div
{
	display: flex;
	flex-direction: column;
	align-items: center;
	row-gap: max(3.5vw, 20px);
	column-gap: 0px;
}

.staticSpotlight .results_list > div .imagewrap
{
	position: relative;
	width: 100%;
	max-width: 678px;
	max-height: 405px;
}

.staticSpotlight .results_list > div .image img
{
	display: block;
	position: relative;
	width: 100%;
	height: auto;
}

.staticSpotlight .results_list > div .imagewrap
{
	order: 1;
}

.staticSpotlight .results_list > div .info
{
	order: 2;
}

.staticSpotlight .results_list > div .imagewrap .xrefMultimediaList ul,
.staticSpotlight .results_list > div .imagewrap .xrefMultimediaList ul li
{
	margin: 0 !important;
	padding: 0 !important;
}

.staticSpotlight .results_list > div .imagewrap .xrefMultimediaList ul
{
	display: block !important;
}

.staticSpotlight .results_list > div .imagewrap .xrefMultimediaList ul li div:not(.photo)
{
	display: none !important;
}

.staticSpotlight .results_list > div .imagewrap .xrefMultimediaList ul li .photo
{
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.staticSpotlight .results_list > div .imagewrap .xrefMultimediaList ul li .photo a:not(.sp_pencil),
.staticSpotlight .results_list > div .imagewrap .xrefMultimediaList ul li .photo a:not(.sp_pencil) img
{
	display: block !important;
}

.staticSpotlight .results_list > div .imagewrap .xrefMultimediaList ul li .photo img
{
	width: 100% !important;
}

.staticSpotlight .results_list > div .info
{
	font-size: 0.9rem;
}

.staticSpotlight .results_list > div .info .linkbutton a:not(.sp_pencil)
{
	display: inline-flex;
	justify-content: center;
	align-items: center;
	position: relative;
	z-index:5;
	border-radius: 44px;
	border: 2px solid #3F67B1;
	padding: 9px 32px;
	color: #1C1C1C;
	text-align: center;
	overflow: hidden;
	text-indent: 0;
}

.staticSpotlight .results_list > div .info .linkbutton a:not(.sp_pencil):hover,
.staticSpotlight .results_list > div .info .linkbutton a:not(.sp_pencil):focus
{
	border: 2px solid #F09720;
	color: #ffffff;
	animation: buttonSlide 300ms ease-in-out;
}

.staticSpotlight .results_list > div .info .linkbutton a:not(.sp_pencil):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;
}

.staticSpotlight .results_list > div .info .linkbutton a:not(.sp_pencil):hover:before,
.staticSpotlight .results_list > div .info .linkbutton a:not(.sp_pencil):focus:before
{
	transform: scaleX(1);
}

@keyframes buttonSlide /* this function called by numerous spots throughout CSS */
{
	0%
	{
		text-indent: -20px;
		padding: 9px 52px 9px 32px;
	}

	100%
	{
		text-indent: 0;
		padding: 9px 32px;
	}
}

@media (min-width: 501px)
{
	.staticSpotlight .results_list > div
	{
		flex-direction: row;
		align-items: center;
		row-gap: 0px;
		column-gap: max(5.5vw, 30px);
	}

	.staticUpperSpotlight .results_list > div.mediaLeft .imagewrap,
	.staticLowerSpotlight .results_list > div.mediaLeft .imagewrap
	{
		order: 1;
		width: 50%;
	}

	.staticUpperSpotlight .results_list > div.mediaLeft .info,
	.staticLowerSpotlight .results_list > div.mediaLeft .info
	{
		order: 2;
		width: 50%;
	}

	.staticUpperSpotlight .results_list > div.mediaRight .imagewrap,
	.staticLowerSpotlight .results_list > div.mediaRight .imagewrap
	{
		order: 2;
		width: 50%;
	}

	.staticUpperSpotlight .results_list > div.mediaRight .info,
	.staticLowerSpotlight .results_list > div.mediaRight .info
	{
		order: 1;
		width: 50%;
	}
}

@media (min-width: 768px)
{
	.staticSpotlight .results_list > div .imagewrap
	{
		overflow: hidden;
	}

	.staticSpotlight .results_list > div .imagewrap .image,
	.staticSpotlight .results_list > div .imagewrap .photo
	{
		background: #2F3351;
		transform: translate3d(-100%, 0, 0);
	}

	.staticSpotlight .results_list > div .imagewrap.slideImage .image,
	.staticSpotlight .results_list > div .imagewrap.slideImage .photo
	{
		animation: spotlightSlide 750ms cubic-bezier(0.68, -0.18, 0.25, 1) 0ms forwards;
	}

	.staticSpotlight .results_list > div .imagewrap .image img,
	.staticSpotlight .results_list > div .imagewrap .photo a
	{
		transform: translate3d(-100%, 0, 0);
	}

	.staticSpotlight .results_list > div .imagewrap.slideImage .image img,
	.staticSpotlight .results_list > div .imagewrap.slideImage .photo a
	{
		animation: spotlightSlide 1000ms cubic-bezier(0.68, -0.18, 0.25, 1) 400ms forwards;
	}

	@keyframes spotlightSlide
	{
		0%
		{
			transform: translate3d(-100%, 0, 0);

		}

		100%
		{
			transform: translate3d(0, 0, 0);

		}
	}
}


/* Mid Page Spotlights */

.midpageSpotlight
{
	position: relative;
	width: 100%;
	margin: 2rem 0px 4rem 0;
	background: #333;
	box-sizing: border-box;
}

.midpageSpotlight .results_list > div
{
	position: relative;
	width: 100%;
	height: 100%;
	margin: 2rem 0px;
	padding: max(5vw, 70px) 0px;
	box-sizing: border-box;
}

.midpageSpotlight .midpagespotlightbgimgid
{
	position: absolute;
	top: 0px;
	left: calc(50% - 50vw);
	width: 100vw;
	height: 100%;
	overflow: hidden;
}

.midpageSpotlight .midpagespotlightbgimgid img
{
	display: block;
	position: relative;
	width: 100vw;
	height: 100%;
	object-fit: cover;
}

.midpageSpotlight .results_list > div .leftside
{
	display: flex;
	flex-direction: column;
	position: relative;
	width: 100%;
	margin: 0 0 60px 0;
	padding: 0;
	box-sizing: border-box;
	color: #ffffff;
}

.midpageSpotlight .results_list > div .leftside h2,
.midpageSpotlight .results_list > div .leftside h3
{
	padding-top: 0px;
	color: #ffffff;
}

.midpageSpotlight .results_list > div .leftside h2
{
	--min-font-size: 22;
	--max-font-size: 30;
}

.midpageSpotlight .results_list > div .abstract
{
	font-size: 1.4rem;
	font-weight: 300;
	font-style: italic;
}

.midpageSpotlight .results_list > div .attribution
{
	margin-bottom: 20px;
	color: #FFC271;
}

.midpageSpotlight .includeareas .itemList button.toggleExpand,
.midpageSpotlight .results_list > div .leftside .linkbutton
{
	margin-top: auto;
	padding-top: 10px;
	/*border-top: 1px solid rgba(255, 255, 255, 0.48);*/
	color: #FFC271;
	text-align: right;
	text-transform: uppercase;
}

.midpageSpotlight .results_list > div .leftside .linkbutton
{
	border-top: 1px solid rgba(255, 255, 255, 0.48);
	letter-spacing: 1.3px;
}

#index .midpageSpotlight .results_list > div .leftside .linkbutton
{
	border-top: 0px;
}

.midpageSpotlight .includeareas .itemList button.toggleExpand,
.midpageSpotlight .results_list > div .leftside .linkbutton a
{
	color: #FFC271;
}

.midpageSpotlight .includeareas .itemList button.toggleExpand:hover,
.midpageSpotlight .includeareas .itemList button.toggleExpand:focus,
.midpageSpotlight .results_list > div .leftside .linkbutton a:hover,
.midpageSpotlight .results_list > div .leftside .linkbutton a:focus
{
	color: #ffffff;
}

.midpageSpotlight .includeareas .itemList button.toggleExpand
{
	position: absolute;
	bottom: 0px;
	left: 0px;
	margin-top: 0px;
	margin-bottom: 0px;
	padding-left: 24px !important;
	text-transform: none;
}

.midpageSpotlight .includeareas .itemList button.toggleExpand:after
{
	content: '';
	position: absolute;
	top: 0px;
	left: 0px;
	width: 11px;
	height: 20px;
	background: url('../i/arrow-gold-right.svg') center no-repeat; /* data-uri */
	transform: rotate(90deg);
}

.midpageSpotlight .includeareas .itemList button.toggleExpand.expanded:after
{
	transform: rotate(270deg);
}

.midpageSpotlight .includeareas .itemList > ul,
.midpageSpotlight .includeareas .itemList > ul > li
{
	position: relative;
	margin: 0;
	padding: 0;
}

.midpageSpotlight .includeareas .itemList > ul > li,
.midpageSpotlight .includedepartments .itemList > ul > li
{
	margin: 10px 0px;
	padding: max(10px, 1.225vw) 0px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.48);
	color: #ffffff;
	font-size: 1.1rem;
}

.midpageSpotlight .includedepartments .itemList > ul > li
{
	margin: 0px 0px 0px 0;
	padding: max(12px, 0.55vw) 0px;
}

.midpageSpotlight .includeareas .itemList > ul > li:last-child
{
	border-bottom: 0px solid rgba(255, 255, 255, 0.48);
}

.midpageSpotlight .includeareas .itemList.expandableList > ul.results_list > li:nth-child(n+6)
{
	display: none;
}

.midpageSpotlight .includeareas .itemList > ul > li a,
.midpageSpotlight .includedepartments .itemList > ul > li a
{
	display: inline-block;
	width: 100%;
	color: #ffffff;
}

.midpageSpotlight .includeareas .itemList > ul > li a:hover,
.midpageSpotlight .includeareas .itemList > ul > li a:focus,
.midpageSpotlight .includedepartments .itemList > ul > li a:hover,
.midpageSpotlight .includedepartments .itemList > ul > li a:focus
{
	background: url('../i/arrow-gold-right.svg') right top no-repeat; /* data-uri */
	color: #FFC271;
}

.midpageSpotlight .includedepartments .itemList > ul > li a:hover,
.midpageSpotlight .includedepartments .itemList > ul > li a:focus
{
	background-position: right top 7px;
}

.midpageSpotlight .includeareas .itemList > ul > li a.sp_pencil
{
	position: absolute;
	top: 0px;
}

.midpageSpotlight .results_list > div .rightside
{
	position: relative;
	width: 100%;
}

.midpageSpotlight .results_list > div .rightsideinner
{
	position: relative;
	z-index: 10;
	width: 100%;
	margin-top: 0;
	padding: max(1vw, 20px) max(2vw, 28px);
	background: #ffffff;
	box-sizing: border-box;
	color: #343434;
}

.midpageSpotlight .results_list > div .rightsideinner h3
{
	color: #3E66B1;
	padding: 12px 0 4px 0;
	font-weight: 400;
	--min-font-size: 30;
	--max-font-size: 36;
}

.midpageSpotlight .results_list > div .rightsideinner .subheadline p
{
	/*margin: 0;
	padding: 0;*/
}

.midpageSpotlight .results_list > div .rightsideinner .subheadline a:not(:hover):not(:focus)
{
	color: #1C1C1C;
}

.midpageSpotlight .results_list > div .rightside .spotlightimgid
{
	position: relative;
	z-index: 5;
	width: 100%;
}

.midpageSpotlight .results_list > div .rightside .spotlightimgid img
{
	display: block;
	width: 100% !important;
	height: auto !important;
}

.midpageSpotlight .includeblogs .itemList > ul > li
{
	margin: 0 0 20px 0;
	padding: 0 0 20px 0;
	border-bottom: 1px solid rgba(255, 255, 255,0.48);
	color: #000;
	font-size: 1.2rem;
	line-height: 1.4;
}

.midpageSpotlight .includeblogs .itemList > ul > li:last-child
{
	border-bottom: 0px;
}

.midpageSpotlight .includeblogs .itemList > ul > li a:not(:hover):not(:focus)
{
	color: #ffffff;
}

@media (min-width: 768px)
{
	.midpageSpotlight .results_list > div
	{
		display: flex;
		padding: max(3vw, 50px) max(3vw, 40px);
	}

	.midpageSpotlight .results_list > div .leftside
	{
		width: 51%;
		margin: 0 0 0px 0;
		padding: 0 max(5vw, 50px) 0 0;
	}

	.midpageSpotlight .results_list > div .rightside
	{
		width: 49%;
	}

	.midpageSpotlight .results_list > div .rightsideinner
	{
		width: calc(100% - 7.5vw);
		margin-top: -5vw;
	}

	.midpageSpotlight
	{
		transform: translate3d(-100vw, 0, 0);
	}

	.midpageSpotlight.slideWideSpot
	{
		animation: midpageSlide 750ms cubic-bezier(0.68, -0.18, 0.25, 1) 0ms forwards;
	}

	.midpageSpotlight .results_list > div .leftside,
	.midpageSpotlight .results_list > div .rightside
	{
		opacity: 0;
	}

	.midpageSpotlight.slideWideSpot .results_list > div .leftside,
	.midpageSpotlight.slideWideSpot .results_list > div .rightside
	{
		animation: midpageFade 1000ms cubic-bezier(0.68, -0.18, 0.25, 1) 400ms forwards;
	}

	@keyframes midpageSlide
	{
		0%
		{
			transform: translate3d(-100vw, 0, 0);
		}

		100%
		{
			transform: translate3d(0, 0, 0);
		}
	}

	@keyframes midpageFade
	{
		0%
		{
			opacity: 0;
		}

		100%
		{
			opacity: 1;
		}
	}
}

@media (min-width: 920px)
{
	.midpageSpotlight .results_list > div
	{
		padding: max(5vw, 70px) max(4.6vw, 60px);
	}
}


/* Case Study Tiles */

#caseStudies
{
	margin: 60px 0px 80px 0px;
	text-align: center;
}

.caseTiles
{
	margin: 20px 0 10px 0;
}

.caseTiles.itemList > ul,
.caseTiles.itemList > ul > li
{
	position: relative;
	margin: 0;
	padding: 0;
	text-align: left;
}

.caseTiles.itemList > ul
{
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	gap: 45px;
}

.caseTiles.itemList > ul > li
{
	width: 100%;
	color: #ffffff;
}

.caseTiles.itemList > ul > li .image
{
	position: relative;
	width: 100%;
	overflow: hidden;
}

.caseTiles.itemList > ul > li .image img
{
	display: block;
	width: 100%;
	height: 350px;
	object-fit: cover;
}

.caseTiles.itemList > ul > li .info
{
	position: absolute;
	/*top: 100%;*/
	bottom: 0px;
	width: 100%;
	/*height: 1px;
	min-height: 98px;*/
	height: 1px;
	min-height: 120px;
	overflow: hidden;
	padding: max(1.8vw, 25px);
	background: rgba(59, 70, 102, 0.79);
	box-sizing: border-box;
	color: #ffffff;
	font-size: 0.9rem;
	transition: all 450ms ease-out;
}

.caseTiles.itemList > ul > li:hover .info,
.caseTiles.itemList > ul > li:focus .info
{
	/*height: 427px;
	max-height: 100%;*/
	height: 100%;
	transition: all 450ms ease-out;
}

.caseTiles.itemList > ul > li .title
{
	font-weight: 700;
	text-transform: uppercase;
}

.caseTiles.itemList > ul > li .abstract
{
	opacity: 0;
	max-height: 0;
	overflow: hidden;
	font-size: 0.8rem;
    transition: opacity 0ms ease-out, max-height 0ms ease-out;
}

.caseTiles.itemList > ul > li:hover .abstract,
.caseTiles.itemList > ul > li:focus .abstract
{
	opacity: 1;
	max-height: 500px;
	transition: opacity 0ms ease-out, max-height 450ms ease-out;
}

.caseTiles.itemList > ul > li .more
{
	max-height: 0;
	overflow: hidden;
    /*transition: all 250ms ease-out;*/
}

.caseTiles.itemList > ul > li:hover .more,
.caseTiles.itemList > ul > li:focus .more
{
	display: inline-flex;
	justify-content: center;
	align-items: center;
	position: relative;
	z-index: 5;
	border-radius: 44px;
	border: 2px solid #F09720;
	margin: 0px 0 0 0;
	padding: 9px 32px;
	text-align: center;
	color: #ffffff;
	opacity: 1;
	max-height: unset;
	overflow: hidden;
}

.caseTiles.itemList > ul > li:hover .more:hover,
.caseTiles.itemList > ul > li:focus .more:focus
{
	animation: buttonSlide 300ms ease-in-out;
}

.caseTiles.itemList > ul > li .more: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;
}

.caseTiles.itemList > ul > li .more:hover:before,
.caseTiles.itemList > ul > li .more:focus:before
{
	transform: scaleX(1);
}

.caseTiles.itemList > ul > li .sp_pencil
{
	position: absolute;
	top: 0px;
}

#allCaseStudies
{
	display: inline-flex;
	justify-content: center;
	align-items: center;
	position: relative;
	z-index: 5;
	border-radius: 44px;
	border: 2px solid #3F67B1;
	margin: 30px 0 0 0;
	padding: 9px 32px;
	color: #1C1C1C;
	text-align: center;
	overflow: hidden;
}

#allCaseStudies:hover,
#allCaseStudies:focus
{
	color: #ffffff;
	border: 2px solid #F09720;
	animation: buttonSlide 300ms ease-in-out;
}

#allCaseStudies: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;
}

#allCaseStudies:hover:before,
#allCaseStudies:focus:before
{
	transform: scaleX(1);
}

@media (min-width: 920px)
{
	.caseTiles.itemList > ul
	{
		flex-direction: row;
		width: calc(100% + 45px);
	}

	.caseTiles.itemList > ul > li.squareTile
	{
		flex-basis: calc(33.33% - 45px);
	}

	.caseTiles.itemList > ul > li.wideTile
	{
		flex-basis: calc(66.66% - 45px);
	}

	.caseTiles.itemList > ul > li
	{
		width: 100%;
	}

	.caseTiles.itemList > ul > li.squareTile
	{
		max-width: calc(33.33% - 0px);
	}

	.caseTiles.itemList > ul > li.wideTile
	{
		max-width: calc(66.66% - 0px);
	}

	.caseTiles.itemList > ul > li .image img
	{
		width: 100%;
		height: 427px;
		/*object-fit: unset;*/
	}

	.caseTiles.itemList > ul > li
	{
		min-height: 427px;
		overflow: hidden;
	}

	.caseTiles.itemList > ul > li > a:not(.sp_pencil)
	{
		display: block;
		position: relative;
		transform: translate3d(0, 100%, 0);
		opacity: 0;
	}

	.caseTiles.itemList > ul > li.squareTileSlideIn > a:not(.sp_pencil)
	{
		animation: tileUp 1000ms cubic-bezier(0.68, -0.18, 0.25, 1) 0ms forwards;
	}

	.caseTiles.itemList > ul > li:nth-child(2).squareTileSlideIn > a:not(.sp_pencil)
	{
		animation-delay: 150ms;
	}

	.caseTiles.itemList > ul > li:nth-child(3).squareTileSlideIn > a:not(.sp_pencil)
	{
		animation-delay: 300ms;
	}

	.caseTiles.itemList > ul > li:nth-child(4).squareTileSlideIn > a:not(.sp_pencil)
	{
		animation-delay: 450ms;
	}

	.caseTiles.itemList > ul > li:nth-child(5).squareTileSlideIn > a:not(.sp_pencil)
	{
		animation-delay: 600ms;
	}

	@keyframes tileUp
	{
		0%
		{
			transform: translate3d(0, 100%, 0);
			opacity: 0;
		}

		100%
		{
			transform: translate3d(0, 0, 0);
			opacity: 1;
		}
	}
}


/* Static News */

#staticNewsWrapper
{
	position: relative;
	margin-top: 4rem;
}

#index #staticNewsWrapper
{
	padding-left: max(3vw, 40px);
	box-sizing: border-box;
}

.staticNews
{
	margin-top: 1.25rem;
}

#index .staticNews
{
	width: 105vw;
	margin-bottom: 3.25rem;
}

.staticNews ul.results_list
{
	position: relative;
}

.staticNews ul.results_list li
{
	position: relative;
	width: calc(100% - 0px);
	margin: 0 0px 0 0px;
	padding: 0 0 20px 0;
	box-sizing: border-box;
	text-align: left;
}

#index .staticNews ul.results_list li
{
	width: calc(100vw - 80px) !important;
	margin: 0 36px 0 0;
}

/* justin says no
.staticNews ul.results_list > li:only-child
{
	width: 100%;
}
*/

.staticNews ul.results_list li > a
{
	display: block;
	position: relative;
	height: 100%;
	min-height: auto;
	box-sizing: border-box;
}

.staticNews ul.results_list li a
{
	color: #fff;
}

.staticNews ul.results_list li .image,
.staticNews ul.results_list li .photo
{
	position: relative;
	width: 100%;
}

.staticNews ul.results_list li .image img,
.staticNews ul.results_list li .photo img
{
	display: block;
	width: 100%;
	max-height: 288px;
	aspect-ratio: 32 / 17;
	object-fit: cover;
}

.staticNews ul.results_list li .captionBox
{
	position: relative;
	width: 100%;
	padding: 26px 10px;
	background: #2F3351;
	box-sizing: border-box;
	color: #fff;
	white-space: normal !important;
}

.staticNews ul.results_list li .captionBox .info,
.staticNews ul.results_list li a .captionBox .info
{
	margin-bottom: 8px;
	color: #C0D2F5;
	font-size: 0.9rem;
	text-transform: uppercase;
}

.staticNews ul.results_list li .sp_pencil
{
	position: absolute;
	top: 10px;
}

h2.staticNewsHeader
{
	text-align: center;
}

#staticNewsBoxNav
{
	position: absolute;
}

#staticNewsBoxNav
{
	position: absolute;
	top: calc(50% - 39px);
	left: calc(50% - 50vw);
}

#staticNewsBoxNav button
{
	width: 42px;
	height: 39px;
	background: #F0961F url('../i/arrow-white-left.svg') center no-repeat; /* data-uri */
	border: 0px;
	cursor: pointer;
}

#staticNewsBoxNav button:hover
{
	background-color: #2F3351;
}

.staticNews ul.results_list li .photo .triggerPopupPlayer,
.staticNews ul.results_list li .photo .triggerPopupPlayer img
{
	display: block;
}

.staticNews ul.results_list,
#index .staticNews ul.results_list
{
	margin-bottom: 0px;
}

.staticNews ul.results_list > li,
#index .staticNews ul.results_list li
{
	display: inline-flex !important;
	flex-direction: column;
	justify-content: space-between;
	position: relative !important;
	overflow: hidden;
}

#index .staticNews ul.results_list li
{
	max-width: 555px;
	padding: 0 0 0px 0;
}

#index .staticNews ul.results_list li .image img,
#index .staticNews ul.results_list li .photo img
{
	max-width: 555px;
}

.staticNews:not(.mediaList) ul.results_list li a:not(.videoMore)
{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.staticNews ul.results_list li .captionBox
{
	width: calc(100% - 5vw);
	min-height: 236px;
	height: 100%;
	padding: 46px 50px;
	margin-top: -4.5vw;
}

.staticNews.mediaList ul.results_list li .captionBox
{
	bottom: 0px;
}

@media (min-width: 768px)
{

	.staticNews ul.results_list
	{
		display: flex;
		gap: 36px;
	}

	#index #staticNewsWrapper
	{
		padding-left: max(3vw, 40px);
	}

	.staticNews ul.results_list > li
	{
		width: calc(33.33% - 18px);
	}


	/* a little animation on hover */

	.staticNews ul.results_list li .captionBox
	{
		margin-top: calc(-4.5vw + 10px);
		transition: margin-top 250ms ease-out;
	}

	.staticNews ul.results_list li:hover .captionBox,
	.staticNews ul.results_list li:focus .captionBox
	{
		margin-top: -4.5vw;
	}
}

@media (min-width: 920px)
{
	#index #staticNewsWrapper
	{
		padding-left: max(6vw, 60px);
	}

	#staticNewsBoxNav button
	{
		width: 82px;
		height: 78px;
	}
}


/* Bio List (main or xref) */

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

.bioList > .results-criteria-wrapper
{
	display: flex;
	justify-content: space-between;
}

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

.bioList > .results-criteria-wrapper .results_criteria,
.bioList > .results-criteria-wrapper .results_criteria > li
{
	list-style: none;
	margin-left: 0;
	padding-left: 0;
}

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

.bioList .reviseButton
{
	margin-bottom: 30px;
}

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

.bioList > ul.results_list
{
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
	grid-gap: min(5vw, 34px);
}

.profileDirectory .bioList > ul.results_list
{
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
}

.bioList > ul.results_list > li
{
	background: #000;
}


/*
 If you're looking to make the image a 'tile'
 and you need the entire background to click to the
 bio profile, yet you have an edit icon, email,
 phone, and office link on there, use the following
 linkmask field with psuedo css to make the link mask.

 See: 'linkmask' in lib/AttorneySearch/Local.php

.bioList > ul.results_list > li:hover > div
{
	pointer-events: none;
}

.bioList > ul.results_list > li:hover > div a
{
	pointer-events: auto;
}

.bioList > ul.results_list > li .linkmask a:after
{
	content: '';
	display: block;
	position: absolute;
	z-index: -1;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
}
*/

.bioList .photo
{
	position: relative;
	z-index: 1;
	width: 100%;
	height: 427px;
	overflow: hidden;
	background: #ccc;
}

.bioList .photo img
{
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: top;
	transition: all 250ms 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.04);
	opacity: 0.8;
}

.bioList > ul.results_list > li .nametitle
{
	position: absolute;
	z-index: 10;
	bottom: 0px;
	width: 100%;
	padding: max(10px, 1.4vw) max(10px, 2vw);
	background: rgba(59, 70, 102, 0.84);
	box-sizing: border-box;
}

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

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

.bioList > ul.results_list > li .position
{
	margin-top: 6px;
	color: #B0C5EC;
	line-height: 1.1;
}

.bioList > ul.results_list > li .office
{
	margin: 8px 0;
	line-height: 1.2;
}

.bioList > ul.results_list > li .office a
{
	color: #666;
}

.bioList > ul.results_list > li .office a:hover,
.bioList > ul.results_list > li .office a:focus
{
	color: #9f0604;
}

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

.bioList > ul.results_list > li .contact > div:not(:empty)::before
{
	content: '|';
	padding: 0 5px;
}

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

.bioList > ul.results_list > li .contact > div a
{
	color: #666;
}

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


/* Client Results */

#matterGroup
{
	padding-top: 40px;
}

.matterItem .matterItemImage
{
	display: block;
	position: relative;
	z-index: 5;
	width: 100%;
	height: 250px;
	margin: 0 0 20px 0;
}

.matterItem .matterItemImage img
{
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.matterItemList h2
{
	padding-bottom: 38px;
	--min-font-size: 22;
	--max-font-size: 30;
}

.matterItemList
{
	position: relative;
	z-index: 10;
}

.matterItemList ul.results_list li
{
	margin: 0 0 28px 0;
	padding: 0 0 28px 0;
	border-bottom: 1px solid rgba(112,112,112,0.48);
	color: #000;
	font-size: 1.2rem;
	line-height: 1.4;
}

.matterItemList ul.results_list li a:not(:hover):not(:focus)
{
	color: #2F3351;
}

.matterItem .view_more
{
	text-align: left;
	margin-bottom: 30px;
}

.matterItem .view_more a
{
	padding: 0;
	background: none;
	color: #292929;
	font-size: 0.95rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1.5px;
}

.matterItem .view_more a:hover,
.matterItem .view_more a:focus
{
	color: #F09720;
	background: none;
	text-decoration: none;
}

@media (min-width: 768px)
{
	#caseStudies
	{
		position: relative;
		z-index: 5;
		left: calc(50% - 50vw);
		width: calc(100vw  + 0px);
		padding: 0px 40px;
		box-sizing: border-box;
	}

	#matterGroup
	{
		padding: 40px 40px 0 40px;
	}

	.matterItem
	{
		display: flex;
		justify-content: space-between;
		align-items: center;
		gap: max(20px, 6vw);
		margin: 0 0 38px 0;
		padding: 0 0 38px 0;
	}

	.matterItem .matterItemImage
	{
		order: 1;
		/*flex-shrink: 0;
		flex-grow: 0;*/
		width: 678px;
		height: 405px;
		padding-bottom: 0px;
	}

	.matterItem .matterItemList
	{
		order: 2;
		flex-grow: 1;
	}

	.matterItem:nth-child(2) .matterItemImage
	{
		order: 2;
	}

	.matterItem:nth-child(2) .matterItemList
	{
		order: 1;
	}

	.matterItem .view_more
	{
		margin-bottom: 0px;
	}

	.matterItem:nth-child(2)
	{
		position: relative;
		padding-top: 90px;
		margin-bottom: max(50px, 7.5vw);
	}

	.matterItem:nth-child(2):before
	{
		content: '';
		position: absolute;
		z-index: -1;
		top: 0;
		bottom: -38px;
		left: calc(50% - 50vw);
		width: 75vw;
		background: #F8F8FA;
	}

	.matterItem .matterItemImage
	{
		background: #2F3351;
		transform: translate3d(-100%, 0, 0);
		overflow: hidden;
	}

	.matterItem .matterItemImage.slideImage
	{
		animation: matterSlideLeft 750ms cubic-bezier(0.68, -0.18, 0.25, 1) 0ms forwards;
	}

	.matterItem .matterItemImage img
	{
		transform: translate3d(-100%, 0, 0);
	}

	.matterItem .matterItemImage.slideImage img
	{
		animation: matterSlideLeft 1000ms cubic-bezier(0.68, -0.18, 0.25, 1) 400ms forwards;
	}

	@keyframes matterSlideLeft
	{
		0%
		{
			transform: translate3d(-100%, 0, 0);

		}

		100%
		{
			transform: translate3d(0, 0, 0);

		}
	}

	.matterItem:nth-child(2) .matterItemImage
	{
		transform: translate3d(100%, 0, 0);
	}

	.matterItem:nth-child(2) .matterItemImage.slideImage
	{
		animation: matterSlideRight 750ms cubic-bezier(0.68, -0.18, 0.25, 1) 0ms forwards;
	}

	.matterItem:nth-child(2) .matterItemImage img
	{
		transform: translate3d(100%, 0, 0);
	}

	.matterItem:nth-child(2) .matterItemImage.slideImage img
	{
		animation: matterSlideRight 1000ms cubic-bezier(0.68, -0.18, 0.25, 1) 400ms forwards;
	}

	@keyframes matterSlideRight
	{
		0%
		{
			transform: translate3d(100%, 0, 0);

		}

		100%
		{
			transform: translate3d(0, 0, 0);

		}
	}


}


/* Forms ---------------------------------------------------------> */

form
{
	position: relative;
	margin: 0;
	padding: 0;
}

.flexPageForm
{
	padding: 30px 0;
}

.flexPageForm .textarea_wrapper,
.flexPageForm .checkbox_wrapper
{
	max-width: 700px;
}

@media (min-width: 768px)
{
	form > div
	{
		display: grid;
		grid-template-columns: repeat(auto-fill, minmax(275px, 1fr));
		grid-gap: max(2vw, 20px);
	}

	form > div.search_form
	{
		margin-right: 100px;
	}
}

form > div > div
{
	position: relative;
}

#subContent form > div > div
{
	width: auto;
	margin-right: 0;
}

form > div > div.textarea_wrapper
{
	grid-column-start: 1;
	grid-column: 1/-1;
	width: calc(100% - 12px);
}

form > div > div.checkbox_wrapper
{
	grid-column-start: 1;
	grid-column: 1/-1;
	width: 100%;
	padding: 5px 0 10px 0;
}

form > div > div.checkbox_wrapper > div > div
{
	display: flex;
	margin: 0 0 10px 0;
}

label
{
	display: block;
}

/* radio/checkboxes without a wrapper */
input + label
{
	display: inline;
}

label p
{
	margin: 0;
	padding: 0;
}

form > div > div.radio_wrapper > label,
form > div > div.checkbox_wrapper > label
{
	display: block;
	position: relative;
	padding: 0 0 10px 0;
	line-height: 1.3;
}

form > div > div.checkbox_wrapper > div
{
	line-height: 1.4;
}

form > div > div.checkbox_wrapper > div > div > input
{
	align-self: flex-start;
	margin: 6px 6px 0 0;
	padding: 0;
}

form > div > div.checkbox_wrapper > div > div > label
{
	/* in safari, unrestricted width was shrinking the actual checkbox */
	max-width: calc(100% - 30px);
}

form > div > div.radio_wrapper
{
	grid-column: 1/-1;
	width: 100%;
	padding: 10px 0 0 0;
}

form > div > div.radio_wrapper > div
{
	display: flex;
}

form > div > div.radio_wrapper > div > div
{
	padding-right: 12px;
}

form > div > div.radio_wrapper > div > div > label
{
	display: inline-block;
	padding: 2px 0 0 4px;
	vertical-align: middle;
}

form > div.search_form > div.keyword_wrapper
{
	grid-column: span 2;
}

form > div.search_form > div.submit_wrapper
{
	position: absolute;
	bottom: 0px;
	right: 0px;
	width: 100px;
	overflow: hidden;
}

/* WebForm uses an id */
#submit_wrapper
{
	grid-column-start: 1;
	width: 100%;
}

form > p
{
	width: 100%;
}

/* hide the label via CSS by default if it has a value (class added in ItemSearch) */
form > div > div.hasValue > label
{
	/* visibility: hidden; not necessary with labels visible above the field */
}

/* remove the visibility: hidden the moment the field has any style added to it via JS */
form > div > div.hasValue > label[style]
{
	visibility: visible;
}

/* reset button appearance on iOS */
input[type=submit],
button,
::-webkit-file-upload-button
{
	border-radius: 0;
	font: inherit;
	-webkit-appearance: none;
}

input[type=file]
{
	font: inherit;
}

input:not([type]),
input[type=text],
input[type=tel],
input[type=email],
input[type=password],
textarea,
select,
.customSelect
{
	width: 100%;

	/* appease IE11 */
	min-height: 58px;

	margin: 0;
	padding: 10px 7px;
	background-color: #fff;
	border: 1px solid #707070;
	border-radius: 0;
	box-sizing: border-box;
	color: #3E4768;
	font-size: 22px;
	/*line-height: 1.8;*/
	vertical-align: top;
}

.search_form input[type=text],
.search_form input[type=email],
.search_form input[type=password],
.search_form select,
.search_form .customSelect
{
	border: 0px solid #707070;
	border-bottom: 1px solid #707070;
}

textarea
{
	min-height: 6.5em;
}

/*
	floating labels applied only to search forms, not other forms, for accessibility
	if you *must* do floating labels everywhere, remove the ".search_form" from
	the selector, and make sure to remove it in the inFieldLabels call in default.js
*/
.search_form form > div > div > label
{
	/* needed for animation to work on .customSelect */
	display: block !important;

	position: absolute;
	padding: 10px 7px;
	color: #3E4768;
	font-size: 22px;
	/*line-height: 1.8;*/
}

.search_form form > div > div.hasFocus > label
{
	display: block !important;
	z-index: 5;
	top: -10px;
	left: 8px;
	padding: 2px 4px 0 2px;
	background-color: #ffffff;
	border-radius: 3px;
	font-size: 0.6rem;
	line-height: 1;
	transition: all 0.3s ease;
}

select
{
	 /* make '-All-' camouflaged until customSelect takes over */
	 /* you may need to change this color to match your particular select bg color */
	 /* we switch back to the inherited color with select.hasCustomSelect below */
	color: #ffffff;
}

.customSelect
{
    display: inline-block !important;
    position: relative;
    overflow: hidden;

    /* make room for the arrow */
    padding-right: 40px;
}

.customSelect::after
{
	content: '';
	display: block;
	position: absolute;
	top: 1.1em;
	right: .55em;
	width: 21px;
	height: 11px;
	background: url('../i/select-arrow.svg') center no-repeat; /* data-uri */
}

/* normalize selects */
select
{
	/* customSelect tries to be useful and set the width, but it breaks a lot */
	width: 100% !important;

	box-sizing: border-box;
}

/* this makes sure the invisible select always floats above */
select.hasCustomSelect
{
	z-index: 1;
	padding: 5px 15px;

	/* we made this white to be camouflaged on load, but now must return to prev color */
	color: #666766;
}

/* per swati, we always want this to be 16px out the gate */
option
{
	color: inherit;
	font-size: 16px;
}

/* custom select color - somewhat buggy, leaving out for now
select option:hover,
select option:focus,
select option:active,
select option:checked {
	background: linear-gradient(#0a80ca, #0a80ca);
	background-color: #0a80ca !important;
	color: white !important;
}
*/

.customSelectInner
{
	display: block !important;
	width: 100% !important;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

input[type=text]:focus,
input[type=tel]:focus,
input[type=email]:focus,
input[type=password]:focus,
textarea:focus,
.customSelectFocus
{
	/* there must be a visual change on focus for accessibility */
	background-color: #eee;
}

/* invalid styles - pink! */
.errors + div > form input:not([type=radio]):invalid,
.errors + div > form textarea:invalid,
.errors + div > form select[data-invalid],
.errors + div > form select[data-invalid] + .customSelect,
form div.invalid
{
	background-color: #fee;
}

/* invalid and focused - darker pink! */
.errors + div > form input:not([type=radio]):invalid:focus,
.errors + div > form textarea:invalid:focus,
.errors + div > form select[data-invalid]:focus,
.errors + div > form select[data-invalid] + .customSelect:focus
{
	background-color: #fcc;
}

/* wrapper divs for checkbox/radios need styling */
div.required.invalid
{
	padding-left: 5px;
}

input[type=submit],
button[type=submit],
.standardButton,
.packetButton,
::file-selector-button,
::-webkit-file-upload-button,
.reviseButton a
{
	/* needed to normalize vertical text alignment across <a> and <button> elements */
	align-items: center;
	display: inline-flex;

	width: auto;
	height: 58px;
	margin: 0 0 0px 0;
	padding: 1px 18px 1px 18px;
	background: #969696;
	border: 0 solid #d6d6d6;
	box-sizing: border-box;
	color: #fff;
	font-size: 16px;
	line-height: 1.8;
	cursor: pointer;
	vertical-align: top;
}

#content form input[type=submit],
#content form button[type=submit]
{
	display: inline-flex;
	justify-content: center;
	align-items: center;
	position: relative;
	z-index: 5;
	border-radius: 44px;
	border: 2px solid #3F67B1;
	background: none;
	margin: 0px 0 0 0;
	padding: 9px 32px;
	color: #1C1C1C;
	text-align: center;
	overflow: hidden;
}

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

#content div:not(.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;
}

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

/* fake demo button */
span.packetButton
{
	cursor: default;
}

input[type=file]::file-selector-button,
input[type=file]::-webkit-file-upload-button
{
	margin-right: 10px;
}

.reviseButton a
{
	display: inline-flex;
	align-items: center;
}

:is(
	input[type=submit],
	button[type=submit],
	.standardButton,
	.packet-button,
	.reviseButton
):is(:hover, :focus)
{
	background: #868686;
	color: #fff;
	text-decoration: none;
}


/* side, index, and other page specific form styles */

#emailField
{
	display: none;
}

#bioSearchWrapper button
{
	background: none;
	margin-left: 20px;
}

#bioSearchWrapper button svg
{
	width: 34px;
	height: 34px;
}

#loginForm form > div
{
	display: block;
	max-width: 400px;
	margin: 0px auto;
}

#loginForm form > div > div.submit_wrapper
{
	margin-top: 20px;
}


/* auto complete js */

.autocomplete-w1
{
	position: absolute;
	top: 0;
	left: 0;
	padding: 8px 0 0 6px;
}

.autocomplete
{
	max-height: 350px;
	overflow: auto;
	margin: -6px 6px 6px -6px;
	background: white;
	outline: 1px solid black;
	text-align: left;
	cursor: default;
	box-shadow: 4px 4px 5px -2px rgba(0,0,0,0.5);
	box-sizing: border-box;
}

.autocomplete .selected
{
	background: #f0f0f0;
}

.autocomplete div
{
	padding: 5px;
	line-height: 120%;
	/* white-space: nowrap; */
}

.autocomplete div span.autoCompleteMore
{
	color: #3F67B1;
	font-size: 11px;
}

.autocomplete h2
{
	margin: 0;
	padding: 12px 5px 6px 5px;
	white-space: nowrap;
}

.autocomplete strong
{
	font-weight: bolder;
	color: #0b3c5d;
}


/* Footer --------------------------------------------------------> */

#footer
{
	position: relative;
	margin: 1rem 0 0 0;
	padding: 2rem 0 0 0;
	box-sizing: border-box;
}

#footerTop
{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	position: relative;
	background: #363333;
	box-sizing: border-box;
}

#footerLeft,
#footerRight
{
	width: 100%;
	margin: 0;
}

#footerRight
{
	margin: 0 0 18px 0;
}

#footerTop a
{
	color: #E3E3E3;
}

#footerTop a:hover,
#footerTop a:focus
{
	color: #F09720;
}

#footerBottom
{
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 85px;
	color: #363333;
	font-size: 0.9rem;
}

#footerBottom a
{
	color: #363333;
}

#footerBottom a:hover,
#footerBottom a:focus
{
	color: #F09720;
}

.socialLineItem a[href^="tel:"]
{
   color: #F09720 !important;
}

.socialLineItem a[href^="mailto:"]:not(:hover):not(:focus)
{
   color: #fff;
}

.socialLineItem a[href^="tel:"]:hover,
.socialLineItem a[href^="tel:"]:focus
{
   font-weight: bold;
}

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

#footer ul
{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

ul#footerLinks li
{
	margin: 0 0.5rem 0 0.5rem;
	white-space: nowrap;
}

#footer p
{
	margin: 0;
	padding: 0;
	font-size: 0.8rem;
}

#footerSocial
{
	margin: 1rem 0 1rem 0;
}

#footerSocial ul li
{
	margin: 0 0.5rem 10px 0.5rem;
}

#footerSocial ul li.socialLineItem
{
	flex-basis: 100%;
	text-align: center;
}

#footerSocial li a
{
	display: inline-block;
	vertical-align: middle;
	line-height: 1;
}

#footerSocial li a svg path
{
	fill: #ffffff;
}

#footerSocial li a:hover svg path,
#footerSocial li a:focus svg path
{
	fill: #F09720;
}

#footerOffices
{
	margin: 2em 0 1em 0;
}

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

#footerOffices ul li
{
	/*width: 50%;*/
}

#footerOffices ul li a.sp_pencil
{
	position: absolute;
}

#footerOffices .results_list > li
{
	margin: 0.4rem 10px 0.4rem 10px;
	text-align: center;
}

#footerOffices .results_list > li .title
{
	margin: 0 0 0.5rem;
	font-size: 1.2rem;
	line-height: 1.2;
}

#footerDisclaimer
{
	position: relative;
	padding: min(20px, 3vw) 0px;
	background: #363333;
	box-sizing: border-box;
	border-top: 1px solid #707070;
	color: #9F9F9F;
	font-size: 0.7rem;
	text-align: center;
}

#footer #footerDisclaimer p
{
	font-size: 0.7rem;
}

#footerDisclaimer::before
{
	border: inherit;
	top: -1px;
}

body.intranetSite #footerSocial ul li.socialLineItem a
{
	color: #F09720;
}

body.intranetSite #footerSocial ul li.socialLineItem a:hover,
body.intranetSite #footerSocial ul li.socialLineItem a:focus
{
	font-weight: 700;
}

#footerSocial ul li.socialLineItem#twoLineEmail
{
	display: flex;
	gap: 10px;
	flex-direction: column;
}

@media (min-width: 768px)
{
	#footerOffices
	{
		display: flex;
		align-items: center;
		height: 120px;
		padding: 0 0 0 100px;
		background: url('../i/logo-mark.svgz') left top no-repeat; /* data-uri */
		background-size: auto 120px;
	}

	#footerOffices::after
	{
		/* make div stretch to height of content */
		content: '';
		clear: both;
		display: block;
	}

	#footerOffices ul
	{
		display: block;
		/*flex-grow: 1;
		flex-shrink: 0;*/
	}

	#footerOffices .results_list > li
	{
		float: left;
		/*width: 16%;*/
		margin: 0.1rem 10px 0.1rem 10px;
		text-align: left;
	}

	/*
	#footerOffices .results_list > li:nth-child(6)
	{
		clear: left;
	}
	*/

	#footerSocial ul li.socialLineItem
	{
		flex-basis: auto;
		text-align: unset;
		margin-right: 1rem;
	}

	#footerSocial ul
	{
    	flex-wrap: nowrap;
    	justify-content: flex-end;
	}

	#footerSocial
	{
		margin: 0rem 0 0 0;
	}

	#footerDisclaimer
	{
		padding: min(28px, 3vw) 0px min(28px, 3vw) 120px;
	}
}

@media (min-width: 1025px)
{
	#footerOffices
	{
		max-width: 80%;
		max-width: 1000px;
	}
}

@media (min-width: 1201px)
{
	#footer
	{
		flex-direction: row;
		align-items: flex-end;
		justify-content: space-between;
	}

	#footerSocial ul li
	{
    	margin: 0 0 0 1.8rem;
	}

	#footerSocial
	{
		margin: 0rem 0 1rem 0;
	}
}

@media (min-width: 1700px)
{
	#footerTop
	{
		flex-direction: row;
		align-items: unset;
		padding: 1.6em 0px;
	}

	#footerOffices
	{
		margin: 0;
	}

	#footerSocial
	{
		margin: 2rem 0 1rem 0;
	}

	#footerOffices
	{
		max-width: 70%;
		max-width: 750px;
	}
}


/* Video Support -------------------------------------------------> */

#backgroundPopup
{
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100000;
	height: 100%;
	width: 100%;
	background: #333;
	border: 1px solid #cecece;
}

.popupPlayerWrapper
{
	display: flex;
	flex-wrap: wrap;
	position: fixed;
	z-index: 99999999;
	top: 50%;
	left: 50%;
	width: 60vw;
	height: auto;
	background: #fff;
	border: 3px solid #cecece;
	border-radius: 2px;
	box-sizing: border-box;
	color: #fff;
	transform: translate(-50%, -50%);
}

.inlineMultimediaPlaceholder
{
	position: relative;
	z-index: 10;
	max-width: none;
	margin: 15px 0px 8px 0px;
}

.popupPlayerWrapper.inlinePlayer
{
	display: flex;
	flex-direction: column;
	position: relative;
	z-index: inherit;
	top: inherit;
	left: inherit;
	width: 100%;
	height: auto;
	overflow: visible;
	margin: 0 0 1.25em 0;
	padding-bottom: 0;
  	transform: none;
}

.mediaPlayer
{
	position: relative;
	z-index: 20;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
	overflow: hidden;
	box-sizing: border-box;
}

.mediaPlayer > iframe
{
	position: absolute;
	z-index: 999999;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

.mediaPlayer > video,
.mediaPlayer > audio
{
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
	margin: auto;
	background: #000;
	box-sizing: border-box;
}

.popupPlayerWrapper.inlinePlayer .mediaPlayer,
.popupPlayerWrapper.inlinePlayer.playerWithSidebar .mediaPlayer,
.popupPlayerWrapper.inlinePlayer.playerWithPlaylist .mediaPlayer,
.popupPlayerWrapper.inlinePlayer.playerWithPlaylist.playerWithSidebar .mediaPlayer
{
	position: relative;
	width: 100% !important;
	height: 100% !important;

	 /* 16:9 */
	padding-bottom: 56.25%;
}

/* override some of the standard closeButton styles */
.popupPlayerWrapper button.closeButton
{
	z-index: 25;
	top: -15px;
	right: -15px;
}

.popupPlayerWrapper a.popupShareButton
{
	z-index: 25;
	top: -15px;
	right: 15px;
}

.popupPlayerPlaylist
{
	display: none;
	flex-basis: 100%;
	position: relative;
	z-index: 9;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 25%;
	max-width: 100%;
	overflow: hidden;
	background: #f0f0f0;
}

.popupPlayerWrapper.inlinePlayer .popupPlayerPlaylist,
.popupPlayerWrapper.inlinePlayer.playerWithSidebar .popupPlayerPlaylist,
.popupPlayerWrapper.inlinePlayer.playerWithPlaylist .popupPlayerPlaylist,
.popupPlayerWrapper.inlinePlayer.playerWithPlaylist.playerWithSidebar .popupPlayerPlaylist
{
	position: relative;
	width: 100% !important;
	max-width: none;
	height: 100px;
}

.popupPlayerPlaylist div.results
{
	position: relative;
	width: 100%;
	height: 100%;
	margin: 10px 0 0 10px;
}

.popupPlayerPlaylist.playlistHorizontalToggles div.results
{
	width: calc(100% - 30px);
	margin: 10px 0 0 30px;
}

.popupPlayerPlaylist ul
{
	list-style: none;
	position: relative;
	left: 0;
	width: 100%;
	min-width: 100000px;
	height: calc(100% - 10px);
	overflow-x: hidden;
	margin: 0;
	padding: 0;
}

.popupPlayerPlaylist ul li
{
	display: block;
	float: left;
	position: relative;
	list-style: none;
	max-width: 250px;
	height: calc(100% - 10px);
	margin: 0 10px 0 0;
	padding: 0;
	box-sizing: border-box;
}

.popupPlayerPlaylist ul li .abstract,
.popupPlayerPlaylist ul li .videoMore
{
	display: none;
}

.popupPlayerPlaylist ul li .photo
{
	position: relative;
	height: 100%;
}

.popupPlayerPlaylist ul li a
{
	display: block;
	position: relative;
	width: auto;
	height: 100%;
}

.popupPlayerPlaylist ul li a img
{
	display: block;
	position: relative;
	z-index: 1;
	width: auto;
	height: 100%;
}

.popupPlayerPlaylist ul li .title
{
	position: absolute;
	z-index: 5;
	top: 0;
	width: 100%;
	padding: 2px 5px;
	background: rgba(0,0,0,0.4);
	color: #fff;
	font-size: 0.8rem;
	box-sizing: border-box;
	cursor: pointer;
}

.popupPlayerPlaylist ul li .sp_pencil
{
	display: none;
}

.popupPlayerPlaylist ul li .title a
{
	color: #fff;
}

.popupPlayerPlaylist ul li .title a:hover,
.popupPlayerPlaylist ul li .title a:focus
{
	text-decoration: none;
}

.popupPlayerPlaylist ul li .title a::after
{
	content: '\00A0\25B6';
}

a#playlistPrev,
a#playlistNext
{
	display: none;
	position: absolute;
	z-index: 50;
	top: 0;
	width: 25px;
	height: calc(100% - 10px);
	margin: 0;
	background: #d8d8d8;
	border-top: 5px solid #f0f0f0;
	border-bottom: 5px solid #f0f0f0;
	text-align: center;
}

.popupPlayerPlaylist.playlistHorizontalToggles a#playlistPrev,
.popupPlayerPlaylist.playlistHorizontalToggles a#playlistNext
{
	display: block;
}

a#playlistPrev
{
	left: 0px;
	border-left: 2px solid #f0f0f0;
	border-right: 3px solid #f0f0f0;
}

a#playlistNext
{
	right: 0px;
	border-left: 3px solid #f0f0f0;
	border-right: 2px solid #f0f0f0;
}

a#playlistPrev:hover,
a#playlistPrev:focus,
a#playlistNext:hover,
a#playlistNext:focus
{
	background-color: #d1d1d1;
}

a#playlistPrev span,
a#playlistNext span
{
	display: inline-block;
	position: relative;
	top: 25%;
	color: #fff;
	font-size: 40px;
}

.popupPlayerSidebar
{
	position: absolute;
	z-index: 0;
	top: 0;
	right: 0;
	width: 25%;
	height: 100%;
	overflow: hidden;
	overflow-y: auto;
	background: #f5f5f5;
}

.popupPlayerWrapper.inlinePlayer .popupPlayerSidebar
{
	position: relative;
	width: 100% !important;
	height: auto !important;
}

.popupPlayerSidebar > div
{
	padding: 5px 10px 5px 10px;
	font-size: 0.8rem;
}

.popupPlayerSidebar > div h2,
.popupPlayerSidebar > div h2.expandableHeading
{
	font-size: 0.9rem;
	margin-left: 0px;
	margin-right: 0px;
	padding: 6px 0 2px 0;
}

.popupPlayerSidebar .expandableHeading
{
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	color: #333333;
	pointer-events: none;
}

.popupPlayerSidebar .expandableHeading:hover
{
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	color: inherit;
	pointer-events: none;
}

.popupPlayerWrapper .position
{
	color: #333333;
}

.itemMultimediaList ul.results_list,
.itemMultimediaList ul.results_list li,
#item_itemvideo > div ul,
#item_itemvideo > div ul li,
.xrefMultimediaList ul,
.xrefMultimediaList ul li,
.popupPlayerSidebar > div ul,
.popupPlayerSidebar > div ul li
{
	list-style: none;
	margin: 0;
	padding: 0;
}

/* because of space-between, we need faux element on the end in case we have 2 items on a line */
.itemMultimediaList ul.results_list::after,
.xrefMultimediaList ul::after
{
	content: '';
}

.itemMultimediaList ul.results_list li,
.xrefMultimediaList ul li,
.itemMultimediaList ul.results_list::after,
.xrefMultimediaList ul::after
{
	flex-basis: calc(100%/3 - 20px);
	margin: 20px 0;
}

.popupPlayerSidebar > div ul li
{
	margin: 3px 0 4px 0;
}

#mainContent .xrefMultimediaList ul li,
.itemMultimediaList ul.results_list li
{
	margin: 0 0 30px 0;
}

.itemMultimediaList ul.results_list li .photo img,
#item_relatedsame ul li .photo img,
.itemMultimediaList ul li .photo img,
.xrefMultimediaList ul li .photo img
{
	width: 310px !important;
}

#mainContent .xrefMultimediaList ul li .photo img,
.itemMultimediaList ul.results_list li .photo img,
.staticSpotlight .results_list > div .imagewrap .xrefMultimediaList ul li .photo img
{
	width: 100% !important;
	height: auto !important;
}

#item_relatedsame ul li .photo img
{
	display: block;
	width: 100%;
}

.videomore
{
	font-size: 0.8rem;
}

#item_relatedsame ul li
{
	margin-bottom: 18px;
}

.itemMultimediaList ul.results_list li::after,
.xrefMultimediaList ul li::after
{
	content: '';
	clear: both;
	display: block;
}

#mainContent .xrefMultimediaList ul li .photo,
.itemMultimediaList ul.results_list li .photo
{
	position: relative;
	z-index: 1;
	float: left;
	margin: 0 0 10px 0;
	width: 100%;
}

#subContent .xrefMultimediaList ul li .photo,
.xrefMultimediaList ul li .photo
{
	float: none;
}

.xrefMultimediaList ul li .videomore,
.xrefMultimediaList ul li .title,
.xrefMultimediaList ul li .abstract
{
	margin: 0;
}

#mainContent .xrefMultimediaList ul li .abstract p
{
	margin: 0;
	padding: 0;
}

#mainContent .xrefMultimediaList ul li .videomore
{
	font-size: 0.8rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1.5px;
}

#mainContent .xrefMultimediaList ul li .videomore a:not(:hover):not(:focus)
{
	/*color: #292929;*/
}

#subContent #item_relatedsame ul.results_list
{
	margin: 0 0 8px 0;
}

.title .videoMore
{
	margin-left: 6px;
	font-weight: 700;
}

.photo .triggerPopupPlayer,
.photo .triggerPopupPlayer img
{
	display: inline-block;
	position: relative;
	max-width: 100%;
}

.popupPlayerWrapper.inlinePlayer .popupPlayerPlaylist ul li .photo a.triggerPopupPlayer img
{
	width: 100%;
	object-fit: cover;
}

/* start player icon - only edit attributes after the first block! */
.photo .triggerPopupPlayer::before,
.photo .triggerPopupPlayer::after
{
	/* don't edit this block */
	content: '';
	display: block;
	position: absolute;
	top: calc(50% - 0.5em);
	z-index: 5;

	/* left position of inner triangle, will need to adjust slightly based on scale */
	left: calc(50% - .35em);

	/* set shadow and background of the icon */
	background: rgba(0,0,0,.3);
	box-shadow: 0 0 2px 0 black;

	/* color sets the solid color of the icon */
	color: white;

	/* font-size here is the full width/height of the icon */
	font-size: 110px;

	/* set the relative size of the triangle inside the circle */
	transform: scale(.5);

	opacity: .85;
	transition: opacity 250ms linear;
}

.photo .triggerPopupPlayer::before
{
	/* these ems are set so you can just use font-size:
		a few blocks above to set the size of the icon */
	top: calc(50% - 0.5em);
	left: calc(50% - 0.5em);
	width: 1em;
	height: 1em;
	border: .05em solid currentColor;
	border-radius: 50%;
	box-sizing: border-box;
	transform: none;
}

.photo .triggerPopupPlayer::after
{
	width: 0;
	height: 0;
	background: none;
	border: solid transparent;
	border-left-color: currentColor;

	/* these ems are set so you can just use font-size: a
		few blocks above to set the size of the triangle */
	border-width: 0.5em 0 0.5em 0.87em;

	box-shadow: none;
}

.photo .triggerPopupPlayer:is(:hover, :focus-within)::before,
.photo .triggerPopupPlayer:is(:hover, :focus-within)::after
{
	opacity: 1;
}


@media all and (orientation: portrait)
{
	.popupPlayerWrapper
	{
		z-index: 99999999;
		top: 50%;
		left: 50%;
		width: 90vw;
		transform: translate(-50%, -50%);
	}
}

@media (min-width: 768px)
{
	.popupPlayerWrapper
	{
		border: 12px solid #cecece;
		border-radius: 2px;
	}

	.popupPlayerWrapper.inlinePlayer
	{
		display: block;
		height: 100%;
		overflow: initial;
		padding-bottom: unset;
	}

	.popupPlayerWrapper.playerWithSidebar .mediaPlayer,
	.popupPlayerWrapper.inlinePlayer .mediaPlayer,
	.popupPlayerWrapper.inlinePlayer.playerWithSidebar .mediaPlayer,
	.popupPlayerWrapper.inlinePlayer.playerWithPlaylist .mediaPlayer,
	.popupPlayerWrapper.inlinePlayer.playerWithPlaylist.playerWithSidebar .mediaPlayer
	{
		width: 75% !important;
		padding-bottom: unset;
	}

	.popupPlayerWrapper.inlinePlayer .popupPlayerPlaylist,
	.popupPlayerWrapper.inlinePlayer.playerWithSidebar .popupPlayerPlaylist,
	.popupPlayerWrapper.inlinePlayer.playerWithPlaylist .popupPlayerPlaylist,
	.popupPlayerWrapper.inlinePlayer.playerWithPlaylist.playerWithSidebar .popupPlayerPlaylist
	{
		max-width: 100%;
		height: 25%;
	}

	.popupPlayerWrapper.playerWithPlaylist.playerWithSidebar .popupPlayerPlaylist,
	.popupPlayerWrapper.inlinePlayer.playerWithPlaylist.playerWithSidebar .popupPlayerPlaylist
	{
		width: 75%;
		max-width: 75%;
	}

	.popupPlayerSidebar > div h2,
	.popupPlayerSidebar > div h2.expandableHeading
	{
		padding: 12px 0 8px 0;
	}

	.popupPlayerSidebar
	{
		z-index: 10;
	}

	.popupPlayerWrapper.inlinePlayer .popupPlayerSidebar
	{
		position: absolute;
		width: 25% !important;
		height: 100% !important;
	}

	#mainContent .xrefMultimediaList ul li .photo img,
	.itemMultimediaList ul.results_list li .photo img
	{
		width: 310px;
	}
}

@media (min-width: 920px)
{
	.itemMultimediaList ul.results_list,
	.xrefMultimediaList ul
	{
		display: flex;
		flex-wrap: wrap;
		gap: 20px;
		justify-content: space-between;
	}
}

@media (min-width: 1025px)
{
	/* might want something a little smaller and centered
	.inlineMultimediaPlaceholder
	{
		max-width: 75%;
		margin: 15px auto 8px auto;
	}
	*/

	#mainContent .xrefMultimediaList ul li,
	.itemMultimediaList ul.results_list li
	{
		margin: 0 0 10px 0;
	}

	.itemMultimediaList ul.results_list li .photo,
	#mainContent .xrefMultimediaList ul li .photo
	{
		float: left;
	}
}


/* Cookie banner/popup -------------------------------------------------> */

#cookieBanner
{
	display: none;
	/*position: fixed;*/
	position: sticky;
	z-index: 9999;
	left: 16px;
	right: 16px;
	bottom: 0;
	max-width: 1100px;
	overflow: visible !important;
	margin: 0 auto;
	padding: 1rem 0px;
	color: white;
}

#cookieBanner::before
{
	content: '';
	position: absolute;
	z-index: -1;
	top: 0;
	bottom: 0;
	left: calc(50% - 50vw);
	width: 100vw;
	background: rgba(47,51,81,0.88);
}

#cookieBanner > div
{
	position: relative;
}

#cookieBanner > div > div
{
	max-height: 70vh;
	overflow: auto;
}

#cookieBanner p
{
	margin: 0 0 1em 0;
	padding: 0;
	color: inherit;
	font-size: 16px;
	line-height: 26px;
}

#cookieBanner > div > div > p
{
	margin: 1em 0;
}

#cookieBanner a
{
	color: inherit;
	text-decoration: underline;
}

#cookieBanner a:hover,
#cookieBanner a:focus
{
	color: #CCC;
}

#cookieBanner p + p
{
	margin-top: .8em;
}

#cookieBanner div button
{
	flex-grow: 0;
	flex-shrink: 0;
	flex-basis: auto;
	display: inline-flex;
    justify-content: center;
    align-items: center;
    position: relative;
    z-index: 5;
    padding: 9px 32px;
	margin: 10px 10px 10px 0;
	background: none;
	border-radius: 44px;
    border: 2px solid #F09720;
    color: #FFF;
    text-align: center;
	font-weight: 300;
	font-size: 16px;
	white-space: nowrap;
	cursor: pointer;
	overflow: hidden;
}

#cookieBanner button:last-of-type
{
	margin-right: 0;
}

#cookieBanner div button:after
{
	content: '×';
	display: inline-block;
	width: 20px;
	margin-left: 18px;
	font-size: 33px;
	line-height: .6;
}

#cookieBanner #cookieManage::after
{
	content: '›';
}

#cookieBanner div button:hover,
#cookieBanner div button:focus
{
	animation: buttonSlide 300ms ease-in-out;
}

#cookieBanner div button: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;
}

#cookieBanner button:hover:before,
#cookieBanner button:focus:before
{
	transform: scaleX(1);
}

@media (min-width: 920px)
{
	#cookieBanner
	{
		left: 44px;
		right: 44px;
	}

	#cookieBanner > div
	{
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	#cookieBanner > div > div
	{
		padding-right: 40px;
	}

	#cookieBanner p
	{
		font-size: 18px;
		line-height: 28px;
	}
}

@media (min-width: 1350px)
{
	#cookieBanner
	{
		left: 80px;
		right: 80px;
	}
}

#cookieOptions
{
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	z-index: 9999;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0,0,0,.5);
}

#cookieOptions:not(.open)
{
	display: none;
}

#cookieOptions > div
{
	position: relative;
	width: calc(100vw - 40px);
	max-width: 800px;
	max-height: calc(100vh - 120px);
	overflow: auto;
	padding: 20px;
	background: white;
	border: 8px solid #999;
	box-sizing: border-box;
}

#cookieOptions h2
{
	margin-bottom: .5em;
	padding: 0;
}

#cookieOptions div + div h2
{
	clear: both;
	float: left;
}

#cookieOptions .toggleGroup
{
	float: right;
}

#cookieOptions p
{
	clear: both;
	width: 100%;
}

/* the widget container */
.toggleGroup
{
	position: relative;
	width: 85px;
	height: 28px;
	background: black;
	border-radius: 14px;

	/* goes to white on focus */
	border: 1px dashed transparent;

	color: white;
}

/* hide the real radio inputs */
.toggleGroup input
{
	position: absolute;
	z-index: -1;
}

/* normalize fonts for the labels, and make them cover the whole widget */
.toggleGroup label
{
	/* align the text in the space remaining */
	display: flex;
	align-items: center;
	justify-content: center;

	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;

	/* make the first label appear on the left by giving 50% right padding */
	padding: 0 45% 0 0;

	/* so the slider can inherit from the top level of the widget, this level has to inher it too */
	border-radius: inherit;

	font: inherit;
	font-size: 14px;
	text-transform: uppercase;
}

.toggleGroup:focus-within
{
	border-color: white;
	text-decoration: underline;
}

/* second label needs to appear on the right */
.toggleGroup label ~ label
{
	padding: 0 0 0 45%;
	color: #ccc;
	cursor: pointer;
}

/* unchecked label should be the only one clickable */
.toggleGroup :checked + label
{
	pointer-events: none;
}

/* the slider is attached to the last label so it sits above everything else */
.toggleGroup label ~ label:after
{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 45%;
	width: 55%;
	background-color: white;
	background-clip: content-box;
	border-radius: inherit;
	border: 3px dotted transparent;
	box-sizing: border-box;
	transition: all 150ms;
}

/* off state - straight right edge */
.toggleGroup label ~ :checked + label:after
{
	left: 0;
	background-color: #ccc;
}


/* Standard 'Close' and 'Accept' and 'Share' Button ----------------> */

.closeButton,
.popupShareButton
{
	position: absolute;
	top: 4px;
	right: 15px;
	width: 0;
	height: 0;
	overflow: hidden;
	padding: 20px 20px 0 0;
	background-color: #ddd;
	border: 2px solid #fff;
	border-radius: 50%;
	color: #999;
	font-size: 0;
	cursor: pointer;
}

.popupShareButton::after
{
	content: "";
	opacity: 0.35;
	position: absolute;
	top: 0px;
	left: 0px;
	width: 20px;
	height: 20px;
	background: #ddd url('../i/icon-share.svg') center center no-repeat; /* data-uri */
	background-size: 13px;
}

.popupShareButton:hover::after,
.popupShareButton:focus::after
{
	opacity: 0.9;
}

.closeButton::before,
.closeButton::after
{
	content: "";
	position: absolute;
	top: 9px;
	left: 3px;
	width: 14px;
	height: 3px;
	background-color: currentColor;
	transform: rotate(-45deg);
}

.closeButton::after
{
	transform: rotate(45deg);
}

.closeButton:hover,
.closeButton:focus
{
	color: #262626;
}

.acceptButton
{
	position: absolute;
	top: 15px;
	right: 15px;
	padding: 0.3vw 0.5vw;
	background-color: #ddd;
	border: 2px solid #fff;
	border-radius: 3px;
	color: #333333;
	text-transform: uppercase;
	cursor: pointer;
}

.acceptButton:hover,
.acceptButton:focus
{
	background-color: green;
	color: #ffffff;
}

@media (min-width: 768px)
{
	.closeButton,
	.popupShareButton
	{
		top: 15px;
	}
}


/* Email Popup Support -------------------------------------------------> */

#emailPopup
{
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	z-index: 99999;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	background: rgba(51, 51, 51, 0.7);
	transition: opacity .3s;
}

#emailPopup:not(.open)
{
	opacity: 0;
	pointer-events: none;
}

#emailPopup > div
{
	position: relative;
	background: white;
}

#emailPopupContent
{
	width: calc(100vw - 40px);
	max-width: 800px;
	max-height: calc(100vh - 120px);
	overflow: auto;
	padding: 20px;
	background: white;
	border: 12px solid #cecece;
	box-sizing: border-box;
}

#emailDisclaimerButtons
{
	text-align: center;
}

#emailDisclaimerButtons > *
{
	display: inline-block;
	margin: 10px;
	padding: 4px 10px;
	width: auto;
	overflow: visible;
	background: #3F67B1;
	border: none;
	color: #fff;
	font: inherit;
	text-transform: inherit;
	text-align: center;
	line-height: inherit;

	/* Corrects font smoothing for webkit */
	-webkit-font-smoothing: inherit;

	/* Corrects inability to style clickable `input` types in iOS */
	-webkit-appearance: none;

	cursor: pointer;
}

#emailPopupClose
{
	position: absolute;
	top: -12px;
	right: -12px;
}


/* SiteMap Object */

table.SITE_MAP
{
	margin-top: 5px;
	border-collapse: collapse;
}

table.SITE_MAP th
{
	padding-top: 5px;
	text-align: right;
}

table.SITE_MAP td
{
	padding-top: 5px;
}

table.SITE_MAP td.h_separator
{
	height: 5px;
	border-bottom: solid 1px #ccc;
}

table.SITE_MAP td.v_separator
{
	padding-left: 15px;
	padding-right: 15px;
	color: #666;
	font-size: 08px;
}

@media (max-width: 767px)
{
	table.SITE_MAP,
	table.SITE_MAP th,
	table.SITE_MAP td,
	table.SITE_MAP tr
	{
		display: block;
		padding: 0;
		text-align: left;
	}

	table.SITE_MAP td:nth-child(n + 4)
	{
		padding-left: 10px;
	}

	table.SITE_MAP td:nth-child(n + 6)
	{
		padding-left: 20px;
	}

	table.SITE_MAP .v_separator
	{
		display: none;
	}
}


/* Search Object Support */

#search form
{
	margin: 0 0 2rem 0;
}

#sp_class_search form div
{
	flex-basis: 100%;
	width: 100%;
}

/* search text input and button */
#sp_class_search .search_text
{
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	align-items: flex-start;
	gap: 18px;
	margin: 1em 0 0;
}

#sp_class_search .search_text input
{
	display: block;
	height: auto;
	margin: 0;
	vertical-align: bottom;
}

#sp_class_search #searchtext
{
	flex-grow: 1;
	flex-basis: 0;
	width: 100%;
	margin-right: 1rem;
}

#sp_class_search p.form-section-label
{
	margin: 1.5rem 0 0.5rem 0;
	padding: 0;
	font-weight: bolder;
}

#search div.form-section
{
	margin-bottom: 0;
}

.search_section_wrapper
{
	display: flex;
}

#sp_class_search .search_section_wrapper
{
	flex-direction: column;
}

#subContent .search_section_wrapper
{
	flex-direction: column;
}

/* checkbox/radio rows */
#sp_class_search .sections > div,
#sp_class_search .search_type > div > div
{
	display: flex;
	align-items: center;
	padding: 0 0 0.8rem .3rem;
}

.search_section_wrapper input[type=radio],
.search_section_wrapper input[type=checkbox]
{
	margin: 0;
	padding: 0;
}

#sp_class_search label
{
	display: flex;
	align-content: center;
	align-items: flex-end;
	padding-top: 1px;
	padding-left: 0.5rem;
	font-size: 1rem;
	line-height: 1;
}

#search .SEARCH
{
	margin: 2.5rem 0 0 0;
}

#search #subContent
{
	margin: .5rem 0 0 0;
	border: none;
}

#search #subContent form > div > div
{
	flex-basis: auto;
}

#search #advSearchLink a
{
	color: #888;
}

#search .search_result_date
{
	color: #888;
}

.searchBioWrapper > div > div
{
	flex-direction: column;
}

@media (min-width: 768px)
{
	#sp_class_search .search_text
	{
		flex-direction: row;
		align-items: stretch;
	}

	#sp_class_search #searchtext
	{
		width: auto;
	}

	#sp_class_search .search_section_wrapper
	{
		flex-direction: row;
	}

	#search div.form-section
	{
		margin-bottom: 0px;
	}

	.searchBioWrapper > div > div
	{
		flex-direction: row;
	}
}

#search div.sections input,
#search div.search_type  input
{
	border: 0;
}

#search a.more
{
	font-weight: bolder;
}

.searchfoundtext
{
	font-weight: bolder;
}

.result-items p
{
	margin-top: 2px;
	margin-bottom: 18px;
	padding-top: 0;
	padding-bottom: 0;
}

.result-items p.link
{
	margin-bottom: 0;
	padding-top: 5px;
	padding-bottom: 0;
}

.section-header h3
{
	margin-top: 2em;
	margin-bottom: .5em;
	padding: 0;
	font-size: 1.3rem;
}

#search .view_more a
{
	position: relative;
	padding: 7px 36px 7px 36px;
}

#search .searchHeader
{
	margin: 0;
	padding: 0;
	border-bottom: 1px solid #a69e9d;
}

#search #searchTabLinks div
{
	margin: 0;
	padding: 6px 0;
	border-top: 1px solid #e9e9e9;
}

#search #searchTabLinks .form-section-label
{
	color: #000;
}

#search #searchTabLinks,
#search #searchTabLinks a
{
	color: #3F67B1;
}

#search #searchTabLinks a span
{
	color: #3F67B1;
}

#search #searchTabLinks .form-section-label
{
	margin-top: 27px;
	border: none;
	font-weight: bold;
}

#search #searchResultsFor span
{
	color: #000;
}

#search #searchResultsFor
{
	margin: 0 0 0.5rem 0;
	padding: 0;
	color: #888;
}

#search .searchOptionsWrapper
{
	position: relative;
	width: 400px;
}

#search .searchOptionsWrapper,
#search #searchOptions
{
	display: inline-block;
	font-size: 18px;
}

#search #searchOptions
{
	min-width: 400px;
}

#search select:hover
{
	cursor: pointer;
}

/* bio section search results */
.searchBioWrapper div.results_list > div
{
	display: flex;
}

.searchBioWrapper .photo
{
	order: 2;
	padding: 0 0 9px 0;
	margin: 0;
}

.searchBioWrapper .photo img
{
	width: 220px;
	padding: 0 0 0 32px;
}

.searchBioWrapper .divider
{
	display: none;
	margin: 18px 0;
	border-top: 1px solid #a69e9d;
}

.result-items > div:not(:last-of-type),
.result-items > p.excerpt:not(:last-of-type)
{
	margin: 0 0 32px;
	padding: 0 0 32px;
	border-bottom: 1px solid #a69e9d;
}


/* Example Styles Support */

table#fontReference
{
	width: 100%;
	margin: 0 0 38px 0;
	font-size: 80%;
	line-height: 1;
	/*white-space: nowrap;*/
}

table#fontReference th,
table#fontReference td
{
    padding: 6px 6px 6px 0;
}


/* Map Object Support */

.sp_map
{
	margin: 2em 0 1em 0;
}

.printMap
{
	display: inline-block;
	padding: 4px;
	background: #3F67B1;
	color: #fff;
	text-align: center;
}

.printMap:hover,
.printMap:focus
{
	background: #6a747c;
	text-decoration: none;
}

/* buttons to look like links */
button.toggleExpand
{
	margin: 0 0 1.5em 0;
	padding: 0 !important;
	background: none !important;
	border: none;
	color: #3F67B1;
	font: inherit;
	text-align: left;
	cursor: pointer;
	line-height: 1;
}

button.toggleExpand:hover,
button.toggleExpand:focus
{
	color: #F09720;
}

#subContent button.toggleExpand
{
	padding: 2px 20px 0 0 !important;
	background: url('../i/arrow-blue-right.svg') right center no-repeat !important; /* data-uri */
}

#subContent button.toggleExpand:hover,
#subContent button.toggleExpand:focus
{
	color: #F09720;
	background: url('../i/arrow-orange-right.svg') right center no-repeat !important; /* data-uri */
}

button.toggleExpand.tabViewMore
{
	display: inline-block;
	width: auto;
	margin: 0 0 28px 0;
	padding: 7px 14px 7px 14px !important;
	background: #969696 !important;
	color: #fff;
	vertical-align: middle;
}

button.toggleExpand.tabViewMore:hover,
button.toggleExpand.tabViewMore:focus
{
	background: #868686 !important;
	text-decoration: none;
}

button.toggleExpand.tabViewMore
{
	margin: 0 0 38px 0;
	padding: 0 0 0 32px !important;
	background: url('../i/arrow-blue-down.svg') left center no-repeat !important; /* data-uri */
	color: #3F67B1;
}

button.toggleExpand.tabViewMore:hover,
button.toggleExpand.tabViewMore:focus
{
	background: url('../i/arrow-orange-down.svg') left center no-repeat !important; /* data-uri */
	color: #FFA327;
}



/* Newsletter Object Support */

.newsletter-unsubscribe-form blockquote
{
	margin-left: 0;
	margin-right: 0;
}


/* Alignment */

figure
{
	margin: .5em 0;
}

.alignleft,
.align-left,
img[style*='float: left']
{
	float: left;
	margin: .5em 1.5em .5em 0;
}

.alignright,
.align-right,
img[style*='float: right']
{
	float: right;
	margin: .5em 0 .5em 1.5em;
}

.aligncenter,
.align-center,
.alignnone
{
	clear: both;
	display: block;
	margin: .5em auto;
}

figure.image
{
	display: table !important;
	padding: 5px;
	background: transparent;
	border: 1px solid #ccc;
	box-sizing: border-box;
	text-align: center;
}

figure.image figcaption
{
	clear: both;
	display: block !important;
	padding: 5px;
	font-size: 0.8rem;
}

.nowrap
{
	white-space: nowrap;
}


/* Intranet */

/* Intranet Specific */

#homeBdays ul.results_list
{
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}

#homeBdays ul.results_list > li
{
	display: flex;
	gap: 20px;
	width: calc(50% - 15px);
}

#homeBdays .yearsofservice
{
	font-size: 0.9rem;
	text-transform: uppercase;
}

#homeBdays .photo
{
	position: relative;
	width: 100%;
	max-width: 69px;
	max-height: 69px;
	overflow: hidden;
}

#homeBdays .photo img
{
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: top;
	border-radius: 69px;
}

#homeBioSpotlight
{
	position: relative;
	width: 100%;
	margin: 0 0 max(20px, 2.5vw) 0;
}

#homeBioSpotlight a
{
	color: #F09720;
}

#homeBioSpotlight a:hover,
#homeBioSpotlight a:focus
{
	color: #fff;
}

#homeBioSpotlight #homeBioSpotlightImage
{
	position: absolute;
	z-index: -1;
	width: 100%;
	height: 100%;
	overflow: hidden;
	background: #3F425E;
}

#homeBioSpotlight #homeBioSpotlightImage:after
{
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(59,70,102, 0.79);
}

#homeBioSpotlight #homeBioSpotlightImage img
{
	position: relative;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#homeBioSpotlight > h2
{
	margin: 0;
	padding: max(20px, 1.5vw) max(30px, 3vw);
	background: rgba(47,51,81, 0.45);
	color: #fff;
	font-size: 1.1rem;
}

#homeBioSpotlight .itemList
{
	padding: max(20px, 2.5vw) max(30px, 3vw);
}

#homeBioSpotlight ul.results_list > li .spotleft
{
	color: #fff;
}

#homeBioSpotlight ul.results_list > li .spotright
{
	display: flex;
	flex-direction: column;
	color: #fff;
}

#homeBioSpotlight ul.results_list > li
{
	display: flex;
	flex-direction: column;
	gap: max(8px, 1vw);
	position: relative;
}

#homeBioSpotlight ul.results_list > li .photo
{
	flex-shrink: 0;
	position: relative;
	width: 160px;
	height: 160px;
}

#homeBioSpotlight ul.results_list > li .photo img
{
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 160px;
	object-fit: cover;
	object-position: top;
}

#homeBioSpotlight ul.results_list > li .info
{
	flex-shrink: 1;
}

#homeBioSpotlight ul.results_list > li .title
{
	margin-bottom: 6px;
	font-size: 1.4rem;
	line-height: 1.1;
}

#homeBioSpotlight ul.results_list > li .title a
{
	color: #FFF;
}

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

#homeBioSpotlight ul.results_list > li .bioposition
{
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 1.2;
}

#homeBioSpotlight ul.results_list > li .email
{
	margin-top: 18px;
	padding-top: 8px;
	border-top: 1px solid rgba(180,180,180,0.48);
	font-size: 0.9rem;
}

#homeBioSpotlight .readmore
{
	align-self: flex-end;
}

#homeBioSpotlight .readmore > a
{
	display: inline-flex;
	justify-content: center;
	align-items: center;
	position: relative;
	z-index: 5;
	border-radius: 44px;
	border: 2px solid #F09720;
	padding: 9px 32px;
	color: #ffffff;
	text-align: center;
	overflow: hidden;
}

#homeBioSpotlight .readmore > a:hover,
#homeBioSpotlight .readmore > a:focus
{
	border: 2px solid #F09720;
	animation: buttonSlide 300ms ease-in-out;
}

#homeBioSpotlight .readmore > a: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;
}

#homeBioSpotlight .readmore > a:hover:before,
#homeBioSpotlight .readmore > a:focus:before
{
	transform: scaleX(1);
}

body.intranetSite .staticLowerSpotlight .abstract
{
	font-size: 1.2rem;
}

@media (min-width: 920px)
{
	#homeBioSpotlight
	{
		position: relative;
		padding: 0px 40px;
		box-sizing: border-box;
	}

	#homeBioSpotlight #homeBioSpotlightImage
	{
		width: calc(100% - 80px);
	}

	#homeBioSpotlight ul.results_list > li
	{
		flex-direction: row;
		gap: max(20px, 5vw);
		align-items: center;
	}

	#homeBioSpotlight ul.results_list > li .spotleft
	{
		display: flex;
		gap: 20px;
		align-items: center;
		position: relative;
	}

	#homeBioSpotlight ul.results_list > li .photo img
	{
		transform: scale(0);
		transition: transform 250ms ease-out;
	}

	#homeBioSpotlight ul.results_list > li.zoomImage .photo img
	{
		transform: scale(1);
	}
}

@media (min-width: 1025px)
{
	#homeBioSpotlight ul.results_list > li
	{
		gap: max(20px, 13.5vw);
	}

	#homeBioSpotlight ul.results_list > li .spotright .homespotlight p
	{
		padding-right: max(40px, 5vw);
	}
}

/* END DEFAULT CSS -----------------------------------------------> */