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




/*

Open Sans

Available weights:

100 Thin
300 Light
400 (normal) Normal
500 Medium
700 (bold) Bold
900 Black

*/



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

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

	font: normal 18px/1.6 opensans, Arial, sans-serif;
	color: #333333;
}

html[data-whatintent="mouse"] *:focus,
html[data-whatintent="touch"] *:focus
{
	outline: 0;
}

/* make sure the browser doesn't go smaller than 320, and throws a scrollbar */
@media (max-width: 320px)
{
	html
	{
		max-width: 320px;
		overflow-x: visible;
	}
}

body
{
	position: relative;
	min-width: 320px;
	max-width: 1220px;
	margin: 0 auto;
	padding: 0 20px;
	background: #fff;
	box-sizing: border-box;
}

/* in mobile or tablet we do not want anything outside the body bounds scrollable */
@media (max-width: 1024px)
{
	body
	{
		overflow-x: hidden;
	}
}

@media (max-width: 919px)
{
	body
	{
		padding: 0 16px 0 16px;
	}
}

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
{
	font-weight: bolder; /* relative, works better if you have a light base font */
}

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: #167DB1;
	text-decoration: none;
}

a:hover,
a:focus
{
	color: #292b2d;
	/*text-decoration: underline;*/
}

/* search results highlight */
mark
{
	background: #3874a8;
	color: white;
}

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

main p a:not(:only-child),
main ul:not([class]):not([id]) li a,
main ol:not([class]):not([id]) li a
{
	/*background: linear-gradient(to top, transparent 2px, rgba(102,102,102, .3) 2px) bottom repeat-x;
	background-size: 100% 3px;*/
}

main p a:hover,
main p a:focus,
main ul:not([class]):not([id]) li a:hover,
main ol:not([class]):not([id]) li a:focus
{
	background: linear-gradient(to top, transparent 2px, rgba(0,143,190, 1) 2px) bottom repeat-x;
	background-size: 100% 3px;
}

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

h1, h2, h3, h4, h5, h6
{
	margin: 0;
	padding: 0;
	color: #333333;
	font-weight: bolder; /* relative, works better if you have a light base font */
	line-height: normal;
	font-family: 'Trebuchet MS','Lucida Grande','Lucida Sans Unicode','Lucida Sans','Tahoma',sans-serif;
}

h1
{
	padding: 5px 0 15px 0;
	color: #000;
	font-size: 30px;
}

#pageTitle
{
	padding-top: 0;
	font-size: 34px;
	line-height: 34px;
	text-transform: uppercase;
	color: #167DB1;
}

h2
{
	padding: 12px 0 8px 0;
	font-size: 22px;
}

#subContent h2
{
	padding: 12px 0 4px 0;
	font-size: 24px;
}

#subContent p
{
	margin-bottom: 10px;
}

h3
{
	padding: 12px 0 4px 0;
	font-size: 24px;
}

h4
{
	padding: 12px 0 4px 0;
	color: #666666;
	font-size: 20px;
	font-weight: inherit;
}

h5
{
	padding: 12px 0 4px 0;
	font-size: 18px;
	color: #6fbd46;
	text-transform: uppercase;
}

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

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

ol
{
	padding-left: 1em;
}

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

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

table ul,
table li
{
	margin-top: 0;
	margin-bottom: 0;
}

/* 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 nested lists need the left margin from 'li' above */
ol > ol,
ul > ul
{
	margin-left: 1.5em;
}

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

img
{
	border: 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;
}

p.introText
{
	font-size: 24px;
	line-height: 38px;
	margin-bottom: 52px;
}

p.introText:after,
#preContent:after,
body#professionals-directory .bioList:before
{
	content: '';
	display: block;
	height: 9px;
	margin-top: 40px;
	background: linear-gradient(to right, #147fab 22%, #292b2d 22%);
}

.intranet p.introText
{
	margin-bottom: 48px;
	color: #666;
}

.intranet p.introText:after
{
	margin-top: 33px;
}

.intranet #homeOfficeInfo > div
{
	padding: 25px;
	border: 1px solid #ccc;
	border-width: 0 1px;
}

.intranet #homeOfficeInfo div h2
{
	font-weight: normal;
}

@media (min-width: 768px)
{
	#pageTitle
	{
		font-size: 40px;
		line-height: 40px;
	}
}

@media (min-width: 1230px)
{

	#pageTitle
	{
		font-size: 55px;
		line-height: 55px;
	}

	p.introText
	{
		font-size: 26px;
		line-height: 42px;
	}

	p.introText:after
	{
		margin-top: 50px;
	}
}


/* Fluid Fonts */
/* https://css-tricks.com/snippets/css/fluid-typography/ */
/*@media screen and (min-width: 320px)
{
	html
	{
		font-size: calc(14px + 8 * ((100vw - 320px) / 960));
	}

	h1
	{
		font-size: calc(28px + 8 * ((100vw - 320px) / 960));
	}

	h2
	{
		font-size: calc(23px + 8 * ((100vw - 320px) / 960));
	}

	#subContent h2
	{
		font-size: calc(19px + 8 * ((100vw - 320px) / 960));
	}

	h3
	{
		font-size: calc(21.5px + 8 * ((100vw - 320px) / 960));
	}

	h4
	{
		font-size: calc(21.5px + 8 * ((100vw - 320px) / 960));
	}

	h5
	{
		font-size: calc(19px + 8 * ((100vw - 320px) / 960));
	}

	h6
	{
		font-size: calc(14px + 8 * ((100vw - 320px) / 960));
	}
}*/

/*@media screen and (min-width: 1280px)
{


	h1
	{
		font-size: 30px;
	}

	h2
	{
		font-size: 26px;
	}

	#subContent h2
	{
		font-size: 27px;
	}

	h3
	{
		font-size: 24px;
	}

	h4
	{
		font-size: 20px;
	}

	h5
	{
		font-size: 18px;
	}

}*/

@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: 479px)
{
	/* 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
*/

#footer::before,
#homeAnimation::before,
#homeNewsHeader::before,
#homeContent::before,
#preFooter::before,
aside::before,
#lowerContent::before,
#subscribeForm::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;
}

#homeNewsHeader::before
{
	box-shadow: 0 3px 5px rgba(0,0,0,0.3);
}


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

#banner,
#mainContent,
#subNav,
#subContent,
.letterLinks > *,
.bioList > ul.results_list > li,
#footerSocial,
#homeNewsHeader
{
	transition: all 0.3s;
}


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

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

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

#captcha_wrapper
{
	float: none;
	height: auto;
	clear: both;
}

#captcha_wrapper img
{
	margin-top: 2px;
	display: block;
}

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;
	}
}

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

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

#resultPageLinks
{
	margin: 1em 0;
}

.expandableHeading,
h2.sectionTitle
{
	position: relative;
	cursor: pointer;
	padding: 19px 50px 19px 0;
	border-top: 1px solid #cccccc;
	font-size: 24px;
	color: #004677;
	font-weight: 700;
}

.expandableHeading:last-of-type,
section:last-of-type
{
	border-bottom: 1px solid #cccccc;
}

/* buttons to look like links */
.expandableHeading button
{
	display: block;
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;

	border: none;
	font: inherit;
	color: inherit;

	cursor: pointer;
	text-transform: inherit;
	text-align: inherit;
}

.expandableHeading button::after,
h2.sectionTitle::after
{
	content: '';
	position: absolute;
	right: 3px;
	top: 12px;
	display: block;
	width: 38px;
	height: 38px;
	background: url('../i/expander.png') center 1px no-repeat; /* data-uri */
	background-size: 38px 114px;
}

.expandableHeading button:hover,
h2.sectionTitle:hover,
.expandableHeading button:focus,
h2.sectionTitle:focus
{
	color: #32b1e7;
}

.expandableHeading.expanded button::after,
h2.sectionTitle.isOpen::after
{
	transform: rotate(180deg);
	background-position: center bottom;
}

.expandableHeading:not(.expanded) button:hover:after,
h2.sectionTitle:not(.expanded):hover:after,
.expandableHeading:not(.expanded) button:focus:after,
h2.sectionTitle:not(.expanded):focus:after
{
	background-position: center -38px;
}

div.expandableContent
{
	display: none;
}

.extraItems
{
	overflow: hidden; /* prevent slideToggle jump */
	display: none;
}

aside
{
	background: #ffffff;
	position: relative;
	z-index: 1;
	padding: 50px 10px;
	text-align: center;
	width: 100%;
	max-width: 790px;
	margin: 0 auto;
	box-sizing: border-box;
	font-size: 18px;
	line-height: 28px;
}

.eventSpot
{
	margin-top: 10px;
}

.eventSpot ul,
.eventSpot li
{
	position: relative;
	margin: 0;
	list-style: none;
}

.eventSpot li
{
	margin: 0 0 50px;
	font-size: 18px;
	line-height: 28px;
}

.eventSpot li:last-child
{
	margin-bottom: 0;
}

.eventSpot a:not(:hover):not(:focus)
{
	color: #333333;
}

.eventSpot .itemdate
{
	position: absolute;
	top: 16px;
	display: inline-block;
	padding: 5px 10px;
	background: #32b1e7;
	color: #ffffff;
	font-size: 14px;
	line-height: 14px;
	font-weight: 700;
}

.eventSpot .image
{
	position: relative;
	overflow: hidden;
	margin: 0 0 20px;
}

.eventSpot .image:after
{
	content: '';
	display: block;
	width: 150%;
	height: 150%;
	top: 0;
	left: 0;
	background: #292b2d;
	opacity: .4;
	position: absolute;
	transition: all 250ms ease;
	z-index: 1;

	transform: rotate(-40deg) translate(-25%, -170%);

}

/*.eventSpot  li:nth-child(2) .image:after
{
	background: #ab3326;
}

.eventSpot	li:nth-child(3) .image:after
{
	background: #e08e0b;
}*/

.eventSpot .image img
{
	display: block;
	width: 100%;
	height: auto;
}

.eventSpot ul li:focus-within .image:after
{
	transform: rotate(-45deg) translate(-25%, -75%);
}

.eventSpot ul li:hover .image:after
{
	transform: rotate(-45deg) translate(-25%, -75%);
}

#triangle
{
	position: absolute;
	width: 30%;
	max-width: 453px;
	height: auto;
	/*width: auto;
	max-height: 1078px;*/
	height: 1078px;
	left: calc(50% - 50vw);
	top: 50px;
	z-index: -1;
}

#upperTriangle
{
	position: absolute;
	top: 0;
	right: calc(50% - 50vw);
	z-index: 1;
	width: 28vw;
	max-width: 538px;
	min-width: 300px;
}

@media (min-width: 600px)
{
	.eventSpot ul
	{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		margin: 0 -11px;
	}

	.eventSpot ul li
	{
		width: calc(50% - 22px);
		margin: 0 11px 44px;
	}
}

@media (min-width: 1024px)
{

	aside
	{
		padding: 85px 0;
	}

	.eventSpot ul
	{
		display: flex;
		flex-wrap: nowrap;
		justify-content: center;
		margin: 0 -11px;
	}

	.intranet .eventSpot ul
	{
		flex-wrap: wrap;
	}

	.intranet .eventSpot ul::after
	{
		content: '';
		flex-grow: 1;
	}

	.eventSpot ul li
	{
		width: calc(100%/3 - 22px);
		margin: 0 11px 44px;
	}

	.eventSpot.intranetSpot ul
	{
		margin: 0 -35px;
	}

	.eventSpot.intranetSpot ul li
	{
		width: calc(100%/2 - 70px);
		margin: 0 35px 44px;
	}
}


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

/*
	how these content jumps should work on desktop:

	1. Initially completely hidden (display: none)
	2. On keyboard input, displayed but transparent (so they can be focused by tabbing)
	3. On focus, they are made fully visible
*/

.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),
html:not([data-whatintent="keyboard"]) .contentJump
{
	color: transparent !important;
	background: transparent !important;
	z-index: -1;
	font-size: 0px;
}


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

#header
{
	position: absolute;
	z-index: 10;
	width: 100vw;
	left: calc(50% - 50vw);
	top: 0;
	padding: 13px 15px;
	height: 80px;
	background: rgba(255,255,255, .85);
	box-sizing: border-box;
}

#logo
{
	width: 120px;
}

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

#header * a
{
	color: #fff;
	text-decoration: none;
}

#topLinks
{
	float: right;
}

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

#topLinks li
{
	float: left;
	margin: 0 0 0 10px;
}

#topLinks a
{
	margin: 0 3px;
	color: #a5a5a5;
	font-size: 10px;
	text-transform: uppercase;
}

#topLinks a:hover,
#topLinks a:focus
{
	color: #589ec0;
	text-decoration: none;
}

#newsFlash
{
	position: absolute;
	top: 80px;
	left: 0;
	z-index: 1;
	width: 100%;
	padding: 10px 20px;
	background: rgba(255,255,255, 1);
	box-sizing: border-box;
	text-align: center;
	text-transform: uppercase;
	font-size: 16px;
}

#newsFlash a:not(:hover):not(:focus)
{

}

@media (min-width: 768px)
{
	#header
	{
		padding: 13px 40px;
		height: 95px;
	}

	#logo
	{
		width: 171px;
	}

	#newsFlash
	{
		top: 95px;
	}
}

@media (min-width: 1024px)
{
	body#index #header
	{
		position: fixed;
		top: -100px;
		box-shadow: 1px 1px 10px rgba(0,0,0,.1);
		transition: all 250ms ease;
	}

	body.scrolled #header
	{
		background: rgba(255,255,255, 1);
	}

	#newsFlash
	{
		position: fixed;
	}

	body.transitionHeader #header
	{
		transition: all 750ms ease;
	}

	body#index.startAnimations #header
	{
		top: 0;
	}
}



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

#searchJump
{
	position: absolute;
	top: 24px;
	right: 20px;
	width: 43px;
	height: 43px;
	overflow: hidden;
	border-radius: 50%;
	box-sizing: border-box;
	border: 1px solid transparent;
}

.intranet #searchJump
{
	display: none;
}

#searchJump img
{
	position: absolute;
	top: 8px;
	left: 9px;
	display: block;
	width: 24px;
	height: auto;
}

#searchJump:hover,
#searchJump:focus
{
	border: 1px solid #32b1e7;
}

#searchJump:hover img,
#searchJump:focus img
{
	top: -26px;
}

@media (max-width: 1449px)
{
	#searchJump
	{
		top: 18px;
		right: 85px;
	}
}

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

	opacity: 0;
	height: 0;
	overflow: hidden;

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

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

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

.search1 #siteSearch > div
{
	margin: auto;

	width: 70vw;
	min-width: 290px;
	max-width: 1500px;
	margin-top: 20vh;

	display: flex;
	justify-content: center;
	align-items: stretch;

	border-bottom: 2px solid white !important;
}

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

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

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

.search1 #siteSearch input#searchtext2
{
	width: 80%;
	padding: 2px 2px 2px 5px;
	border: 0;
	font:inherit;
	font-size: 30px;
	font-weight: bold;
	min-height: auto;

	color: white;

	flex-grow: 1;
}

#searchClose
{
	display: none;
}

.search1 #searchClose
{
	border: none;
	font: inherit;
	color: inherit;
	background: none !important;

	cursor: pointer;
	text-transform: inherit;
	text-align: inherit;

	display: block;
	position: absolute;
	top: 15px;
	right: 10px;
	width: 0;
	height: 0;
	font-size: 0;
	overflow: hidden;
	padding: 32px 28px 0 0;

	cursor: pointer;
	box-sizing: border-box;
}

.search1 #searchClose::after,
.search1 #searchClose::before
{
	content: '';
	display: block;

	position: absolute;
	top: -2px;
	bottom: -2px;
	width: 0;
	left: 50%;
	outline: 2.5px solid white;

	transform: rotate(-30deg);
}

.search1 #searchClose::before
{
	transform: rotate(30deg);
}

#searchPopup
{
	display: block;

	position: fixed;
	overflow: auto;
	z-index: 10000;

	width: calc(70vw);
	min-width: 290px;
	max-width: 2000px;

	max-height: calc(70vh - 84px);

	top: calc(20vh + 54px);
	left: calc(50% - 50vw + 15vw);

	background: white;
	box-shadow: 0 4px 8px rgba(0,0,0,0.5);
}

@media (min-width: 768px)
{
	.search1 #siteSearch
	{
		top: 95px;
		left: 0;
		right: 0;
		bottom: auto;
		height: 0;
		background: rgba(0,0,0,1) !important;
		transition: all 500ms ease;
		opacity: 1;
		visibility: visible;
	}

	.search1 #siteSearch.target
	{
		transition: all 500ms ease;
		height: 100px;
	}

	.search1 #siteSearch > div
	{
		width: 75vw;
		max-width: 800px;
		margin: 20px auto 0;
	}

	.search1 #siteSearch input#searchtext2
	{
		font-size: 20px;
	}
}

@media (min-width: 1500px)
{
	#searchJump
	{
		right: 40px;
	}
}

@media (max-width: 580px)
{
	#searchPopup
	{
		left: calc(50% - 145px);
	}
}

#searchPopup > *
{
	padding: 10px 20px;
	margin: 0;
	display: block;
	width: 100%;
	box-sizing: border-box;

	font-size: 16px !important;
	line-height: 1.4;
}

#searchPopup > :not(:last-child)
{
	border-bottom: 1px solid #ddd
}

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

#searchPopup .link
{
	font-weight: bold;
	margin-bottom: 10px;
}

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

#searchPopup .selected:after
{
	content: '»';
	color: #999;

	position: absolute;
	bottom: 10px;
	right: 10px;
	width: 1.3em;
	height: 1.3em;
	line-height: 1.3em;
	text-align: center;

	box-shadow: 0 0 1px black;

	background: white;
	border-radius: 50%;
}

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

.searchPopup
{
	display: block;

	position: fixed;
	overflow: auto;
	z-index: 10000;

	width: calc(70vw);
	min-width: 290px;
	max-width: 2000px;

	max-height: calc(70vh - 84px);

	top: calc(20vh + 54px);
	left: calc(50% - 50vw + 15vw);

	background: white;
	box-shadow: 0 4px 8px rgba(0,0,0,0.5);
}

.searchPopup a
{
	text-shadow: none;
	background: none;
}

@media (max-width: 580px)
{
	.searchPopup
	{
		left: calc(50% - 145px);
	}
}

.searchPopup > *
{
	padding: 10px 20px;
	margin: 0;
	display: block;
	width: 100%;
	box-sizing: border-box;

	font-size: 16px !important;
	line-height: 1.4;
}

.searchPopup > :not(:last-child)
{
	border-bottom: 1px solid #ddd
}

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

.searchPopup .link
{
	font-weight: bold;
	margin-bottom: 10px;
}

.searchPopup .selected
{
	background: #ddd;
	position: relative;
}
.searchPopup .selected:after
{
	content: '»';
	color: #999;

	position: absolute;
	bottom: 10px;
	right: 10px;
	width: 1.3em;
	height: 1.3em;
	line-height: 1.3em;
	text-align: center;

	box-shadow: 0 0 1px black;

	background: white;
	border-radius: 50%;
}

.popupHeader,
#allSearch
{
	position: -webkit-sticky !important;
	position: sticky !important;

	top: 0;
	background: #3874a8;
	color: white;
}

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

.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
{
	max-width: 70px;
	max-height: 50px;

	display: block;
	border: 1px solid #ccc;
}

#allSearch
{
	position: -webkit-sticky;
	position: sticky;

	bottom: 0;
	background: #3874a8;
}

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

/* alternate search setups */

.search2 #siteSearch,
.search3 #siteSearch
{
	position: absolute;
	top: 10px;
	right: 2vw;
}

@media (max-width: 1119px)
{
	.search2 #siteSearch,
	.search3 #siteSearch
	{
		top: 60px;
		right: 10px;
	}
}

.search2 #siteSearch
{
	max-height: 0;
	overflow: hidden;
	opacity: 0;

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

.search2 #siteSearch:target,
.search2 #siteSearch.target
{
	display: block;

	max-height: 500px;
	opacity: 1;

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

.search2 #siteSearch > div,
.search3 #siteSearch > div
{
	display: flex;
}

.search2 #siteSearch input,
.search3 #siteSearch input
{
	width: auto;
}

.search2 #siteSearch button,
.search3 #siteSearch button
{
	background: none;
	border: 0;
	margin: 0;
	padding: 0 10px;
}

.search2 #siteSearch button
{
	background: #0f334f;
}

.search2 #searchPopup,
.search3 #searchPopup
{
	top: 45px;
	right: 41px;
	left: auto;
}

.search3 #siteSearch input,
.search3 #siteSearch button
{
	background: none;
	border: 0;
	border-bottom: 1px solid white;
	color: white;
}

.search3 #searchJump
{
	display: none;
}


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

#banner
{
	position: relative;
	width: 100%;
}

#bannerImage
{
	position: relative;
	width: 100vw;
	left: calc(50% - 50vw);
	height: 30vw;
	overflow: hidden;

}

#bannerImage::after
{
	content: '';
	position: absolute;
	bottom: 0;
	display: block;
	width: 150%;
	height: 8vw;
	left: 10px;
	background: #ffffff;
	transform: skew(-70deg);
	z-index: 1;
	overflow: hidden;
}

#bannerImage > img
{
	display: block;
	position: relative;
	width: auto;
	height: 100%;
	z-index: 1;
}

#bannerContent
{
	position: absolute;
	z-index: 2;
	bottom: 0;
	left: 20px;
	color: #fff;
	font-size: 16px;
}

#bannerContent *
{
	color: inherit;
}

@media (min-width: 700px)
{
	#bannerImage
	{
		height: 184px;
	}

	#bannerImage::after
	{
		height: 55px;
	}
}

@media (min-width: 1500px)
{
	#bannerImage::after
	{
		left: 80px;
	}
}

@media (min-width: 1920px)
{
	#bannerImage > img
	{
		width: 100%;
		height: auto;
	}
}


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

#mainNav
{
	position: relative;
	background: #2d2d2c;
	line-height: normal;
	color: #333333;
	font-weight: 400;
}

/* 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: inherit;
	text-decoration: none;
}

#mainNav > ul > li
{
	margin: 0 32px 0 0;
}

#mainNav > ul li > a
{
	display: block;
	padding: 3px 5px;
	box-sizing: border-box;
}

#mainNav li:hover > a
{
	/* make sure to repeat these styles in the block below */
	color: #32b1e7;
	text-decoration: none;
	/*outline: 1px solid currentColor;*/
}

/* styles above, repeated, because some browsers don't understand focus-within */
html[data-whatintent="keyboard"] #mainNav li:focus-within > a
{
	color: #32b1e7;
	text-decoration: none;
	/*outline: 1px solid currentColor;*/
}

/* main nav tab current page highlight */
#mainNav .current > a:not(:hover):not(:focus)
{
	color: #32b1e7;
}

/* 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;
	color: #ffffff;
}

#mainNav > ul ul li:hover > a
{
	outline: none;
}

/* 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 #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);
}
*/


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

@media (min-width: 1450px)
{
	#mainNav
	{
		display: flex;
		position: absolute;
		z-index: 9999;
		top: 31px;
		right: 72px;
		background: none;
	}

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

	#mainNav > ul > li
	{
		padding-bottom: 10px;
	}

	/* 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;
	}

	#mainNav > ul ul
	{
		/*** center the drops ***/
		left: calc(50% - 120px);
		min-width: 256px;
		top: 100%;

		background: #003768;
		padding: 15px 20px 25px;
	}

	#mainNav > ul ul:after
	{
		content: '';
		position: absolute;
		bottom: 0;
		right: 0;
		display: block;
		height: 9px;
		width: calc(100% - 64px);
		background: #32b1e7;
	}

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

	#mainNav > ul > li > a
	{
		font-size: 19px;
		font-weight: 500;
	}

	/* second-level links */
	#mainNav li li > a
	{
		color: #ffffff;
	}

	#mainNav > ul > li > ul li
	{
		margin: 0 0 12px;
	}

	/* dropdown current page highlight */
	#mainNav > ul > li > ul .current > a:not(:hover):not(:focus)
	{

	}

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

	/* 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 doulbe 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 */
	/* only used on intranet */
	#mainNav > ul + ul
	{
		position: absolute;
		right: -2px; /* make up for the search icon running alongside to the right */
		top: -30px;
		width: auto;
	}

	.intranet #mainNav
	{
		top: 30px;
	}

	.intranet #mainNav ul:nth-last-child(2)
	{
		padding-top: 15px;
	}

	.intranet #mainNav ul + ul
	{
		top: -15px;
	}

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

	#mainNav > ul + ul > li
	{
		margin-right: 2.2vw;
	}

	#mainNav > ul + ul > li > a
	{
		padding: 3px 0;
		color: #167DB1;
		font-weight: normal;
		font-size: 15px;
	}

	#mainNav > ul + ul > li:hover > a
	{
		text-decoration: underline;
		background: none !important;
	}

	/* styles above, repeated, because some browsers don't understand focus-within */
	#mainNav > ul + ul > li:focus-within > a
	{
		text-decoration: underline;
		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: '– ';
	}
	*/

	#mainNav #footerSocial,
	#mobileSearch
	{
		display: none;
	}
}


@media (min-width: 1500px)
{
	#mainNav
	{
		right: 100px;
	}
}

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

@media (max-width: 1449px)
{

	#mainNav
	{
		background: linear-gradient(135deg, #074170 18%, #003768 18%);
	}

	#mainNav ul,
	#mainNav ul li
	{
		background: none;
	}

	#mainNav,
	#mainNav li ul
	{
		position: fixed;
		display: block;
		visibility: hidden;
		z-index: 99;
		top: 0;
		right: -1000px !important;
		left: auto !important;
		min-width: 30vw;
		width: 80vw;
		max-width: 720px;
		height: 100vh;
		padding: 105px 78px 10px;
		color: #ffffff;
		font-size: 30px;
		line-height: 36px;
		box-sizing: border-box;
		box-shadow: 0 0 200px 15px rgba(0,0,0,.8);
		overflow-x: scroll;
	}

	#mainNav li ul
	{
		background: #003768;
		/*font-size: 24px;
		line-height: 28px;*/
	}

	#mainNav li ul li
	{
		margin: 0 0 10px;
		font-size: 20px;
	}

	#mainNav .subNavHeader
	{
		text-transform: uppercase;
		font-weight: 700;
	}

	#mainNav #footerSocial
	{
		padding-top: 30px;
		border-top: 1px solid #ffffff;
	}

	#mainNav > ul > li
	{
		margin: 0 0 40px;
	}

	#mainNav > ul li > a
	{
		padding: 0 30px 0 0;
	}

	#mainNav li ul li a:after
	{
		top: -7px;
	}

	#mainNav li:hover > a
	{
		outline: none;
	}

	#mainNav::before
	{
		display: none;
	}

	#mainNav.target,
	#mainNav.target li ul
	{
		transition: right 0.5s;
	}

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

	#mainNav #subNavBack
	{
		position: absolute;
		top: 20px;
		font-weight: bold;
		text-transform: uppercase;
		font-size: .8em;
	}

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

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

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

	#mainNav li > a:first-child:not(:last-child)::after
	{
		content: '›';
		position: absolute;
		right: 5px;
		opacity: .4;
		font-size: 40px;
		line-height: 30px;
	}


	#mobileSearch
	{
		position: absolute;
		top: 26px;
		right: 90px;
		width: 29px;
		height: 30px;
	}

	#mobileSearch img
	{
		display: block;
		width: 29px;
		height: 30px;
	}

	/* Mobile Nav 'Hamburger' Button */

	button#navToggle
	{
		display: block;
		position: absolute;
		z-index: 100;
		top: 30px;
		right: 30px;
		line-height: 0px;
	}

	button#navToggle.isActive
	{
		position: fixed;
		right: 20px;
	}

	.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;
	}

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

	.mobileNav.isActive .mobileNavInner,
	.mobileNav.isActive .mobileNavInner:after,
	.mobileNav.isActive .mobileNavInner:before
	{
		background-color: #fff;
	}

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

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

	.mobileNavInner,
	.mobileNavInner:after,
	.mobileNavInner:before
	{
		position: absolute;
		width: 40px;
		height: 4px;
		background-color: #32b1e7;
		border-radius: 4px;
		transition-timing-function: ease;
		transition-duration: .15s;
		transition-property: transform;
	}

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

	.mobileNavInner:before
	{
		top: -10px;
	}

	.mobileNavInner:after
	{
		bottom: -10px;
	}


	/* 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 .mobileNavInner
	{
		top: -4px;
		transition: background-color 0s linear .13s;
	}

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

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

	.mobileNavSpring.isActive .mobileNavInner
	{
		transition-delay: .22s;
		background-color: transparent !important;
	}

	.mobileNavSpring.isActive .mobileNavInner:before
	{
		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 .mobileNavInner:after
	{
		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);
	}


	/* BORING - optional mobile nav button style */
	/* change #navToggle class to .mobileNavBoring in Page/Local */
	/*
	.mobileNavBoring .mobileNavInner,
	.mobileNavBoring .mobileNavInner:after,
	.mobileNavBoring .mobileNavInner:before
	{
		transition-property: none
	}

	.mobileNavBoring.isActive .mobileNavInner
	{
		transform: rotate(45deg)
	}

	.mobileNavBoring.isActive .mobileNavInner:before
	{
		top: 0;
		opacity: 0
	}

	.mobileNavBoring.isActive .mobileNavInner:after
	{
		bottom: 0;
		transform: rotate(-90deg)
	}
	*/


	/* SQUEEZE - optional mobile nav button style */
	/* change #navToggle class to .mobileNavSqueeze in Page/Local */
	/*
	.mobileNavSqueeze .mobileNavInner
	{
		transition-timing-function: cubic-bezier(.55, .055, .675, .19);
		transition-duration: 75ms;
	}

	.mobileNavSqueeze .mobileNavInner:before
	{
		transition: top 75ms ease .12s, opacity 75ms ease;
	}

	.mobileNavSqueeze .mobileNavInner:after
	{
		transition: bottom 75ms ease .12s, transform 75ms cubic-bezier(.55, .055, .675, .19);
	}

	.mobileNavSqueeze.isActive .mobileNavInner
	{
		transition-delay: .12s;
		transition-timing-function: cubic-bezier(.215, .61, .355, 1);
		transform: rotate(45deg);
	}

	.mobileNavSqueeze.isActive .mobileNavInner:before
	{
		top: 0;
		transition: top 75ms ease, opacity 75ms ease .12s;
		opacity: 0;
	}

	.mobileNavSqueeze.isActive .mobileNavInner:after
	{
		bottom: 0;
		transition: bottom 75ms ease, transform 75ms cubic-bezier(.215, .61, .355, 1) .12s;
		transform: rotate(-90deg);
	}
	*/


	/* ARROW - optional mobile nav button style */
	/* change #navToggle class to .mobileNavArrow in Page/Local */
	/*
	.mobileNavArrow.isActive .mobileNavInner:before
	{
		transform: translate3d(-8px, 0, 0) rotate(-45deg) scaleX(.7);
	}

	.mobileNavArrow.isActive .mobileNavInner:after
	{
		transform: translate3d(-8px, 0, 0) rotate(45deg) scaleX(.7);
	}
	*/


	/* ARROW ALT - optional mobile nav button style */
	/* change #navToggle class to .mobileNavArrowAlt in Page/Local */
	/*
	.mobileNavArrowAlt .mobileNavInner:before
	{
		transition: top .1s ease .1s, transform .1s cubic-bezier(.165, .84, .44, 1);
	}

	.mobileNavArrowAlt .mobileNavInner:after
	{
		transition: bottom .1s ease .1s, transform .1s cubic-bezier(.165, .84, .44, 1);
	}

	.mobileNavArrowAlt.isActive .mobileNavInner:before
	{
		top: 0;
		transition: top .1s ease, transform .1s cubic-bezier(.895, .03, .685, .22) .1s;
		transform: translate3d(-8px, -10px, 0) rotate(-45deg) scaleX(.7);
	}

	.mobileNavArrowAlt.isActive .mobileNavInner:after
	{
		bottom: 0;
		transition: bottom .1s ease, transform .1s cubic-bezier(.895, .03, .685, .22) .1s;
		transform: translate3d(-8px, 10px, 0) rotate(45deg) scaleX(.7);
	}
	*/


	/* SPIN - optional mobile nav button style */
	/* change #navToggle class to .mobileNavSpin in Page/Local */
	/*
	.mobileNavSpin .mobileNavInner
	{
		transition-timing-function: cubic-bezier(.55, .055, .675, .19);
		transition-duration: .22s;
	}

	.mobileNavSpin .mobileNavInner:before
	{
		transition: top .1s ease-in .25s, opacity .1s ease-in;
	}

	.mobileNavSpin .mobileNavInner:after
	{
		transition: bottom .1s ease-in .25s, transform .22s cubic-bezier(.55, .055, .675, .19);
	}

	.mobileNavSpin.isActive .mobileNavInner
	{
		transition-delay: .12s;
		transition-timing-function: cubic-bezier(.215, .61, .355, 1);
		transform: rotate(225deg);
	}

	.mobileNavSpin.isActive .mobileNavInner:before
	{
		top: 0;
		transition: top .1s ease-out, opacity .1s ease-out .12s;
		opacity: 0;
	}

	.mobileNavSpin.isActive .mobileNavInner:after
	{
		bottom: 0;
		transition: bottom .1s ease-out, transform .22s cubic-bezier(.215, .61, .355, 1) .12s;
		transform: rotate(-90deg);
	}
	*/


	/* COLLAPSE - optional mobile nav button style */
	/* change #navToggle class to .mobileNavCollapse in Page/Local */
	/*
	.mobileNavCollapse .mobileNavInner
	{
		top: 16px;
		transition-delay: .13s;
		transition-timing-function: cubic-bezier(.55, .055, .675, .19);
		transition-duration: .13s;
	}

	.mobileNavCollapse .mobileNavInner:after
	{
		top: -20px;
		transition: top .2s cubic-bezier(.33333, .66667, .66667, 1) .2s, opacity .1s linear;
	}

	.mobileNavCollapse .mobileNavInner:before
	{
		transition: top .12s cubic-bezier(.33333, .66667, .66667, 1) .2s, transform .13s cubic-bezier(.55, .055, .675, .19);
	}

	.mobileNavCollapse.isActive .mobileNavInner
	{
		transition-delay: .22s;
		transition-timing-function: cubic-bezier(.215, .61, .355, 1);
		transform: translate3d(0, -10px, 0) rotate(-45deg);
	}

	.mobileNavCollapse.isActive .mobileNavInner:after
	{
		top: 0;
		transition: top .2s cubic-bezier(.33333, 0, .66667, .33333), opacity .1s linear .22s;
		opacity: 0;
	}

	.mobileNavCollapse.isActive .mobileNavInner:before
	{
		top: 0;
		transition: top .1s cubic-bezier(.33333, 0, .66667, .33333) .16s, transform .13s cubic-bezier(.215, .61, .355, 1) .25s;
		transform: rotate(-90deg);
	}
	*/
}

@media (max-width: 650px)
{
	#mainNav,
	#mainNav li ul
	{
		padding: 105px 28px 10px;
		/*font-size: 24px;*/
	}
}


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

ul.subNavList
{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 40px;
	font-size: 18px;
}

ul.subNavList a
{
	text-decoration: none;
}

ul.subNavList a:not(:hover):not(:focus)
{
	color: #003768;
}

ul.subNavList li
{
	list-style: none;
	margin: 0 23px 5px 0;
	padding: 0;
}

ul.subNavList > li:first-child
{
	margin-right: 18px;
}

ul.subNavList > li:first-child a:after
{
	content: '>';
	margin-left: 18px;
}

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

ul.subNavList li.here > a,
ul.subNavList li.hereParent > a
{
	color: inherit;
}

ul.subNavList li
{
	display: flex;
}

ul.subNavList li ul,
ul.subNavList li ul li
{
	margin: 0;
	padding: 0;
}

ul.subNavList li ul
{
	display: none;
}

/*body.newsroom ul.subNavList li ul
{
	display: block;
}*/

ul.subNavList li ul li
{
	margin-left: 23px;
}

ul.subNavList li.here > a
{
	padding-bottom: 2px;
	border-bottom: 1px solid #cccccc;
}


/* Sub nav intro with images */

.subNavIntro
{
	margin: 50px 0;
}

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

.subNavIntro li
{
	position: relative;
	margin: 0 0 6px;
}

.subNavIntro li:first-child
{
	margin: 0 0 60px;
}

.subNavIntro ul
{
	display: flex;
	flex-wrap: wrap;
}

.subNavIntro p strong
{
	font-size: 26px;
	display: block;
	margin: 0 0 10px;
}

.subNavIntro .subnavimage
{
	overflow: hidden;
}

.subNavIntro .subnavimage img
{
	display: block;
	width: 100%;
	height: auto;
	transition: all 250ms ease;
}

.subNavIntro a:hover .subnavimage img,
.subNavIntro a:focus .subnavimage img
{
	transform: scale(1.05);
}

.subNavIntro .content
{
	position: absolute;
	bottom: 0;
	left: 0;
	padding: 0 0 42px 15px;
}

.subNavIntro .title
{
	margin: 0 0 20px;
	color: #ffffff;
	font-size: 24px;
	line-height: 28px;
}

/*.subNavIntro a:hover .title,*/
.subNavIntro a:focus .title
{
	color: #167DB1;
}

.subNavIntro .arrow
{
	width: 23px;
	height: 12px;
	background: url('../i/icon-arrow-blue.svgz') no-repeat; /* data-uri */
	background-size: 23px;
	height: 12px;
}


@media (min-width: 500px)
{
	.subNavIntro ul
	{
		display: flex;
		flex-wrap: wrap;
		margin: 0 -3px;
	}

	.subNavIntro ul li
	{
		width: calc(50% - 6px);
		margin: 0 3px 6px;
	}

	.subNavIntro ul li:first-child
	{
		width: 100%;
		margin: 0 3px 60px;
	}
}

@media (min-width: 768px)
{
	.subNavIntro .content
	{
		padding-left: 42px;
		padding-right: 42px;
	}
}

@media (min-width: 921px)
{

	.subNavIntro ul
	{
		justify-content: flex-end;
		align-items: center;
	}

	.subNavIntro ul li
	{
		width: calc(29% - 6px);
	}

	.subNavIntro ul li:first-child
	{
		width: 41.3%;
		padding-right: 50px;
		box-sizing: border-box;
	}
}

/* Tabs -------------------------------------------------------> */

/*#tabLinks
{
	margin: 1.5em 0 2em 0;
	border-bottom: 1px solid #003C5B;
}

#tabLinks a
{
	display: inline-block;
	position: relative;
	top: 1px;
	margin-right: 2px;
	padding: .5em 1em;
	border: 1px solid #003C5B;
}

#tabLinks .current
{
	border-bottom-color: white;
	color: inherit;
	text-decoration: none;
	cursor: default;
}

.contentSection
{
	display: none;
}

.sectionTitle
{
	display: none;
}

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

@media (max-width: 1300px)
{
	#tabLinks a
	{
		margin-right: 1px;
		padding: .4em 0.5em;
		font-size: 17px;
	}
}
*/
/*@media (max-width: 1024px)
{*/
	#tabLinks
	{
		display: none;
	}

	h2.sectionTitle
	{
		display: block;
		position: relative;
		box-sizing: border-box;
		text-decoration: none;
		cursor: pointer;
	}
/*
	h2.sectionTitle:hover,
	h2.sectionTitle:focus
	{
		background: #ccc;
	}

	h2.sectionTitle::after
	{
		content: '+';
		position: absolute;
		top: 17px;
		right: 10px;
		font-weight: lighter;
		font-size: 20px;
	}

	h2.sectionTitle.isOpen::after
	{
		content: '\2212';
	}
*/
	.contentSection
	{
		display: block !important;
	}

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

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


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

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

.itemTile .results_list
{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	position: relative;
}

.itemTile .results_list > * /* could be a div or li */
{
	display: flex;
	flex-direction: column;
	position: relative;
	width: calc(50% - 10px);
	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: #3874a8;
	font-weight: 700;
	font-size: 24px;
}

@media (max-width: 479px)
{
	.itemTile .results_list
	{
		display: block;
	}

	.itemTile .results_list > *
	{
		width: 100%;
	}
}


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

#content
{
	position: relative;
	min-height: 350px;
}

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

main
{
	position: relative;
	width: 100%;
	margin: 20px 0 0 0;
	padding: 0 0 20px 0;
	box-sizing: border-box;
}

#subContent
{
	position: relative;
	width: 100%;
	/*margin: 27px 0 0 0;*/
	/*padding: 20px 10px 50px 10px;*/
	box-sizing: border-box;
	font-size: 18px;
}

@media (min-width: 700px)
{

	main
	{
		margin: 0;
	}
}

@media (min-width: 920px)
{
	body.includeSubcontent #mainContent:not(:only-child)
	{
		float: left;
		width: calc(100% - 380px);
	}

	body.includeSubcontent #subContent
	{
		float: right;
		clear: right;
		width: 300px;
	}
}

@media (max-width: 919px)
{
	#content
	{
		display: flex;
		flex-direction: column;
	}

	main
	{
		order: 1;
	}

	#subContent
	{
		order: 2;
	}

	#subNav
	{
		order: 3;
	}
}

#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
{
	margin: 5px 0 8px 0;
	list-style: none;
}

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

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

/* hide all items for area, industry, and office 'professionals' */
/*#area_bio .results_list > li:nth-child(n+1),
#industry_bio .results_list > li:nth-child(n+1),
#office_bio .results_list > li:nth-child(n+1)
{
	display: none;
}
*/
#subContent .itemSection:not(#bio_education) ul,
#subContent .itemSection:not(#bio_education) ul li
{
	list-style: none;
	margin-left: 0;
}

#subContent .itemSection:not(:last-of-type)
{
	padding-bottom: 12px;
	margin: 0 0 25px;
	border-bottom: 1px solid #cccccc;
}

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

.itemSection ul.results_list li
{
	margin-left: 0;
	list-style: none;
}

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


/* Bio Directory */

#bioSearch form > div
{
	margin: 0 -6px;
	justify-content: flex-start;
}

#bioSearch form > div > div
{
	flex: 1 1 250px;
	margin: 0 3px 6px;
}

#bioSearch form > div > div:first-of-type
{
	flex-basis: 100%;
}

#bioSearch form > div > div:nth-of-type(2)
{
	flex: 1 1 218px;
}

#bioSearch form > div > div.submit_wrapper
{
	flex: 0 0 56px;
}

#bioSearch form input[type=submit],
#newsroomSearch form input[type=submit],
#newsroom-blogs input[type=submit]
{
	display: block;
	width: 0;
	height: 0;
	padding: 50px 0 0 60px;
	box-sizing: border-box;
	background:  url('../i/icon-search-white.svgz') center center no-repeat, #1ab7ea; /* data-uri */
	background-size: 24px 24px;
}

.intranet main input[type=submit]
{
	height: 50px;
	padding: 0 20px;
}

#bioSearch form input[type=submit]:hover,
#bioSearch form input[type=submit]:focus,
#newsroomSearch form input[type=submit]:hover,
#newsroomSearch form input[type=submit]:focus,
#newsroom-blogs input[type=submit]:hover,
#newsroom-blogs input[type=submit]:focus
{
	background-color: #002749;
}

.letterLinks
{
	margin: 10px 0 18px -9px;
	color: #999;
	font-weight: 300;
	font-size: 24px;}

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

.letterLinks a,
.letterLinks span
{
	display: inline-block;
	/*float: right;*/
	width: calc(100% / 26);
	text-align: center;
	font-weight: 400;
}

.letterLinks a:not(:hover):not(:focus)
{
	color: #003768;
	/*font-weight: 600;*/
}

/*.letterLinks > *:last-child
{
	width: calc(100% / 26 - 1px);
}*/

@media (min-width: 1150px)
{
	#bioSearch form > div > div
	{
		flex: 1 1 auto;
	}

	/* IE is so stupid */
	#bioSearch form > div > div:nth-last-child(2)
	{
		flex: 1 1 140px;
	}
}

@media (max-width: 1024px)
{


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

	.letterLinks > *:nth-child(12),
	.letterLinks > *:last-child
	{
		width: calc(100% / 13 - 1px);
	}
}

@media (min-width: 1280px)
{
	.letterLinks
	{
		text-align: right;
	}
}

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

ul.results_criteria li
{
	margin-left: 0;
}

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

.bioList > ul.results_list > li
{
	overflow: hidden;
	clear: both;
}

.bioList .photo
{
	float: left;
	width: 114px;
	margin-right: 25px;
}

.bioList .photo img
{
	display: block;
	width: 100%;
	height: auto;
}

.bioList > ul.results_list > li > *:not(.photo)
{
	margin-left: 139px;
}

.bioList > ul.results_list > li
{
	font-size: 18px;

	padding: 27px 0 27px 0;
	border-top: 1px solid #cccccc;
}

.bioList .nametitle
{
	margin: 0 0 6px;
}

.bioList .title
{
	margin: 0;
	font-size: 20px;
	line-height: 22px;
	color: #002749;
	font-weight: 700;
}

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

.bioList .position
{
	font-weight: 600;
	font-size: 18px;
	color: #666666;
}

.bioList .contact a
{
	padding-left: 30px;
	background: url('../i/icon-map.svgz') 2px center no-repeat; /* data-uri */
	background-size: 14px 19px;
}

.bioList .contact .email a
{
	background: url('../i/icon-email.svgz') left center no-repeat; /* data-uri */
	background-size: 18px 14px;
}

.bioList .contact .phone a
{
	background: url('../i/icon-phone.svgz') 1px center no-repeat; /* data-uri */
	background-size: 17px 17px;
}

@media (min-width: 768px)
{

	.bioList > ul.results_list > li
	{
		display: flex;
		align-items: center;
		padding: 27px 4px 27px 0;
		border-top: 1px solid #cccccc;
	}

	.bioList > ul.results_list > li > *:not(.photo)
	{
		margin: 0;
	}

	.bioList .photo
	{
		float: none;
		flex: 0 0 114px;
		margin-right: 45px;
	}

	.bioList .nametitle
	{
		flex: 0 1 462px;
		padding-right: 30px;
		box-sizing: border-box;
	}

	.bioList .contact
	{
		flex: 1 1 521px;
	}

	.bioList .arrow a
	{
		position: relative;
		display: block;
		width: 38px;
		height: 38px;
		background: #144774;
		border-radius: 50%;
	}

	.bioList .arrow a:after
	{
		content: '';
		position: absolute;
		top: 10px;
		left: 15px;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 8.5px 0 8.5px 12px;
		border-color: transparent transparent transparent #ffffff;
	}
}

@media (min-width: 1024px)
{

	.letterLinks
	{
		font-size: 22px;
		margin-left: 0;
	}

	.letterLinks a, .letterLinks span
	{
		width: auto;
		margin: 0 13px 0 0;
	}

	.bioList .title
	{
		margin: 0 0 6px;
		font-size: 26px;
		line-height: 28px;
	}
}

/* Bio Profile */

body.professionals-item #bannerImage
{
	position: absolute;
	top: 0;
	height: 100%;
}

body.professionals-item #bannerContent
{
	position: relative;
	padding: 130px 0 100px;
	left: 0;
}

body.professionals-item #content
{
	margin-bottom: 50px;
}

/*body.professionals-item #lowerContent
{
	margin-top: 50px;
}*/

#bio_content
{
	margin: 0 0 50px;
}

#bioPhoto
{
	margin: 0 0 40px;
	position: relative;
	transition: all 750ms 250ms;

	transform: scale(0);
	transform-origin: 0 0;
	overflow: hidden;
}

#bioPhoto:after
{
	content: '';
	position: absolute;
	width: 200%;
	height: 200%;
	background: #052039;
	opacity: 1;
	transition: all 950ms 850ms;
	transform: translate(-30%, -75%) rotate(45deg);

	/*transform: translate(100%, 125%) rotate(45deg);*/
}

.startAnimations #bioPhoto
{
	transform: scale(1);
}

.startAnimations #bioPhoto:after
{
	transform: translate(44%, -28%) rotate(45deg);
}

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

#bioInfoWrapper h1#pageTitle
{
	padding-bottom: 5px;
}

#bioTitle
{
	margin: 0 0 30px;
	font-size: 26px;
	color: #32b1e7;
	text-transform: uppercase;
	font-weight: 700;
}

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


ul#bioContact
{
	margin: 30px 0 0 0;
}

#bioContact a
{
	display: block;
}

ul#bioOffice a
{
	color: #32b1e7;
}

#bioEmail:hover,
#bioEmail:focus
{
	color: #32b1e7;
	text-decoration: none;
}

ul#bioOffice a:hover,
ul#bioOffice a:focus
{
	color: #ffffff;
	text-decoration: none;
}



ul#bioAccessories
{
	position: relative;
	right: -100px;
	opacity: 0;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	width: 282px;
	margin: 30px 0 60px 0;
	padding-bottom: 30px;

	transition: all 1350ms ease 1450ms;
}

ul#bioAccessories:after
{
	position: absolute;
	bottom: 0;
	left: 0;
	content: '';
	height: 14px;
	width: 100%;
	background: linear-gradient(to right, #0C4A82 66px, #32b1e7 66px);
}

#bioVcard a
{
	position: relative;
	display: block;
	width: 33px;
	height: 34px;
	overflow: hidden;
}

#bioVcard a img
{
	position: absolute;
	bottom: 0;
	display: block;
	width: 100%;
	height: auto;
}

#bioVcard a:hover img,
#bioVcard a:focus img
{
	top: -1px;
	bottom: auto;
}

#bioShare a
{
	position: relative;
	display: block;
	width: 24px;
	height: 19px;
	overflow: hidden;
}

#bioShare a img
{
	position: absolute;
	top: 0px;
	display: block;
	width: 100%;
	height: auto;
}

#bioShare a:hover img,
#bioShare a:focus img
{
	top: auto;
	bottom: 1px;
}

#bioPDF a
{
	position: relative;
	top: 6px;
	height: 100%;
	font-family: 'Trebuchet MS','Lucida Grande','Lucida Sans Unicode','Lucida Sans','Tahoma',sans-serif;
	font-weight: 700;
	font-size: 22px;
}

#bioLinkedin,
#bioTwitter
{
	font-size: 20px;
	line-height: 24px;
}

#bioTwitter
{
	line-height: 22px;
}

#bioLinkedin a:hover,
#bioTwitter a:hover,
#bioLinkedin a:focus,
#bioTwitter a:focus,
#bioPDF a:hover,
#bioPDF a:focus
{
	color: #32b1e7;
	text-decoration: none;
}


.badgeList img
{
	max-width: 100px;
}

.badgeList ul,
.badgeList ul li
{
	display: block;
	list-style: none;
	margin: 0;
	padding: 0;
}

.badgeList ul li
{
	display: inline-block;
	margin-right: 20px;
}

#bioInfo > *
{
	position: relative;
	left: -50px;
	opacity: 0;
	transition: all 500ms ease;
}

#bioInfoWrapper h1#pageTitle { transition-delay: 1050ms; }

#bioTitle { transition-delay: 1150ms; }

#bioContact { transition-delay: 1250ms; }

.startAnimations #bioInfo > *
{
	left: 0;
	opacity: 1;
}

.startAnimations ul#bioAccessories
{
	right: 0;
	opacity: 1;
}




@media (min-width: 500px)
{


	body.professionals-item #bannerContent
	{
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}


	#bioInfoWrapper
	{
		display: flex;
		align-items: center;
		justify-content: space-between;
		flex: 0 1 850px;
	}

	#bioPhoto
	{
		flex: 0 2 333px;
		margin: 0 30px 0 0;
	}

	#bioInfo
	{
		flex: 0 1 450px;
	}
}

@media (min-width: 768px)
{
	body.professionals-item #bannerContent
	{
		padding: 145px 0 120px;
	}
}


/* Practice List */



.serviceListing
{
	padding: 30px 20px;
	margin: 0 -15px 38px;
	background-size: cover !important;
	box-sizing: border-box;
}

#industryList
{
	margin-bottom: 0;
}

.serviceListing h2
{
	margin: 0 0 10px;
	color: #ffffff;
	text-transform: uppercase;
}

.serviceListing .listColumn a
{
	font-size: 18px;
	line-height: 18px;
	color: #ffffff;
}

.serviceListing .listColumn a:hover,
.serviceListing .listColumn a:focus
{
	color: #32b1e7;
}

div.listColumn
{
	columns: 2;
	column-width: 300px;
	margin-bottom: 1em;
}

div.listColumn > ul > li
{
	overflow: hidden;
	-webkit-column-break-inside: avoid;
	   page-break-inside: avoid;
		break-inside: avoid;
}

/* to force break at nth spot
div.listColumn > ul > li:nth-child(3)
{
	-webkit-column-break-after: always;
	   -moz-break-after: column;
		break-after: column;
}
*/

div.listColumn ul,
div.listColumn ul li
{
	list-style: none;
	list-style-image: none;
	margin: .25em 0;
	padding: 0;
	line-height: normal;
}

div.listColumn ul.hierList li
{
	font-weight: normal;
}

div.listColumn ul
{
	border-right: 2em solid transparent;
}

div.listColumn ul ul
{
	margin: .25em 0;
	border-right: none;
}

div.listColumn li li
{
	padding-left: 1em;
}

#practiceSearch
{
	margin: 0 0 40px;
}

#practiceSearch form > div
{
	display: block;
}

#practiceSearch input[type=text]
{
	height: 56px;
	padding-left: 0;
	border: none;
	border-bottom: 1px solid #cccccc;
	background: none;
}

#practiceSearch label
{
	padding-left: 0;
	font-size: 20px;
	font-weight: 700;
}

#practiceSearch button
{
	position: absolute;
	right: 4px;
	top: 16px;
	width: 24px;
	height: 24px;
	background: url('../i/icon-search-blue.svgz') no-repeat; /* data-uri */
	border: none;
	cursor: pointer;
}

#serviceContent
{
	margin: 0 0 60px;
}

@media (min-width: 768px)
{
	.serviceListing
	{
		margin-left: 0;
		margin-right: 0;
		padding: 50px;
	}
}

@media (min-width: 1024px)
{
	.serviceListing
	{
		padding: 50px 80px;
	}

	.serviceListing h2
	{
		font-size: 30px;
	}
}

/* Practice Profile */


body.services-item #preContent,
body.industries-item #preContent
{
	/*padding-bottom: 0;*/
	margin-bottom: 40px;
}

/*body.services-item #preContent:after,
body.industries-item #preContent:after
{
	display: none;
}*/


body.services-item #subContent,
body.industries-item #subContent
{
	margin-top: 10px;
}

body.services-item .contentSection:first-of-type,
body.industries-item .contentSection:first-of-type
{
	margin-top: 50px;
}

#subContent #itemTools
{
	justify-content: flex-end;
	margin: 0 0 70px;
}

#subContent #area_hierarchy ul li li
{
	margin-left: 20px;
}

#area_bio,
#industry_bio,
.areaContacts,
#item_bio
{
	border: none !important;
}

.areaContacts li
{
	margin-bottom: 18px !important;
}

.areaContacts.includePhotos li
{
	display: flex;
	gap: 15px;
}

.areaContacts li .photo img
{
	display: block;
	width: 75px;
	height: auto;
}

.areaContacts .title a
{
	color: #333;
	font-size: 0.9rem;
	font-weight: 700;
}

.areaContacts .title a:hover,
.areaContacts .title a:focus
{
	color: #167DB1;
}

.areaContacts .bioposition
{
	color: #777;
	font-size: 0.85rem;
	font-weight: 500;
}

.areaContacts .email,
.areaContacts .phone
{
	font-size: 0.8rem;
}

.areaContacts .email a 
{
    padding-left: 25px;
    background: url('../i/icon-email.svgz') 1px center no-repeat;
    background-size: 15px 15px;
}

.areaContacts .phone a 
{
    padding-left: 25px;
    background: url('../i/icon-phone.svgz') 1px center no-repeat;
    background-size: 15px 15px;
}


button#attorneyExpander
{
	padding: 0;
	border: none;
	cursor: pointer;
	background: none;
	position: relative;
	color: #ffffff;
	transition: all 150ms ease;
	cursor: pointer;
}

button#attorneyExpander:hover,
button#attorneyExpander:focus
{
	color: #002749;
}

button#attorneyExpander:hover img,
button#attorneyExpander:focus img
{
	opacity: .6;
}

button#attorneyExpander img
{
	display: block;
	width: 100%;
	height: auto;
	transition: all 150ms ease;
}

button#attorneyExpander div
{
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	padding: 28px;
	box-sizing: border-box;
}

button#attorneyExpander div h2
{
	position: relative;
	font-family: 'opensans', sans-serif;
	font-weight: 400;
	font-size: 16px;
	line-height: 16px;
	padding: 10px 30px 10px 12px;
	color: inherit;
	border: 1px solid currentColor;
}

button#attorneyExpander div h2:after
{
	position: absolute;
	right: 10px;
	top: 15px;
	display: block;
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 8px 6px 0 6px;
	border-color: #32b1e7 transparent transparent transparent;
	/*transition: all 150ms ease;*/
}

button#attorneyExpander.open div h2:after
{
	border-width: 0 6px 8px 6px;
	border-color: transparent transparent #007bff transparent;
}

button#attorneyExpander:hover div h2:after
{
	border-color: #002749 transparent transparent transparent !important;
}

button#attorneyExpander.open:hover div h2:after
{
	border-color: transparent transparent #002749 transparent !important;
}

button#attorneyExpander + div
{
	display: none;
}

@media (min-width: 1230px)
{

	body.services-item #preContent h1#pageTitle,
	body.industries-item #preContent h1#pageTitle
	{
		font-size: 55px;
		line-height: 55px;
		/*text-transform: uppercase;*/
	}
}

/* News/Pub/Event type Listing */


body#newsroom #preFooter
{
	margin: 0;
}

body#newsroom main
{
	padding-bottom: 0;
}

#newsroomSearch
{
	margin: 0 0 60px;
}


#newsroomSearch form > div
{
	margin: 0 -3px;
}

#newsroomSearch form > div > div
{
	flex: 1 1 200px;
	margin: 0 3px 6px;
}

#newsroomSearch .submit_wrapper
{
	flex: 1 1 60px;
	height: 50px;
}

.newsroomList li
{
	margin: 0 0 60px;
	list-style: none;
}

body#newsroom-news-archive .newsroomList .abstract
{
	font-size: 16px;
	line-height: 24px;
}

.newsroomList .staticimage img,
.newsroomList .image img
{
	display: block;
	width: 100%;
	height: auto;
}

.newsroomList .staticimage,
.newsroomList .image
{
	margin: 0 0 17px;
}

.newsroomList .newsinfo
{
	display: flex;
	margin: 0 0 10px;
	font-size: 14px;
	text-transform: uppercase;
	color: #757575;
	font-weight: 700;
}

.newsroomList .newsinfo > div + div:before
{
	content: '|';
	padding: 0 10px;
}

#newsroomBloglist h2
{
	margin-bottom: 15px;
	font-size: 32px;
}

.newsroomList .title,
#newsroomBloglist h3,
.xrefMultimediaList .title
{
	margin: 0 0 10px;
	line-height: 28px;
	color: #003768;
	font-weight: 700;
	font-family: 'Trebuchet MS','Lucida Grande','Lucida Sans Unicode','Lucida Sans','Tahoma',sans-serif;
}

.newsroomList .title a:not(:hover):not(:focus),
#newsroomBloglist h3 a:not(:hover):not(:focus)
{
	color: inherit;
}

.newsroomColumnList
{
	margin-bottom: 100px;
}

.newsroomColumnList li > div:last-child
{
	padding-bottom: 30px;
	border-bottom: 1px solid #cccccc;
}

/*.newsroomList .abstract
{
	font-size: 18px;
	line-height: 28px;
}*/

#newsroom-blogs .newsroomList .view_more,
#newsroomBloglist .view_more,
.newsroomList .view_more
{
	padding-top: 28px;
	/*margin-top: 70px;*/
	border-top: 1px solid #cccccc;
	text-transform: uppercase;
}

#newsroomBloglist .view_more,
#newsroom-blogs .newsroomList .view_more
{
	border-top: none;
}

#newsroomBloglist .view_more a,
.newsroomList .view_more a
{
	padding: 0;
	display: block;
	width: 74px;
	height: 32px;
	margin: 0 auto;
	text-align: center;
	font-size: 16px;
	line-height: 32px;
	font-weight: 700;
}

.archiveList ul li,
#newsroomBloglist li
{
	padding: 0 0 40px;
	margin: 0 0 35px;
	border-bottom: 1px solid #cccccc;
}

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

.view_more a:hover,
.view_more a:focus
{
	background: #ffffff;
	text-decoration: none;
	color: #003768;
	outline: 1px solid currentColor;
}

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

#subscribeForm
{
	position: relative;
	padding: 80px 0;
	margin: 80px 0 0 0;
	background: #002749;
	color: #ffffff;
}

#subscribeForm form
{

	width: 100%;
	max-width: 656px;
	margin: 0 auto;
}

#subscribeForm input[type=submit]
{
	background: none;
	border: 1px solid #32b1e7;
	color: #32b1e7;
	text-transform: uppercase;
	font-weight: 700;
	letter-spacing: 1px;
}

#subscribeForm input[type=submit]:hover,
#subscribeForm input[type=submit]:focus
{
	color: #ffffff;
	border-color: #ffffff;
}


#subscribeForm label
{
	position: absolute;
	top: 5px;
	padding: 8px 0 0 51px;
	font-size: 14px;
}

#subscribeForm #submit_wrapper
{
	flex: 0 0 auto;
}

#subscribeForm input[type=email]
{
	padding: 8px 0 0 51px;
	border: none;
	border-bottom: 1px solid #666666;
	background: none;
	color: #ffffff;
	font-size: 20px;
	background: url('../i/icon-email-form.svgz') left 16px no-repeat; /* data-uri */
	background-size: 33px 28px;
}

#subscribeForm #sideEmailField
{
	width: 100%;
	flex: 0 0 auto;
	margin: 0 0 20px;
}

@media (min-width: 600px)
{
	.newsroomColumnList ul
	{
		columns: 2;
		column-gap: 42px;
		/*display: flex;
		flex-wrap: wrap;
		justify-content: center;
		margin: 0 -11px;*/
	}

	.newsroomColumnList li
	{
		break-inside: avoid-column;
		display: inline-block;
		width: 100%;
		/*width: calc(50% - 22px);
		margin: 0 11px 60px;*/
	}

	#subscribeForm label
	{
		font-size: 20px;
	}
}

@media (min-width: 768px)
{

	#subscribeForm form > div
	{
		justify-content: space-between;
	}

	#subscribeForm #sideEmailField
	{
		flex-basis: auto;
		width: calc(100% - 104px);
		margin: 0;
	}

	#subscribeForm #submit_wrapper
	{
		margin: 16px 0 0 0;
	}
}


@media (min-width: 920px)
{

	#newsroomSearch form > div > div
	{
		flex: 1 1 113px;
		margin: 0 3px 6px;
	}

}


@media (min-width: 1024px)
{

	.newsroomColumnList ul
	{
		columns: 3;
		column-gap: 84px;
		/*margin: 0 -42px;*/
	}

	.newsroomColumnList li
	{
		/*display: inline-block;*/
		/*width: calc(100%/3 - 84px);
		margin: 0 42px 44px;*/
	}

	.newsroomColumnList .abstract
	{
		padding-bottom: 50px;
		border-bottom: 1px solid #cccccc;
	}
}

/* News/Pub/Event type Profile */

#preContent
{
	position: relative;
	padding-bottom: 40px;
	margin-bottom: 50px;
}

#preContent h1#pageTitle/*,
body.services-item h1#pageTitle,
body.industries-item h1#pageTitle*/
{
	text-transform: none;
}

#preContent:after
{
	position: absolute;
	bottom: 0;
	left: 0;
	content: '';
	display: block;
	height: 9px;
	margin-top: 40px;
	width: 100%;
}

#itemInfo
{
	display: flex;
	flex-wrap: wrap;
	font-size: 18px;
	text-transform: uppercase;
	font-family: 'Trebuchet MS','Lucida Grande','Lucida Sans Unicode','Lucida Sans','Tahoma',sans-serif;
	color: #666666;
}

#itemInfo > div:not(:last-child):after
{
	content: '|';
	padding: 0 10px;
}

div.sponsor
{
	font-size: 18px;
	color: #666666;
}

#itemTools
{
	display: flex;
}

#itemTools #pdfLink
{
	display: block;
	width: 26px;
	height: 26px;
	margin-right: 12px;
	background: url('../i/icon-pdf.svgz') left top no-repeat; /* data-uri */
	background-size: 26px 52px;
}

#itemTools #pdfLink:hover,
#itemTools #pdfLink:focus
{
	background-position: left bottom;
}

#itemShare a
{
	position: relative;
	top: 3px;
	display: block;
	width: 23px;
	height: 18px;
	background: url('../i/icon-share2.svgz') left top no-repeat; /* data-uri */
	background-size: 23px 36px;
}

#itemShare a:hover,
#itemShare a:focus
{
	background-position: left bottom;
}

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

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

#item_related
{
	margin-top: 40px;
}

#item_related > h2
{
	margin: 0 0 20px;
}

#item_related .itemHeader
{
	display: flex;
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	color: #999999;
}

#item_related .itemHeader div + div:before
{
	content: '|';
	padding: 0 8px;
}

#item_related .title
{
	font-size: 20px;
	font-family: 'Trebuchet MS','Lucida Grande','Lucida Sans Unicode','Lucida Sans','Tahoma',sans-serif;
	color: #003768;
}

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

.pdfLink
{
	z-index: 2;
}

@media (min-width: 768px)
{

	#preContent
	{
		padding-right: 100px;
	}

	.pdfLink,
	#preContent #itemTools
	{
		position: absolute;
		top: 5px;
		right: 0;
	}

	.pdfLink
	{
		padding-left: 100px;
	}
}

@media (min-width: 1230px)
{
	#preContent h1#pageTitle
	{
		font-size: 40px;
		line-height: 50px;
		padding-bottom: 5px;
	}
}

/* Contact Main Listing */

body#contact-offices #footerOffices ul
{
	font-size: 20px;
	line-height: 28px;
	columns: unset;
	font-family: 'Trebuchet MS','Lucida Grande','Lucida Sans Unicode','Lucida Sans','Tahoma',sans-serif;
}

body#contact-offices #footerOffices a:not(:hover):not(:focus)
{
	color: #ffffff;
}

body#contact-offices #footerOffices a:hover,
body#contact-offices #footerOffices a:focus
{
	color: #1ab7ea;
}

body#contact-offices
{
	display: flex !important;
	flex-direction: column;
}

body#contact-offices #content
{
	min-height: 0px;
}

body#contact-offices main
{
	padding: 0;
}

body#contact-offices #lowerContent
{
	margin-top: 0;
	order: 2;
}

body#contact-offices #preFooter
{
	order: 1;
}

body#contact-offices #footer
{
	order: 3;
}

@media (min-width: 768px)
{


	body#contact-offices #preFooter
	{
		display: flex;
		padding-left: 0;
		justify-content: flex-end;
		/*background-size: 100% !important;*/
		background-size: contain !important;
		background-position: -150px center !important;
		height: 40vw;
		min-height: 500px;
		max-height: 843px;
	}

	body#contact-offices #preFooter::before
	{
		background-color: #004677;
	}

	body#contact-offices #footerOffices
	{
		flex: 0 0 auto;
		width: 45%;
		padding-left: 32px;
		border-left: 1px solid #29658e;
		box-sizing: border-box;
	}
}

@media (min-width: 1550px)
{
	body#contact-offices #preFooter
	{
		height: 40vw;
		align-items: flex-start;
		padding-top: 75px;
		background-size: 80% !important;
		background-position: left center !important;
	}

	body#contact-offices #footerOffices
	{
		width: 30%;
	}

	body#contact-offices #footerOffices li
	{
		font-size: 24px;
		margin: 0 0 24px;
	}
}


@media (max-width: 767px)
{
	body#contact-offices #preFooter
	{
		background-size: 100% !important;
		background-position: 100px top !important;
	}

	body#contact-offices #preFooter::before
	{
		background-color: #004677;
	}
}

/* Office Profile Pages */

#officeBanner,
#mapBioBanner
{
	position: relative;
	width: 100vw;
	left: calc(50% - 50vw);
	margin-top: 40px;
}

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

#officeInfo
{
	padding: 30px 15px;
	background: rgba(41,43,45, .7);
	color: #ffffff;
	box-sizing: border-box;
}

#officePDF
{
	display: block;
	width: 26px;
	height: 26px;
	margin: 10px 0 0 0;
	background: url('../i/icon-pdf-white.svgz') center top no-repeat; /* data-uri */
	background-size: 26px 52px;
}

#officePDF:hover,
#officePDF:focus
{
	background-position: center bottom;
}

#mapBioBanner
{
	margin-top: 6px;
	margin-bottom: 65px;
}

#mapBioBanner > div
{
	margin-bottom: 6px;
	background: #f3f3f3;
}

#mapBioBanner > div + div
{
	padding: 45px 20px 20px;
	box-sizing: border-box;
}

#office_biocontact ul,
#office_biocontact li
{
	clear: both;
	margin: 0;
	list-style: none;
}

#office_biocontact li
{
	overflow: hidden;
	margin: 0 0 31px;
	font-size: 18px;
}

#office_biocontact .photo
{
	width: 112px;
	float: left;
	margin-right: 25px;
}

#office_biocontact .photo img
{
	display: block;
	width: 100%;
	height: auto;
}

#officeBanner .sp_pencil
{
	position: absolute;
	z-index: 1;
	top: 20px;
	left: 20px;
}

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


@media (min-width: 768px)
{


	#mapBioBanner
	{
		display: flex;
		justify-content: space-between;
	}

	#mapBioBanner > div
	{
		width: calc(50% - 3px);
	}

	#mapBioBanner > div + div
	{
		padding: 54px 54px 20px;
	}
}

@media (min-width: 920px)
{

	#officeInfo
	{
		display: flex;
		align-items: center;
		position: absolute;
		right: 0;
		top: 0;
		width: 50%;
		height: 100%;
		z-index: 1;
		font-size: 16px;
	}

	#officeInfo > div
	{
		display: flex;
	}

	#officeAddress
	{
		margin-right: 50px;
	}

	#officePDF
	{
		position: absolute;
		top: 0;
		right: 40px;
	}
}

@media (min-width: 1280px)
{

	#officeInfo
	{
		padding: 55px;
		font-size: 20px;
	}

	#officeInfo > div
	{
		position: absolute;
		width: 100%;
		max-width: 556px;
		display: block;
	}
}

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

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

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

form > div
{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

form > div > div
{
	position: relative;
	flex-basis: calc(50% - 0.5%);
	margin: 0 0 1% 0;
}

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

form > div > div.textarea_wrapper
{
	flex-basis: 100%;
	width: calc(100% - 12px);
}

form > div > div.checkbox_wrapper
{
	flex-basis: 100%;
	padding: 5px 0 10px 0;
}

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

label
{
	display: block;
}

/* side signup form */
form > div.sideForm > div
{
	position: relative;
	flex-basis: 100%;
	margin: 0 0 1% 0;
}
.sideForm label
{
	font-size: .75em;
}

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
{
	margin: 6px 6px 0 0;
	padding: 0;
	align-self: flex-start;
}

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
{
	flex-basis: 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 > div.submit_wrapper
{
	/* flex-basis: 100%;  uncomment if you want this on its own line */
}

/* WebForm uses an id */
#submit_wrapper
{
	flex-basis: 100%;
}

form > p
{
	flex-basis: 100%;
}

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

/* 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]
{
	-webkit-appearance: none;
	border-radius: 0;
}

input:not([type]),
input[type=text],
input[type=tel],
input[type=email],
input[type=password],
textarea,
select,
.customSelect
{
	width: 100%;
	min-height: 50px; /* appease IE11 */
	margin: 0;
	padding: 8px 17px;
	color: #333333;
	background-color: #f3f3f3;
	border: none;
	font: normal 18px/1.8 Helvetica, Arial, sans-serif;
	box-sizing: border-box;
}

option
{
	font-size: 16px;
}

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
{
	position: absolute;
	padding: 8px 17px;
	color: #333333;
	font: normal 18px/1.8 Helvetica, Arial, sans-serif;
}

select
{
	color: #f3f3f3; /* make '-All-' camouflaged until customSelect takes over */
}

.customSelect
{
	display: block !important;
	overflow: hidden;
	padding-right: 40px;  /* make room for the arrow */

	position: relative;
}

select
{
	width: 100% !important;
}

.customSelect::after
{
	content: '';
	display: block;
	position: absolute;
	top: 22px;
	right: 10px;

	/* http://apps.eky.hk/css-triangle-generator/ */
	width: 10px;
	height: 5px;
	background: url('../i/icon-select.svgz') no-repeat; /* data-uri */
	background-size: 10px 5px;
	/*border-style: solid;
	border-width: .5em .5em 0 .5em;
	border-color: currentColor transparent transparent transparent;*/
}

/* this makes sure the invisible select always floats above */
select.hasCustomSelect
{
	z-index: 1;
	color: inherit /* we made this white to be camouflaged on load, but now must return to prev color */
}

.customSelectInner
{
	display: inline !important;
	white-space: nowrap;
}

input[type=text]:focus,
input[type=tel]:focus,
input[type=email]:focus,
input[type=password]:focus,
textarea:focus,
.customSelectFocus
{
	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],
a.viewAll,
.packet_add a,
a.packet-delete-button
{
	box-sizing: border-box;
	width: auto;
	height: 34px;
	margin: 0 0 10px 0;
	padding: 1px 14px 1px 14px;

	border: 0 solid #d6d6d6;

	background: #1ab7ea;
	color: #fff;
	font: normal 16px/1.8 Helvetica, Arial, sans-serif;
	cursor: pointer;

	vertical-align: top;
}

a.clearAll
{
	float: right;
}

a.viewAll,
.packet_add a,
a.packet-delete-button
{
	display: inline-flex;
	align-items: center;
}

input[type=submit]:hover,
input[type=submit]:focus,
a.viewAll:hover,
a.viewAll:focus,
.packet_add a:hover,
.packet_add a:focus,
a.packet-delete-button:hover,
a.packet-delete-button:focus
{
	background: #868686;
	text-decoration: none;
}


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

#emailField
{
	display: none;
}

@media (max-width: 479px)
{
	form > div > div
	{
		flex-basis: 100%;
	}
}


/* 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;
	/* white-space: nowrap; */
	line-height: 120%;
}

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

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

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


#lowerContent
{
	position: relative;
	margin-top: 30px;
	padding: 50px 0;
	background: #f3f3f3;
}

/* Pre-footer --------------------------------------------------------> */

#preFooter
{
	position: relative;
	z-index: 1;
	padding: 50px 0;
	margin-top: 50px;
	background-size: cover !important;
	background-position: center !important;
	box-sizing: border-box;
}

#lowerContent ~ #preFooter
{
	margin-top: 0;
}

.lowerStaticText > *:not(a)
{
	color: #ffffff;
}

#preFooter a:hover,
#preFooter a:focus
{
	color: #ffffff;
	text-decoration: none;
}

#footerOffices
{
	font-size: 14px;
	line-height: 18px;
	text-transform: uppercase;
}

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

#footerOffices li
{
	margin: 0 0 15px;
	font-weight: 700;
	letter-spacing: 1px;
}

#footerOffices a
{
	color: #15BDF6;
}

@media (min-width: 768px)
{
	#preFooter
	{
		min-height: 414px;
		padding-left: 20vw;
	}
}

@media (min-width: 920px)
{
	#preFooter
	{
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	.lowerStaticText
	{
		flex: 0 2 570px;
		margin-right: 40px;
	}

	#footerOffices
	{
		flex: 0 1 170px;
		padding-left: 28px;
		border-left: 1px solid #29648d;
	}
}

@media (min-width: 1280px)
{
	#preFooter
	{
	}
}

@media (max-width: 919px)
{


	#footerOffices ul
	{
		columns: 2;
	}
}

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

#footer
{
	position: relative;
	width: 100vw;
	left: calc(50% - 50vw);
	margin: 0 0 0 0;
	padding: 40px 20px;
	background: #292b2d;
	box-sizing: border-box;
	color: #e7e2da;
	font-size: 16px;
	z-index: 1;
}

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

#footerRight
{
	margin-left: auto;
}

#footer a
{
	color: #e7e2da;
}

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

#footer > ul li
{
	margin: 0 1em 1em 0;
	line-height: normal;
	font-size: 14px;
	text-transform: uppercase;
	color: #BABABA;
}

#footer > ul li a:not(:hover):not(:focus)
{
	color: inherit;
}

#footer p
{
	margin: 0;
	padding: 0;
	font-size: 14px;
}

#footerSocial
{
	width: 100%;
	margin: 0 0 30px;
}

#footerSocial a
{
	color: #1ab7ea;
	font-size: 20px;
	line-height: 19px;
}

#footerSocial a:hover,
#footerSocial a:focus,
#mainNav #footerSocial a:hover,
#mainNav #footerSocial a:focus
{
	color: #ffffff;
	text-decoration: none;
}

#footerSocial ul
{
	width: 100%;
	max-width: 380px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#footerSocial ul li#subscribeLink a
{
	display: block;
	padding: 0 7px;
	color: #ffffff;
	font-weight: 700;
	text-transform: uppercase;
	font-size: 14px;
	line-height: 24px;
	background: #1ab7ea;
}

#footerSocial ul li#subscribeLink a:hover,
#footerSocial ul li#subscribeLink a:focus
{
	color: #1ab7ea;
	background: #ffffff;
}

#footerSocial ul li:not(:first-child) a
{
	display: block;
	height: 22px;
	width: auto;
}

#footerSocial ul li:not(:first-child) a img
{
	display: block;
	width: auto;
	height: 100%;
}

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

	#footerSocial
	{
		width: auto;
		flex: 0 2 380px;
		padding-right: 30px;
	}

	#footer > ul
	{
		flex: 1 5 750px;
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-end;
		margin-left: 30px;
	}
}

@media (min-width: 1280px)
{
	#footer
	{
		padding-left: 5vw;
		padding-right: 5vw;
	}
}


/* 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: none;
	position: fixed;
	top: calc(50% - 40vh);
	left: calc(50% - 40vw);
	z-index: 99999999;
	height: 80vh;
	width: 80vw;
	background: #fff;
	border: 12px solid #cecece;
	color: #fff;
}

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

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

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

.popupPlayerWrapper.playerWithSidebar .mediaPlayer
{
	width: 75% !important;
}

.popupPlayerWrapper.playerWithPlaylist .mediaPlayer
{
	height: 75% !important;
}

@media all and (orientation: portrait)
{
	.popupPlayerWrapper
	{
		left: calc(50% - 45vw);
		top: calc(50% - 20vh);
		width: 90vw;
		height: 40vh;
	}
}

span.popupPlayerClose
{
	display: block;
	position: absolute;
	z-index: 25;
	top: -15px;
	right: -15px;
	border-radius: 50%;
	width: 18px;
	height: 18px;
	background: #333;
	color: #f1f1f1;
	font-size: 18px;
	line-height: 1;
	text-align: center;
	cursor: pointer;
}

span.popupPlayerClose:hover,
span.popupPlayerClose:focus
{
	background: #000;
	color: #fff;
}

.popupPlayerPlaylist
{
	display: none;
	position: absolute;
	z-index: 10;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 25%;
	max-width: 100%;
	overflow: hidden;
	background: #f5f5f5;
}

.popupPlayerWrapper.playerWithPlaylist.playerWithSidebar .popupPlayerPlaylist
{
	width: 75%;
	max-width: 75%;
}

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

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

.popupPlayerPlaylist ul
{
	position: relative;
	left: 0;
	list-style: none;
	min-width: 100000px;
	overflow: hidden;
	margin: 0;
	padding: 0;
}

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

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

.popupPlayerPlaylist ul li a
{
	display: block;
	width: 100%;
}

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

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

.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;
	border-top: 5px solid #f5f5f5;
	border-bottom: 5px solid #f5f5f5;
	background: #d8d8d8;
	text-align: center;
}

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

a#playlistPrev
{
	left: 0;
	border-left: 2px solid #f5f5f5;
}

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

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: 10;
	top: 0;
	right: 0;
	width: 25%;
	height: 100%;
	overflow: hidden;
	overflow-y: auto;
	background: #f5f5f5;
}

.popupPlayerSidebar > div
{
	padding: 10px 16px 10px 16px;
}

.popupPlayerSidebar h2
{
	font-size: 22px;
	line-height: 26px;
}

.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;
}

.itemMultimediaList ul.results_list li,
.popupPlayerSidebar > div ul li
{
	margin: 3px 0 4px 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: 100%;
	height: auto;
}

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

.itemMultimediaList ul.results_list li .photo,
.xrefMultimediaList ul li .photo
{
	position: relative;
	z-index: 1;
	display: inline-block;
	/*float: left;*/
}

.xrefMultimediaList ul li
{
	margin-bottom: 30px;
}

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

.itemMultimediaList ul.results_list li .photo
{
	margin-right: 10px;
}

#mainContent .xrefMultimediaList ul li .videomore,
#mainContent .xrefMultimediaList ul li .title,
#mainContent .xrefMultimediaList ul li .abstract
{
	/*margin: 0 0 0 150px;*/
}

#item_relatedsame .results_list > li:nth-child(n+1)
{
	display: none;
}

#subContent #item_relatedsame ul.results_list
{
	margin: 0 0 8px 0;
}

.title .videoMore
{
	display: block;
	/*margin-left: 6px;*/
	font-weight: 400;
	font-family: 'opensans';
}

#item_itemvideo .photo
{
	position: relative;
	display: inline-block;
}

.photo .triggerPopupPlayer,
.photo .triggerPopupPlayer img
{
	display: block;
}

/* start player icon - only edit attributes in this first block! */
.photo .triggerPopupPlayer:before,
.photo .triggerPopupPlayer:after
{
	/* font-size here is the full width/height of the icon */
	font-size: 70px;

	/* color sets the solid color of the icon */
	color: white;

	/* set shadow and background of the icon */
	box-shadow: 0 0 2px 0 black;
	background: rgba(0,0,0,.3);

	/* set the relative size of the triangle inside the circle */
	transform: scale(.5);
	/* left position of inner triangle, will need to adjust slightly based on scale */
	left: calc(50% - .35em);

	/* don't edit */
	content: '';
	display: block;
	position: absolute;
	top: calc(50% - 0.5em);
}

.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 */
	border: .05em solid currentColor;
	border-radius: 50%;
	top: calc(50% - 0.5em);
	left: calc(50% - 0.5em);
	width: 1em;
	height: 1em;
	box-sizing: border-box;
	transform: none;
}

.photo .triggerPopupPlayer:after
{
	width: 0;
	height: 0;
	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;

	background: none;
	box-shadow: none;
}
/* end player icon*/


/* Cookie popup -------------------------------------------------> */

#cookiePopup
{
	display: none;
	position: fixed;
	left: 0;
	bottom: 0;
	right: 0;
	width: calc(100%);
	overflow: hidden;
	z-index: 9999;
	background: rgba(0,0,0,.85);
	padding: .25em 3em .25em 1em;
	box-sizing: border-box;
}

#cookiePopup p
{
	margin: 1em;
	padding: 0;
	color: #ccc;
	float: left;
	max-width: calc(100% - 100px);
}

.closeButton
{
	position: absolute;
	top: 10px;
	right: 14px;
	width: 0;
	height: 0;
	font-size: 0;
	padding: 20px 20px 0 0;
	overflow: hidden;

	border: 2px solid #fff;
	background-color: #ddd;
	border-radius: 50%;
	cursor: pointer;

	color: #999;
	font-size: 0px;
}

.closeButton::before,
.closeButton::after
{
	position: absolute;
	top: 9px;
	left: 3px;
	width: 14px;
	height: 3px;
	content: "";
	background-color: currentColor;
	transform: rotate(-45deg);
}

.closeButton::after,
.closeButton::after
{
	transform: rotate(45deg);
}

.closeButton:hover,
.closeButton:focus
{
	color: #262626;
}

@media (max-width: 767px)
{
	.closeButton
	{
		top: 10px;
	}

	#cookiePopup p
	{
		margin: 0.4em 0 0.2em 0;
		max-width: calc(100% - 18px);
	}
}


/* Email Popup Support -------------------------------------------------> */

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

#emailPopup
{
	display: none;
	position: fixed;
	z-index: 99999999;
	top: calc(50% - 30vh);
	left: calc(50% - 30vw);
	height: 60vh;
	width: 60vw;
	background: #fff;
	border: 12px solid #cecece;
}

#emailDisclaimerContentWrapper
{
	padding: 20px 20px 0 20px;
}

#emailDisclaimerButtons
{
	text-align: center;
}

#emailDisclaimerButtons a
{
	display: inline-block;
	margin: 10px;
	padding: 4px 6px;
	background: #3874a8;
	color: #fff;
	text-align: center;
}

#emailPopupClose
{
	position: absolute;
	top: -28px;
	right: -28px;
}

@media all and (orientation: portrait)
{
	#emailPopup
	{
		left: 5%;
		width: 90%;
		box-sizing: border-box;
	}

	#emailPopupContent
	{
		height: 100%;
		overflow: scroll;
	}
}

@media (max-width: 767px)
{
	#emailPopup
	{
		top: calc(50% - 40vh);
		height: 80vh;
	}
}


/*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 */

p.form-section-label
{
	margin: 1em 0 0 0;
	padding: 0;
	font-weight: bolder;
}

.search_text
{
	display: block;
	margin: 1em 0 1em 0;
}

#search_button
{
	margin-left: 8px;
}

#intranet-search main .search_form form div,
#search main .search_form form div
{
	height: auto;
	width: 100%;
}

#intranet-search main .search_form input,
#search main .search_form input
{
	margin: 0;
	vertical-align: middle;
}

#intranet-search main .search_form br,
#search main .search_form br
{
	display: none;
}

#intranet-search main .search_form label,
#search main .search_form label
{
	display: block;
	position: relative;
	top: 0;
	left: 0;
	margin: -21px 0 0 0;
	padding: 0 0 0 20px;
	vertical-align: middle;
	font: normal 16px/1.4 Helvetica, Arial, sans-serif;
}

#intranet-search main .search_form input[type=radio],
#intranet-search main .search_form input[type=checkbox],
#search main .search_form input[type=radio],
#search main .search_form input[type=checkbox]
{
	margin: 5px 4px 0 0;
	padding: 0;
}

#intranet-search main .search_form input#searchtext,
#search main .search_form input#searchtext
{
	width: 60%;
	max-width: 100%;
	margin-right: 4px;
	box-sizing: border-box;
}

div.search_section_wrapper
{
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
}

div.sections
{
	box-sizing: border-box;
	max-width: 30%;
}

div.search_type
{
	box-sizing: border-box;
}

#subContent div.search_section_wrapper
{
	flex-direction: column;
}

#subContent div.sections
{
	max-width: 100%;
}

#intranet-search #subContent form > div > div,
#search #subContent form > div > div
{
	flex-basis: auto;
}

#intranet-search .search_result_date,
#search .search_result_date
{
	color: #888;
}


@media (max-width: 767px)
{
	#search div.search_section_wrapper
	{
		flex-direction: column;
	}

	#search div.sections
	{
		max-width: 100%;
	}

	.searchBioWrapper > div > div
	{
		flex-direction: column;
	}

	#search main .search_form input#searchtext
	{
		width: 100%;
	}

	#search main .search_form input[type=submit]
	{
		margin-top: 9px;
		width: 100%;
	}
}

#search div.sections input,
#search div.search_type  input
{
	border: 0;
}

#search a.more
{
	font-weight: bolder;
}

.searchfoundtext
{
	font-weight: bolder;
}

#search p
{
	padding-top: 0;
	padding-bottom: 0;
	margin-top: 2px;
	margin-bottom: 18px;
}

#search p.link
{
	padding-top: 5px;
	padding-bottom: 0;
	margin-bottom: 0;
}

#search #mainContent h3
{
	margin-top: 1em;
	margin-bottom: .5em;
	padding: 0;
}

#search .view_more a
{
	position: relative;
	padding: 7px 36px 7px 36px;
}

#search .searchHeader
{
	border-bottom: 1px solid #a69e9d;
	margin: 0;
	padding: 0;
}

#search #searchTabLinks div
{
	border-top: 1px solid #a69e9d;
	margin: 0;
	padding: 6px 0;
}

#search #searchTabLinks a
{
	color: #666;
}
#search #searchTabLinks a span
{
	color: #3874a8;
}

#search #searchTabLinks .form-section-label
{
	border: none;
	margin-top: 27px;
	font-weight: bold;
}

#search #searchResultsFor span
{
	font-weight: bold;
	color: #004461;
	text-transform: uppercase;
}

#search #searchResultsFor
{
	border-bottom: 1px solid #a69e9d;
	margin: 0;
	padding: 0 0 9px 0;
}

/* Bio section search results */
.searchBioWrapper div.results_list > div
{
	display: flex;
	margin-bottom: 18px;
}

.searchBioWrapper .photo
{
	padding: 0 0 9px 0;
	margin: 0;
}

.searchBioWrapper .photo img
{
	padding: 0 27px 0 0;
}

.searchBioWrapper .divider
{
	border-top: 2px solid #a69e9d;
	margin: 18px 0;
	max-width: 250px;
}
.searchBioWrapper:not(:last-of-type)
{
	border-bottom: 1px solid #a69e9d;
	margin: 0 0 32px 0;
}


/* Example Styles Support */

table#fontReference
{
	width: 100%;
	margin: 0 0 38px 0;
	font-size: 80%;
	/*white-space: nowrap;*/
	line-height: 1;
}

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: #3874a8;
	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;
	font: inherit;
	text-align: left;
	cursor: pointer;
	color: #3874a8;
}


/* Newsletter Object Support */

.newsletter-unsubscribe-form blockquote
{
	margin-left: 0;
	margin-right: 0;
}


/* Blogs ----------------------------------------------------------> */

#newsroom-blogs input[type=submit]
{
	font-size: 0px;
}


h2.blogTitle
{
	margin: 30px 0 20px;
	color: #333333;
}

h2.blogTitle a:not(:hover):not(:focus)
{
	color: inherit;
}

h2.blogTitle a:not(.sp_pencil):after
{
	position: relative;
	left: 8px;
	top: -1px;
	content: '';
	display: inline-block;
	width: 23px;
	height: 12px;
	background: url('../i/icon-arrow-blue.svgz') no-repeat;
	background-size: 23px 12px;
}

h2.blogTitle + .newsroomList
{
	margin: 0 0 60px;
}

body.blog #bannerImage
{
	height: 500px;
}

body.blog #bannerContent
{
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	height: 100%;
}

body.blog #bannerContent p:last-child
{
	margin: 0;
}

#blogBannerText
{
	max-width: 800px;
}

#blogSubtitle
{
	margin: 0 0 10px;
	font-size: 26px;
	text-transform: uppercase;
	color: #32b1e7;
}

.blog .search_form div
{
	float: none;
}

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

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

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

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

.blogPosts div.title
{
	font-size: 24px;
	line-height: 32px;
	font-weight: 700;
	font-family: 'Trebuchet MS','Lucida Grande','Lucida Sans Unicode','Lucida Sans','Tahoma',sans-serif;
}

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

.blogPosts .byline
{
	margin-bottom: 15px;
	font-size: 18px;
	font-weight: 700;
	text-transform: uppercase;
	color: #666666;
	font-family: 'Trebuchet MS','Lucida Grande','Lucida Sans Unicode','Lucida Sans','Tahoma',sans-serif;
}

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

.blogPosts .postFooter
{
	display: flex;
}

.blogPosts .socialshare
{
	flex: 0 0 154px;
	display: flex;
	/*align-items: center;*/
}

.blogPosts .socialshare > span:first-child
{
	font-size: 14px;
	margin-right: 10px;
}

.blogPosts .socialshare > a
{
	color: #1ab7ea;
	font-size: 20px;
}

.blogPosts .socialshare > a:not(:last-child)
{
	margin-right: 12px;
}

.blogPosts .socialshare .defaultShareIcon
{
	display: none !important;
}

.blogPosts .socialshare .socicon-linkedin
{
	position: relative;
	top: -2px;
}

.blogPosts .socialshare .socialshare_toolbox
{
	position: relative;
	top: 2px;
}

.blogPosts .socialshare .socialshare_button
{
	display: block;
	width: 23px;
	height: 18px;
	background: url('../i/icon-share2.svgz') left bottom no-repeat; /* data-uri */
	background-size: 23px 36px;
}

.blogPosts .image:not(:empty)
{
	width: 174px;
	float: left;
	margin-right: 28px;
}

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

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

#emailSignupForm
{
	margin: 20px 0;
}

#blogSearch input[type=text],
.blog #subContent input[type=email]
{
	min-height: 40px;
	padding: 5px 0 0 0;
	border: none;
	border-bottom: 1px solid #cccccc;
}

.blog #subContent input[type=submit]
{
	position: absolute;
	top: -30px;
	right: 0;
	background: none;
	font-size: 0px;
	width: 0;
	height: 0;
	padding: 0;
	border-style: solid;
	border-width: 8.5px 0 8.5px 12px;
	border-color: transparent transparent transparent #1ab6ea
}

.blog #subContent label
{
	padding: 5px 0 0 0;
}

#sideSocialShare a
{
	position: relative;
	top: 5px;
	display: block;
	width: 23px;
	height: 18px;
	background: url(../i/icon-share2.svgz) left bottom no-repeat;
	background-size: 23px 36px;
}

#blogSocialLinks
{
	display: flex;
	padding-bottom: 30px;
	margin: 10px 0 30px;
	list-style: none;
	font-size: 20px;
	border-bottom: 1px solid #cccccc;
}

#blogSocialLinks li
{
	margin: 0 16px 0 0;
}

#blogSocialLinks li a
{
	color: #1ab7ea;
}

#blogBios li
{
	overflow: hidden;
}

#blogBios .photo
{
	float: left;
	width: 90px;
	margin: 0 25px 0 0;
}

#blogBios .photo img
{
	display: block;
	width: 100%;
	height: auto;
}

#blogBios .position
{
	font-size: 16px;
}

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

.blogPosts > div > div
{
	clear: both;
	padding-bottom: 40px;
	margin-bottom: 2.5em;
	border-bottom: 1px solid #cccccc;
}

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

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

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

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

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

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

.blog #historyLinks a
{
	float: left;
	padding: 5px 10px;
	border: 2px solid #5f8ead;
	color: #085180;
	font-size: 16px;
}

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

.blogtag
{
	margin-left: 50px;
	font-size: 14px;
	line-height: 1.5;
}

/*.blogtag a:not(:hover):not(:focus)
{
	color: #6fbd46;
}*/

.blogFilters
{
	padding-bottom: 15px;
	margin: 0 0 30px;
	border-bottom: 1px solid #cccccc;
}

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

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

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

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

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

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

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

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

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

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

.blogAuthors li:last-child
{
	border-bottom: none;
}

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

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

.vlog .image
{
	position: relative;
}

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

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

@media (min-width: 768px)
{

	#newsroom-blogs form > div
	{
		flex-wrap: nowrap;
	}

	#newsroom-blogs form > div > div
	{
		flex: 1 1 auto;
	}

	#newsroom-blogs form > div > div:not(:first-of-type)
	{
		margin-left: 6px;
	}

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

@media (min-width: 1280px)
{
	/*.blogPosts div.title
	{
		font-size: 40px;
		line-height: 50px;
	}*/

	body.blog #bannerImage
	{
		height: 668px;
	}



	.blogPosts div.title
	{
		font-size: 28px;
		line-height: 34px;
	}

}

/**/

/* often copy/pasted from elsewhere */


/* 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;
	box-sizing: border-box;
	background: transparent;
	border: 1px solid #ccc;
	text-align: center;
}

figure.image figcaption
{
	display: block !important;
	clear: both;
	padding: 5px;
	font-size: 12px;
}

/* Gallery */

#galleryContainer
{
	clear: both;
	margin-top: 30px;
}

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

#gallerySelect
{
	width: 100%;
	height: 52px;
	margin: 0 0 20px;
	background: #ffffff;
	box-sizing: border-box;

}

#gallerySelect button
{
	/* button reset */
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	font: inherit;
	color: inherit !important;
	text-align: left;
	box-sizing: border-box;
}

#gallerySelect > button
{
	display: block;
	width: 100%;
	position: relative;
	height: 100%;
	padding: 10px 5px 10px 10px;
	border: 1px solid #999999;
	box-sizing: border-box;
	cursor: pointer;
}

#gallerySelect > button:after
{
	content: '';
	position: absolute;
	right: 20px;
	top: 18px;
	width: 23px;
	height: 13px;
	background: url('../i/select-arrow.png') no-repeat; /* data-uri */
	background-size: 23px 13px;

}

#gallerySelect > div
{
	display: none;
	position: relative;
	top: -1px;
	z-index: 10;
	background: #ffffff;
	border: 1px solid #999999;
}

#gallerySelect > div.open
{
	display: block;
}

#gallerySelect li
{
	padding: 10px;
	box-sizing: border-box;
	cursor: pointer;
}

#gallerySelect li:hover
{
	background: rgba(0,0,0, .25);:
}

#gallerySelect li:focus-within
{
	background: rgba(0,0,0, .25);:
}

#gallerySelect ul
{
	margin: 0;
	padding: 5px 0 0;
}

#gallerySelect li.current
{
	font-weight: bold;
}

#galleryContent li
{
	position: relative;
	transition: all 250ms ease;
	/*overflow: hidden;*/
}

#galleryThumbnail button
{
	/* button reset */
	display: block;

	margin: 0;
	padding: 0;
	background: none;
	border: none;
	font: inherit;
	color: inherit !important;
	text-align: left;
	box-sizing: border-box;
}

#galleryThumbnail li
{
	cursor: pointer;
}

#galleryImage
{
	margin: 0;
}

#galleryImage li:not(.current)
{
	opacity: 0;
	display: none;
}

#galleryImage li .sp_pencil
{
	position: absolute;
	top: 0;
	left: 0;
}

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

	/*width: auto;
	height: 100%;*/
	margin: 0 auto;

}

#galleryImage .galleryImageCaption
{
	width: 100%;
	background: rgba(0,0,0, .75);
	color: #ffffff;
	padding: 10px;
	font-size: 1.6rem;

	box-sizing: border-box;
}

#gallery
{
	margin-bottom: 50px;
}

#galleryContent #galleryThumbnail
{
	margin-top: 10px;
	white-space: nowrap;
	overflow-x: scroll;
}

#galleryContent #galleryThumbnail li
{
	display: inline-block;
	width: 130px;
	height: 96px;
	border: 1px solid #707070;
	background: #000000;
}

#gallerContent #galleryThumbnail li.current
{
	border-color: #7b7b7b;
}

#galleryContent #galleryThumbnail li img
{
	display: block;
	width: 100%;
	height: auto;
	opacity: .3;
	transition: all 250ms ease;
}

#galleryContent #galleryThumbnail li.current img,
#galleryContent #galleryThumbnail li:hover img,
#galleryContent #galleryThumbnail button:focus img
{
	opacity: 1;
}

#galleryContent #galleryThumbnail button:focus
{
	outline: thick solid #44B2E8;
}

@media (min-width: 1280px )
{

	#gallery
	{
		/*overflow: hidden;*/
	}

	#galleryContent
	{
		display: flex;
		justify-content: space-between;
		position: relative;
		/*height: 519px;*/
		padding-right: 20%;
	}

	#galleryImage img
	{
		height: 100%;
	}

	/*#galleryImage
	{
		width: 694px;
	}*/

	#galleryContent #galleryThumbnail
	{
		position: absolute;
		top: 0;
		right: 0;
		height: 60vw;
		width: 19%;
		overflow-x: hidden !important;
		margin-top: 0;
		/*margin-right: -17px !important;*/
		white-space: normal;
		height: 100%;
		box-sizing: content-box;
	}

	#galleryContent #galleryThumbnail li
	{
		display: block;
		width: 100%;
		height: auto;
		margin: 0 0 10px;
	}

	#galleryContent #galleryThumbnail li:last-child
	{
		margin: 0;
	}

	#galleryContent #galleryThumbnail li img
	{
		height: auto;
		width: 100%;
	}


	#galleryImage .galleryImageCaption
	{
		padding: 0;
	}

	#galleryImage .galleryImageCaption:not(:empty)
	{
		position: absolute;
		bottom: 0;
		left: 0;
		padding: 15px 30px;
		font-size: 18px;
		line-height: 24px;
		color: #ffffff;
	}
}

/* Home Page ------------------------------------------------------> */

body#index.transitionHeader #header
{
	transition-delay: 750ms;
}

#index #preFooter
{
	margin-top: 0;
}

#index #mainContent
{
	position: relative;
	padding: 0;
	margin: 0;
	z-index: 0;
}

#index #mainContent .sp_pencil
{
	position: absolute;
	bottom: 0;
	z-index: 10;
}


#index section
{
	position: relative;
	z-index: 1;
	/*width: 100vw;
	left: calc(50% - 50vw);*/
	/*top: -100px;*/
}

#homeContent
{
	position: relative;
	background: #ffffff;
	width: 100%;
}

#homeCutOut
{
	position: relative;
	top: 100px;
	transition: all 750ms ease 1000ms;
}

body.startAnimations #homeCutOut
{
	/*top: -55px;*/
	top: 0;
}

/*body.startAnimations #homeCutOut:after
{
	content: '';
	position: absolute;
	bottom: -55px;
	left: calc(50% - 50vw);
	display: block;
	width: 100vw;
	height: 55px;
	background: #ffffff;
}*/

#homeCutOut img
{
	position: relative;
	display: block;
	width: 1920px;
	height: 100%;
	left: calc(50% - 960px);
}

#homeCutOut a
{
	position: absolute;
	top: 30px;
	left: calc(50% - 90px);
	display: block;
	width: 180px;
	padding-top: 40px;
	font-weight: 700;
	font-size: 16px;
	line-height: 16px;
	text-align: center;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: #333333;
	font-family: 'Trebuchet MS','Lucida Grande','Lucida Sans Unicode','Lucida Sans','Tahoma',sans-serif;

	background: url('../i/icon-search-blue.svgz') center top no-repeat; /* data-uri */
	background-size: 24px 24px;

}

#homeAnimation
{
	height: calc(100vh - 100px);
}

#homeAnimation ul,
#homeAnimation li
{
	height: 100%;
	list-style: none;
	margin: 0;
}

#homeAnimation li
{
	position: fixed;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: center;

	width: 100%;
}


#homeAnimation > div
{
	height: 100%;
}

#homeAnimation .image
{
	position: absolute;
	width: 100vw;
	left: calc(50% - 50vw);
	height: 100%;
	top: 100%;
	opacity: 0;
	transition: top 1000ms ease 200ms,
				opacity 1000ms ease 100ms;
}

.startAnimations #homeAnimation .image
{
	top: 0;
	opacity: 1;
}

#homeAnimation .image img
{
	display: block;
	width: auto;
	height: 100%;
	width: 100%;
	object-fit: cover;
}

#homeAnimation .content
{
	position: relative;
	top: -150px;
	opacity: 0;
	z-index: 1;
	color: #ffffff;
	text-align: center;
	font-weight: 700;
	padding: 15px 15px 60px;
	box-sizing: border-box;
	font-family: 'Trebuchet MS','Lucida Grande','Lucida Sans Unicode','Lucida Sans','Tahoma',sans-serif;
	transition: all 1000ms ease 850ms;
}

body.startAnimations #homeAnimation .content
{
	top: 0;
	opacity: 1;
}

#homeAnimation .smalltext
{
	margin: 0 0 20px;
	font-size: 18px;
	line-height: 24px;
	max-width: 1320px;
}

#homeAnimation .largetext
{
	font-size: 38px;
	line-height: 38px;
	text-transform: uppercase;
}

#accolades
{
	position: relative;
	width: 100vw;
	left: calc(50% - 50vw);
	margin: 60px 0 0;
	background-size: cover !important;
	background-position: center !important;
	box-sizing: border-box;
}

#accolades .content
{
	margin: 0 0 50px;
	font-size: 18px;
}

#accolades .content *:not(a)
{
	color: #ffffff;
}

#accolades:before
{
	content: '';
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	background: linear-gradient(to right, rgba(8,11,36,.7) 100%, rgba(8,11,36,0) 100%);
}

#accolades > div
{
	position: relative;
	width: 100%;
	z-index: 1;
	max-width: 1240px;
	padding: 60px 30px;
	box-sizing: border-box;
	margin: 0 auto;
}

#homeBadges
{
	width: 100%;
	max-width: 351px;
	padding: 30px 10px;
	margin: 0 auto;
	background: rgba(255,255,255,.9);
	box-sizing: border-box;
}

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

#homeBadges ul
{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 -18px;
}

#homeBadges li
{
	width: 84px;
	margin: 0 18px 36px;
}

#homeBadges li > img,
#homeBadges li > a > img
{
	display: block;
	width: 100%;
	height: auto;
}

#homeBadges li > a:hover > img,
#homeBadges li > a:focus > img
{
	opacity: .75;
}


@media (min-width: 768px)
{
	#homeAnimation .smalltext
	{
		margin: 0 0 30px;
		font-size: 24px;
		line-height: 28px;
	}

	#homeAnimation .largetext
	{
		font-size: 70px;
		line-height: 70px;
	}
}

@media (min-width: 920px)
{

	#accolades
	{
		min-height: 553px;
	}

	#accolades,
	#accolades > div
	{
		display: flex;
		align-items: center;
	}

	#accolades > div
	{
		justify-content: space-between;
	}

	#accolades::before
	{
		height: 100%;
		top: 0;
		background: linear-gradient(to right, rgba(8,11,36,.7) 15%, rgba(8,11,36,0) 100%);
	}

	#accolades .content
	{
		max-width: 730px;
		margin: 0 60px 0 0;
	}

	#homeBadges
	{
		margin: 0;
	}
}

@media (min-width: 1450px)
{
	#homeAnimation .largetext
	{
		font-size: 90px;
		line-height: 90px;
	}
}


/*	Some mobile friendly tests - per swati, we'll leave these here for a few weeks even though they don't seem to make any difference initially */
@media (max-width: 767px)
{

	#bannerImage,
	#footer
	{
		width: calc(100% + 32px) !important;
		left: -16px;
		overflow: hidden;
	}

	#header
	{
		width: 100%;
		left: 0;
	}

	#socialShareList:not(.buttonHovered)
	{
		font-size: 0px;
	}


	#bioContact > *
	{
		margin-bottom: 10px !important;
	}

	#searchJump
	{
		right: 90px;
	}

	#footer > ul li
	{
		margin: 0 1.3em 1.2em 0;
	}

	#lowerContent:before,
	#preFooter:before
	{
		width: calc(100% + 32px);
		left: -16px;
	}

	#footer:before
	{
		width: 100%;
		left: 0;
	}
}

/* intranet */

body.intranet #subContent
{
	float: left;
	clear: left;
	padding-bottom: 2em;
}

body.intranet #mainContent:not(:only-child)
{
	float: right;
	clear: right;
}

.intranet #itemPageTitle
{
	color: #004677;
	font-size: 50px;
	margin-bottom: .6em;
}

#intranetHomeText
{
	margin-bottom: 30px;
}

.intranet #footerSocial
{
	flex-basis: 238px;
}

.intranet h2
{
	margin-top: 30px;
}

.intranet h2 a
{
	color: inherit;
}

#intraSearch div
{
	width: auto;
	display: flex;
}

#intraSearch input
{
	height: 35px;
	min-height: 0;
	box-sizing: border-box;
	width: calc(100% - 42px);
}

#intraSearch button
{
	/* button reset */
	border: none;
	margin: 0;
	padding: 0;
	width: auto;
	overflow: visible;
	background: transparent;
	color: inherit;
	font: inherit;
	text-transform: inherit;
	text-align: inherit;
	line-height: inherit;

	/* Corrects font smoothing for webkit */
	-webkit-font-smoothing: inherit;
	/* Corrects inability to style clickable `input` types in iOS */
	-webkit-appearance: none;
	/* end button reset */

	background: #167DB1;
	width: 38px;
	height: 35px;
	text-align: center;
}

.intranetBioList ul,
.intranetBioList li
{
	display: block;
	margin: 0 0 37px;
	padding: 0;
	list-style: none;
}

.intranetBioGrid li > div > div
{
	margin-bottom: .3em;
}

.intranetBioGrid .title
{
	font-size: 18px;
	margin: 1em 0 .6em;

	color: black;
}

.intranetBioGrid .office
{
	color: #32b1e7;
	text-transform: uppercase;
	font-size: 16px;
}

.intranetBioList .photo
{
	padding-right: 10px;
}

.intranetBioList .photo img
{
	max-width: 100px;
}

.intranetBioGrid ul,
.intranetBioGrid li
{
	display: block;
	margin: 0;
	padding: 0;
	list-style: none;
}

.intranetBioGrid ul.results_list
{
	display: flex;
	flex-wrap: wrap;

	margin-top: 1rem;
}

.intranetBioGrid .results_list > li
{
	width: calc(50% - 15px);

	display: flex;
	padding-right: 20px;
	box-sizing: border-box;
	margin-bottom: 37px;
}

.intranetBioGrid .photo
{
	padding-right: 20px;
}

.intranetBioGrid .photo img
{
	max-width: 120px;
}

#officeWeather .results_list
{
	display: flex;
	flex-wrap: wrap;
}

#officeWeather .results_list > div
{
	width: 30%;
	height: 195px;
	overflow: hidden;
}

#officeWeather .results_list > div:empty
{
	display: none;
}

/* calendar */

#itemCalendar
{
	position: relative;
}

.calPrev, .calNext
{
	position: absolute;
	top: 0;
	left: .8em;
	line-height: 1.2;
	font-size: 2em;
}

.calNext
{
	right: .8em;
	left: auto;
}

table.calendar
{
	border:1px solid #322E2F;
	border-collapse: collapse;
	width: 100%;
}

.calendar > caption
{
	font-size: 1.5em;
	padding: 5px;
}

tr.calendar-row
{
}

td.calendar-day
{
	min-height:120px;
	font-size:11px;
	position:relative;
	height: 60px;

	vertical-align: top;
}

td.calendar-day:hover
{
	background: #eee;
}

td.calendar-day-np
{
	background:#eee;
	min-height:80px;
}

td.calendar-day-head
{
	background: #322E2F;
	color: white;
	font-weight: normal;
	font-size: 12px;
	text-align: center;
	padding: 5px;

	width: 14%;
}

div.day-number
{
	background:#ccc;
	padding:5px;

	font-weight:bold;

	float:right;
	margin:-5px -5px 10px 10px;
	width:20px;
	text-align:center;
}

td.calendar-day div + div
{
	margin-bottom: .8em;
	font-size: 15px;
	font-weight: normal;
	line-height: 1.1;
	clear: both;
}

/* shared */
.results_list tr td.calendar-day,
td.calendar-day-np
{
	padding: 5px;
	border:1px solid #322E2F;
	height: 15vh;
}

#itemCalendar .results_criteria::before
{
	content: 'Search Results: ';
	display: block;
	font-weight: bolder;

	margin-bottom: 1em;
}

#itemCalendar .results_criteria,
#itemCalendar .results_criteria li
{
	margin-top: 0;
	margin-bottom: 0;
	padding: 0;
}

#itemCalendar .results_criteria
{
	margin-bottom: 1em;
}

#itemCalendar .results_criteria + p
{
	display: none;
}

#calViewSelect
{
	display: flex;
	justify-content: flex-start;

	font: normal 16px/1.8 Helvetica, Arial, sans-serif;

	margin-bottom: 30px;
}

#calViewSelect *
{
	padding: 5px 8px;
	background: #1ab7ea;
	border: 1px solid #1ab7ea;
	border-radius: 10px 0 0 10px;

	margin-bottom: 20px;

	color: white;
}

#calViewSelect a:not(:hover):not(:focus)
{
	color: #1ab7ea;
	background: white;
}

#calViewSelect :last-child
{
	border-radius: 0 10px 10px 0;
	border-left: 1px solid white;
	margin-left: -1px;
}

#calViewSelect :last-child
{

}

#calSearch
{
	margin-top: 50px;
}

#calSearch .search_form > div:first-of-type
{
	flex-basis: 100%;
}

#calSearch .search_form label
{
	display: block;
	position: static;
	visibility: visible;
	padding: 0;
}

#calSearch .search_form label::after
{
	content: ':';
}

/* intranet side nav */

#intranetNav
{
	padding-top: 0.5em;
}

#intranetNav a
{
	color: #003768;
}

.intranet #navButton-logout
{
	text-transform: uppercase;
	padding-top: 2em;
}

/* if we're tacking on an additional sideNav remove the top margin */
ul.sideNav + .sideStaticText div.sideNav
{
	margin: 0 0 2em 0;
}

div.sideNav > p,
ul.sideNav,
ul.sideNav li
{
	 list-style: none;
	 margin: 0px;
	 padding: 0px;
}

.sideNav a
{
	display: block;
	position: relative;
	padding: 4px 0 4px 0;
}

.sideNav .current > a,
.sideNav a.current,
.sideNav a:hover,
.sideNav a:focus
{
	color: inherit;
	text-decoration: none;
}

.sideNav .current > a,
.sideNav a.current
{
		cursor: default;
}

ul.sideNav li.here > a,
ul.sideNav li.hereParent > a
{
	color: #000000;
}

ul.sideNav ul
{
	margin: 0;
}

ul.sideNav ul a::before
{
	content: '\a0–\a0';
}

ul.sideNav ul ul
{
	padding-left: 1.5rem;
}

ul.sideNav ul
{
	max-height: 0;
	overflow: hidden;

	transition: max-height .5s .5s;
}

ul.sideNav li:hover ul,
ul.sideNav li.current ul
{
	max-height: 500px;
	transition: max-height .8s .4s;
}

ul.sideNav li:focus-within ul
{
	max-height: 500px;
	transition-delay: 0;
	transition-duration: .5s;
}

ul.sideNav li > a:first-child:not(:only-child)::after
{
	content: '\a0+';
}

.intranet #triangle
{
	max-height: 100%;
	overflow: hidden;
}

.intranet .letterLinks
{
	font-size: 17px;
}

/* intranet packet builder */
.packet_add a,
a.packet-delete-button
{
	min-width: 80px;
	height: auto;
	padding: 2px 10px 0;
	margin: 0;
	white-space: nowrap;
	justify-content: center;
	text-transform: uppercase;
	font-size: 12px !important;
}

a.packet-delete-button
{
	float: right;
	margin-left: 20px;
}

#content #mainContent #packet-item-list ul
{
	margin: 0;
	padding: 20px 0;
	font-size: 16px;
	line-height: normal;
}

#content #mainContent #packet-item-list li
{
	margin: 0;
}

#content #mainContent #packet-item-list .title
{
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
	max-width: calc(100% - 100px);
}

.packet-add-list .results
{
	clear: both;

	overflow: scroll;
	height: 300px;
	max-height: 50vw;

	border: 1px solid #ccc;
	border-top: 0;

	margin: 0 0 2em;
	padding-bottom: 10px;

	font-size: 16px;
	line-height: normal;
}

.intranet .expandableHeading
{
	margin-top: -1px;
}

#intranetHomeText .expandableHeading
{
	padding-left: 10px;
}

#intranetHomeText .expandableHeading button::after
{
	right: 10px;
}

#homeOfficeInfo > h2
{
	padding: 19px 50px 19px 10px;
	border-top: 1px solid #cccccc;
	font-size: 24px;
	color: #004677;
	font-weight: 700;

	background: #004677;
	color: white;
}

.intranet-packet h2
{
	margin-top: 40px;
}

.packet-add-list .packet-search
{
	position: relative;
}

.packet-add-list .packet-search input
{
	position: absolute;
	top: 8px;
	right: 15px;
	width: 200px;
	min-height: 0;
	height: 30px;
	padding: 3px 10px;
	font-size: 16px;

	z-index: 999;
}

.packet-add-list table
{
	position: relative;
	width: 100%;
	table-layout: fixed;

	border: 15px solid white;
	border-width: 0 15px;
}

.packet-add-list table th
{
	text-transform: uppercase;
	font-weight: bold;
	font-size: 16px;
	padding: 14px 0 10px 0;
	border-bottom: 1px solid #F3F3F3;
}

.packet-add-list table td
{
	padding: 5px 0 0 0;
}

.packet-add-list table th:last-child
{
	width: 80px;
}

/* date */
.packet-add-list table th:nth-last-child(3)
{
	width: 100px;
}

.packet-add-list td:not(.packet_add)
{
	padding-right: 20px;
}

.packet-add-list td
{
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
}

.packet-add-list th
{
	position: sticky;
	top: 0;
	background: white;
}

@media (min-width: 1200px)
{
	.columnContent
	{
		display: flex;
		justify-content: space-between;
	}

	.columnContent > div
	{
		width: calc(50% - 25px);
	}
}

/* END DEFAULT CSS -----------------------------------------------> */


/* BEGIN PRINT CSS -----------------------------------------------> */

/* @media all and (max-width:8.5in) /* use while programming */
@media print
{

	*
	{
		background: none !important;
		color: black !important;
		text-shadow: none !important;
	}

	#mainNav,
	#footer,
	#subNavWrap,
	#nav,
	#sectionName,
	#pdfLink,
	#bottomContent,
	#jumpLinks,
	.view_more,
	.viewMore,
	.moreLink,
	.sp_map,
	#printMap,
	.sp_pencil,
	#cookiePopup,
	.mobile,
	.rsvpButton,
	#jumpPage,
	#resultPageLinks,
	#homeAnimation,
	button#navToggle,
	#navToggle,
	.toggleExpand,
	.search_form,
	#letterLinks,
	#searchJump,
	.cycle-pager,
	form,
	video,
	#homeSearch,
	#content::after,
	.contentJump,
	#jumpContent,
	#jumpMenu,
	.mobileNavSpring,
	#homeCutOut,
	#homeCutOut a
	{
		display: none !important;
	}

	body,
	#content
	{
		position: relative !important;
		width: 100% !important;
		background: none !important;

		/* cancel out flexbox and float */
		display: block;
		float: none;
	}

	body
	{
		padding: 0;
	}

	p, li
	{
		orphans: 3;
		widows: 2;
	}

	h1,
	h2,
	h3,
	h4,
	h5,
	h6
	{
		-webkit-column-break-after: avoid;
		page-break-after: avoid;
		break-after: avoid-page;
		color: #333 !important;
	}

	/*header and logo*/

	#header
	{
		position: relative !important;
		width: 100% !important;
		clear: both !important;
		padding-left: 0;
		left: 0;
	}

	/*main content*/

	#index #mainContent,
	#mainContent
	{
		display: block;
		position: relative;
		width: 100% !important;
	}

	#area_content
	{
		display: block !important;
		position: relative;
		width: 100% !important;
	}

	#mainContent,
	#content
	{
		clear: both !important;
	}

	#subNav
	{
		display: none !important;
	}

	.expandableContent
	{
		display: block !important;
		width: 100% !important;
	}

	#tabLinks
	{
		display: none !important;
	}

	.expandableList .results_list
	{
		overflow: visible !important;
		max-height: auto !important;
		height: auto !important;
		min-height: auto !important;
	}

	.hierList
	{
		display: block !important;
		overflow: visible !important;
	}

	.expandableSection > div
	{
		display: block !important;
		overflow: visible !important;
	}

	#content::after
	{
		display: none;
	}

	#subNav,
	#subContent
	{
		float: right;
		clear: right;
		width: 27.2%;
	}

	.view_more,
	#tabViewMore,
	div.expandableSection button
	{
		display: none !important;
	}

	/* homepage*/

	#homeContent,
	.eventSpot
	{
		clear: both;
		width: 100%;
	}

	.eventSpot ul
	{
		display: block	!important;
		margin: 0  !important;
		width: 100%;
		left: 0;
		clear: both;
	}

	.eventSpot ul li
	{
		display: block !important;
		width: 31% !important;
		margin-left: 0 !important;
		margin-right: 12px !important;
		float: left;
	}

	.eventSpot .image:after
	{
		display: none !important;
	}

	#footer::before,
	#homeAnimation::before,
	#homeNewsHeader::before,
	#homeContent::before,
	#preFooter::before,
	aside::before,
	#lowerContent::before,
	#subscribeForm::before
	{
		display: none !important;
	}

	#accolades
	{
		clear: both;
	}

	#accolades::before
	{
		display: none;
	}

	#accolades > div
	{
		padding: 0 !important;
	}

	#accolades,
	#accolades > div
	{
		display: block;
	}

	.eventSpot .itemdate
	{
		position: relative;
		top: 0;
	}

	#index aside
	{
		max-width: auto;
		width: 100%;
	}

	/*content banners */

	#banner
	{
		display: block;
		width: 100%;
		left: 0 !important;
		overflow: hidden !important;
		margin-bottom: 40px !important;
		min-height: 0 !important;
		clear: both !important;
		max-height: auto !important;
		height: auto !important;
		border-bottom: 2px solid #333;
		border-top: 2px solid #333;
	}

	#bannerContent
	{
		display: block !important;
		margin-top: 34px !important;
		min-height: auto !important;
		position: relative !important;
		overflow: hidden !important;
		width: 100%;
		left: 0 !important;
		clear: both !important;
		text-shadow: none !important;
		color: #333 !important;
	}

	#bannerImage
	{
		display: none !important;
		left: 0 !important;
	}

	.subNavIntro
	{
		display: none !important;
	}

	/*lawyers*/

	#upperTriangle,
	#bioSearch,
	.arrow,
	.letterLinks
	{
		display: none !important;
		clear: both;
	}

	#bioSearch,
	.bioList > ul.results_list > li
	{
		display: block !important;
		clear: both;
		margin-bottom: 10px;
		width: 100%;
		border-bottom: 1px solid #333;
		vertical-align: top;
	}

	.bioList .photo
	{
		display: block;
		flex: none;
		float: left;
		height: 200px !important;
		width: 120px !important;
		vertical-align: top;
		margin-right:24px !important;
		margin-left: 0 !important;
	}

	#blogBios .photo
	{
		float: left;
		width: 90px;
		margin: 0 5px 0 0;
	}

	#bioPhoto:after
	{
		display: none !important;
	}

	#bannerImage > img,
	#bannerImage
	{
		display: none !important;
	}

	.bioList .nametitle
	{
		display: block;
		flex: none;
		float: left !important;
		height: 200px !important;
		min-height: 200px;
		max-width: 300px !important;
		vertical-align: top;
		margin-right: 24px !important;
		margin-left: 0 !important;
	}

	.bioList .contact .email a
	{
		display: none;
	}

	.bioList .contact
	{
		display: block;
		flex: none;
		float: left !important;
		min-height: 150px;
		height: 200px !important;
		max-width: 300px !important;
		vertical-align: top;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	/* expand bio sections bio page */

	#bioVcard
	{
		display: none;
	}

	.professionals-item #mainContent:not(:only-child)
	{
		display: block;
		 width: 66% !important;
		 float: left;
		 margin-top: 0 !important;
	}

	.expandableHeading button::after,
	h2.sectionTitle::after,
	#bioAccessories
	{
		display: none !important;
	}

	#bio_activity,
	#bio_education,
	#Credentials-tab,
	#bio_event,
	#bio_bars,
	#bio_activity,
	#Professional-and-Civic-tab,
	#News-Insights-tab,
	#bio_courts,
	.expandableList .results_list > li:nth-last-child(n+5)~li:nth-child(n+4)
	{
			display: block !important;
			width: 100% !important;
	}

	body.professionals-item #bannerContent
	{
	padding: 25px 0 25px;
	}

	/* force section headers */

	.contentSection h2.sectionTitle
	{
		display: block !important;
	}

	/*practice pages*/

	.industries-item #mainContent:not(:only-child),
	.services-item #mainContent:not(:only-child)
	{
		display: block;
		 width: 66% !important;
		 float: left;
		 margin-top: 0 !important;
	}

	#mainContent .itemSection ul.results_list
	{
		overflow: visible;
	}

	/* individual practice page */

	button#attorneyExpander img,
	#itemTools,
	#attorneyExpander img,
	button#attorneyExpander div h2:after
	{
		display: none !important;
	}

	button#attorneyExpander + div
	{
		display: block !important;
		width: 100%;
	}

	button#attorneyExpander div
	{
		display: block !important;
		position: relative !important;
		color: #333 !important;
		background:none;
		padding: 0;
		border: none;
		text-align: left !important;
	}

	button#attorneyExpander div a
	{
		color: #333 !important;
		left: 0;
	}

	#area_event
	{
		display: block !important;
	}

	p.introText
	{
		margin-bottom: .5em;
	}

	button#attorneyExpander div
	{
		position: relative;
		display: block;
		align-items: left !important;
		justify-content: left !important;
		padding-left: 0px !important;
		margin-left: 0 !important;
		text-align: left !important;
	}

	button#attorneyExpander div h2
	{
		border: none !important;
		margin-left: 0 !important;
		padding-left: 0px !important;
		text-align: left !important;
		font-size: 24px;
		line-height: 30px;
		font-weight: 600;
	}

	#area_flextabcontent1,
	#area_flextabcontent2
	{
		display: block !important;
		width: 100%;
		clear: both;
	}

	#preContent:after,
	.register
	{
		display: none;
	}

	body.services-item #preContent,
	body.industries-item #preContent
	{
		margin-bottom: 0 !important;
	}

	/* news and publications*/

	#subscribeForm,
	#newsroomSearch,
	.view_more
	{
		display: none;
	}

	.newsroomColumnList ul
	{
			display: inline-block;
			width: 100%;
			clear: both;
	}

	.newsroomColumnList ul li
	{
		display: block !important;
		margin-right: 24px !important;
		width: 30% !important;
		float: left !important;
		max-height: 323px;
		border-bottom: 1px solid #333 !important;
		overflow: hidden;
	}

	#preContent
	{
		padding-bottom: 0px !important;
	}

	.newsroomColumnList ul li:nth-child(3n+1)
	{
		clear: right !important;
		float: left;
	}

	#resultPageLinks,
	.mapit,
	.vcalButton
	{
		display: none;
	}

	#newsroom-news-item #mainContent:not(:only-child),
	body.newsroom-news-item #mainContent:not(:only-child)
	{
		display: block !important;
		 width: 66% !important;
		 float: left;
		 margin-top: 0 !important;
	}

	.newsroomColumnList ul
	{
	columns: auto !important;
	column-gap: 0 !important;
	}

	#blogIntro
	{
		margin-bottom: 20px;
	}

	.socialshare,
	#blogSearch,
	#blogSocialLinks
	{
		display: none !important;
	}

	#blog-home #mainContent:not(:only-child)
	{
		display: block;
		 width: 66% !important;
		 float: left;
		 margin-top: 0 !important;
	}

	.blogtag
	{
		margin-left: 0 !important;
	}

	#subContent .blogFilters .results_list > li:nth-child(n+6)
	{
		display: block !important;
		width: 100%;
	}

	.toggleExpand,
	.nextPage,
	.blogAuthors .links
	{
		display: none !important;
	}

	.blogAuthors li
	{
		border-bottom: none !important;
	}

	.blog #mainContent:not(:only-child)
	{
		display: block;
		 width: 66% !important;
		 float: left;
		 margin-top: 0 !important;
	}

	/*footer*/

	#triangle
	{
		display: none !important;
	}

	#content
	{
		min-height: auto !important;
	}

	#preFooter
	{
		display: block !important;
		clear: both;
	}

	.lowerStaticText,
	#lowerContent
	{
		clear: both;
		width: 100%;
	}

	#preFooter
	{
	min-height: 414px;
	padding-left: 0 !important;
	left: 0;
	}

	/*hiding prefooter redundant*/

	#preFooter
	{
		display: none !important;
	}
}

/* END PRINT CSS -------------------------------------------------> */
