/* BEGIN DEFAULT CSS --------------------------------------------> */
/*
#004f8e blue
#1a3462 black
#783278 purple, sub bullet dash

*/


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

	font: normal 16px Arial, Helvetica, sans-serif;
	color: black;
}

body
{
	position: relative;

	width: 958px;
	margin: 0 auto;
	padding: 0 15px 0 15px;
	background: #ffffff;
	line-height: 24px;
}

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

p
{
	margin: 0;
	padding: 5px 0 15px 0;
	line-height: 24px;
}

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

a
{
	color: #004f8e;
	text-decoration: none;
}

a:hover,
a:focus
{
	text-decoration: underline;
}

h1, h2, h3, h4, h5, h6
{
	margin: 0;
	padding: 0;
	color: #000000;
	line-height: normal;
}

h1
{
	padding: 5px 0 15px 0;
	font-size: 22px;
	color: #004f8e;
	font-weight: bold;
}

#banner h1#pageTitle
{
	padding: 0;
	margin: 47px 0 0 0;
	color: #004f8e;
	font-size: 22px;
	font-weight: bold;
	line-height: 26px;

	text-align: center;
	text-transform: uppercase;
	height: 100%;
}

h2
{
	padding: 12px 0 4px 0;
	font-size: 22px;
	font-weight: normal;
}

h2.stateGroup
{
	padding: 27px 0 5px 0;
	font-size: 145%;
	border-bottom: 1px solid #00446a;
}

h2.stateGroup:first-child
{
	padding-top: 5px;
}

h2.subhead
{
	color: #1a3462;
}

h3
{
	padding: 5px 0 5px 0;
	color: #004f8e;
	font-size: 20px;
	font-weight: bold;
}

h4
{
	padding: 5px 0 5px 0;
	font-size: 20px;
}

h5
{
	padding: 5px 0 5px 0;
	font-size: 18px;
}

/* Reserved for Print Pilot */
h6
{
	font-style: italic;
	font-size: 20px;
}

ul
{
	padding: 0;
	margin: 5px 0 0 15px;
	line-height: 18px;
}

ul ul
{
	margin: 0 0 0 15px;
}

ul li
{
	padding: 0;
	margin: 0;
	line-height: 18px;
}

ul li ul
{
	padding: 0;
	margin: 8px 0 0 0;
	line-height: 18px;
}

ul li p
{
	margin: 0;
	padding: 3px 0 2px 0;
	line-height: 22px;
}

blockquote blockquote
{
	margin-left: 0;
	margin-right: 0;
	padding-left: 0;
	padding-right: 0;
}

img
{
	border: 0;
}

.largeWidthOnly
{
	display: none !important;
}

sup, sub
{
	line-height: 0;
	font-size: .65rem;
}


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

#header
{
	height: 82px;
	padding: 23px 0 0;
}

#banner
{
	height: 127px;
	background: #1a3462 url('../i/banner-bg.jpg') top no-repeat;
	background-size: cover;
	overflow: hidden;

	position: relative;
}

body[id]:not([id*='-']) #banner
{
	background-image: url('../i/banner-bg2.jpg');
}

.professionals-item #banner
{
	height: 281px;
	background: #ffffff url('../i/bio-bg.jpg') no-repeat;
	padding-left: 193px;
}

#topLinks
{
	position: absolute;
	top: 15px;
	right: 25px;
	width: auto;
	text-align: right;
}

#at15s
{
	left: auto !important;
	right: 15px !important;
}

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

#topLinks ul
{
	margin: 0;
	padding: 0;
}

#topLinks ul li
{
	position: relative;
	float: left;
	margin: 3px 0 0 4px;
}

#topSearch
{
	display: block;
	margin: -6px 0 0 0;
	padding: 0 0 0 4px;
	background: #ffffff;
	font-size: 14px;
	line-height: 14px;
}

#topSearch input#searchtext
{
	position: absolute;
	right: 32px;
	top: 0;
	z-index: 9999;
	width: 135px;
	height: 28px;
	line-height: 18px;
	padding: 5px;
}

#topSearch input#searchtext
{
	display: none;
}

#topSearch:hover input#searchtext,
#topSearch:focus-within input#searchtext,
#topSearch input#searchtext:focus
{
	display: block;
}

#topSearch:hover input#searchtext,
#topSearch input#searchtext:focus
{
	display: block;
}

#fontFlyout
{
	display: none;
	position: absolute;
	top: -10px;
	left: 1px;
	width: 14px;
	height: 36px;
}

#fontFlyout a,
#fontFlyout img
{
	width: 14px;
	height: 10px;
	display: block;
}

div.textPlus a
{
	position: absolute;
	top: 0;
	left: 0;
}

div.textMinus a
{
	position: absolute;
	bottom: 0;
	left: 0;
}

div.textPlus a,
div.textMinus a
{
	background: #464646;
	cursor: default;
}

div.textPlusOn a,
div.textMinusOn a
{
	cursor: pointer;
}

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

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

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

#mainNav > ul
{
	width: 100%;
}

#mainNav li > a
{
	display: block;
	padding: 5px 13px;
	color: #002857;
	line-height: 20px;

	text-transform: uppercase;
	font-weight: bold;
	font-size: 14px;
}

#mainNav > ul > li > a
{

}

#mainNav li:hover > a
{
	/*color: #27aae1;*/
	color: #007EB6;
	text-decoration: none;
}

#mainNav li ul li:hover > a
{
	color: #27aae1;
	text-decoration: none;
}

#mainNav li ul a
{
	color: white;
}

/* main nav tab current page highlight */
/*#mainNav .current > a:not(:hover)*/
#mainNav .current > a
{
	/*color: #27aae1;*/
	color: #007EB6;
}

#mainNav li ul li.current > a
{
	color: #27aae1;
}

/* main nav items */
#mainNav > ul ul
{
	display: none;
	position: absolute;

	min-width: 100%;

	background: #002856;
	padding: 10px 0 10px 0;
}
/* last three double/triple drops go right like parent above */
#mainNav > ul > li:nth-last-child(-n + 3):hover > ul ul
{
	left: inherit;
	right: 100%;
}

#navButton-services:hover > ul,
#navButton-services:focus-within > ul
{
	display: flex !important;
	flex-wrap: wrap;
	flex-direction: column;

	height: 560px;
	width: 600px;
}

#navButton-services:hover > ul
{
	display: flex !important;
	flex-wrap: wrap;
	flex-direction: column;

	height: 560px;
	width: 600px;
}

#mainNav #navButton-services > ul li
{
	width: auto;
	height: auto;
	width: 300px;
	background: inherit;
}

#mainNav #navButton-services > ul li a
{
	white-space: normal;
}


/* by default, hidden */
#navJump, #contentJump
{
	display: none;
}

/* on desktop, these function as jump links, make them visible to keyboard users */
body[data-whatintent="keyboard"] #contentJump,
body[data-whatintent="keyboard"] #navJump
{
	display: block;
}

/* make them transparent unless keyboard focused */
#contentJump:not(:focus),
#navJump:not(:focus)
{
	color: transparent;
}

#navJump
{
	position: absolute;
	z-index: 999;
	top: 5px;
	left: 5px;
}

#mainNav
{
	position: absolute;
	z-index: 9999;
	top: 48px;

	/*
	left: 336px;
	right: 210px;
	*/
	right: 10px;
}

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

#mainNav > ul :hover > ul,
#mainNav > ul :focus-within > ul
{
	display: block;
}

#mainNav > ul :hover > ul
{
	display: block;
}

/* items with subs get an arrow */
#mainNav ul ul li > a:not(:last-child)
{
	padding-right: 33px;
}

#mainNav ul ul li > a:not(:last-child):after
{
	content: '';
	display: inline-block;

	margin-left: 10px;
			position: absolute;
	right: 16px;
	top: 10px;

	border: solid transparent;
	border-width: 4.5px 0 4.5px 5px;
	border-left-color: #8593ab;
}

#mainNav ul ul :hover a:not(:last-child):after
{
	border-left-color: white;
}

/* push double drops out the width of the parent */
#mainNav > ul li > ul ul
{
	top: 0;
	left: 100%;
	z-index: 99999;
	border: 2px solid #ffffff;
	box-shadow: 0 0 3px 0 rgba(255,255,255,.2);
}

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

@media (max-width: 1365px)
{
	#logo img
	{
		max-width: 270px;
	}

	#header
	{
		xheight: 70px;
	}

	#mainNav
	{
		right: 10px;
		left: auto;
	}

	#mainNav li > a
	{
		padding: 5px 6px;
		font-size: 12px;
	}
}

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

#subContent ul.subNavList
{
	margin: 0;
	padding: 0;
	border-bottom: 2px solid #fff;
}

#subContent ul.subNavList li
{
	font-size: 16px;
	list-style: none;
	margin: 0;
	padding: 0;
	border-top: 2px solid #ffffff;
	/*border-bottom: 2px solid #ffffff;*/
}

#subContent ul.subNavList li a,
#sideBarSubscribe
{
	display: block;
	margin: 0;
	padding: 11px 30px 11px 38px;
	background: #74767B;
	color: #ffffff;
	text-decoration: none;
}

#subContent ul.subNavList ul
{
	/*padding-left: 10px;*/
	margin: 0;
	padding: 0;
}

#subContent ul.subNavList ul
{
	display: none;
}

#subContent ul.subNavList li.here > ul,
#subContent ul.subNavList li.hereParent > ul
{
	display: block;
}

#subContent ul.subNavList li > ul li a
{
	padding-left: 55px;
	background-position: 29px 50%;
}

#subContent ul.subNavList ul li
{
	border-top: 2px solid #ffffff;
}

#subContent ul.subNavList li a:hover,
#subContent ul.subNavList li a:focus,
#sideBarSubscribe:hover,
#sideBarSubscribe:focus
{
	background: #002856;
}

#subContent #area_bio_contact h2,
#subContent ul.subNavList li.here > a
{
	background: #002856 url('../i/subnav-arrow.png') 14px 50% no-repeat;
}


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




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


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

	display: flex;
	justify-content: space-between;

	margin: 0 0 32px 0;
}

#mainContent
{
	margin: 0;
	padding: 26px 0 20px 17px;

	width: calc(100% - 360px);
}

/* no sub-content */
#mainContent:last-child
{
	width: 100%;
}

#subContent
{
	width: 275px;
	background: #e6e7e8;
}

#mainContent ul li,
#subContent ul li
{
	margin: 0 0 8px 7px;
	line-height: 22px;

	list-style-image: url('../i/bullet.png');
}

#mainContent ul li li,
#mainContent ul ul li,
#subContent ul li li
{
	list-style: none;
	margin: 0 0 8px 16px;
}

#mainContent ul li li:before
{
	color: #783278;
	content: "\2013\0020";
	margin-left: -16px !important;
}

#mainContent ul ul li:before
{
	color: #783278;
	content: "\2013\0020";
	margin-left: -22px;
}

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

.professionals #banner
{
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.professionals-item #banner h1#pageTitle
{
	padding: 0;
	margin: 0 0 .3rem 0;
	color: #004f8e;
	height: auto;

	font-size: 22px;
	font-weight: bold;
	line-height: 1;
	text-align: left;
	text-transform: none;
}

#bioOfficeList,
#bioOfficeList li
{
	font-size: 16px;
	list-style: none;
	margin: 0;
	padding: 0;
}

#bioOfficeList
{
	margin: .3rem 0 1rem 0;
}

#bioPhoto
{
	position: absolute;
	top: 30px;
	left: 17px;
}

#bioTitle
{
	margin: .3rem 0;
	color: #004f8e;
	font-size: 16px;
}

#bioContact > *
{
	display: block;
	float: left;

	min-width: 23px;
	padding: 0 25px 0 0;
	margin: 0 12px 5px 0;
	background: url('../i/bio-icon-share.png') right no-repeat;
}

#bioContact :nth-child(3)
{
	clear: both;
}

#bioContact a[href^='mailto:']
{
	background-image: url('../i/bio-icon-email.png');
}

#bioContact a[href$='.vcf']
{
	background-image: url('../i/bio-icon-vcard.png');
}

#bioContact a[href*='tel:']
{
	background-image: url('../i/bio-icon-phone.png');
}

.bioList .bioItem
{
	padding: 14px 8px 12px 0;
	border-bottom: 1px solid #0d4e83;
	font-weight: bold;
}

.bioList .email a
{
	padding: 0 24px 0 0;
	display: inline-block;

	min-width: 58px;
	box-sizing: border-box;
}

.bioList .biolistEmail a
{
	background: url('../i/bio-icon-email.png') right no-repeat;
}

.bioList .biolistVcard a
{
	background: url('../i/bio-icon-vcard.png') right no-repeat;
}

.bioListLogos
{
	width: 200px;
	padding: 10px 0 0 0;
}


/* hovering snippet box  -----------------------------------------------> */

#hoverBox
{
	width: 321px;
	position: absolute;
	left:220px;
	z-index: 1;
	background: #002856;
	color: #ffffff;
}

#hoverBox a
{
	/*color: #27aae1;*/
	color: #007EB6;
}

#hoverBoxImage
{
	float: left;
	width: 66px;
}

#hoverBoxImage img
{
	margin: 14px 9px;
	display: block;
	width: 56px;
}

#hoverBoxContent
{
	float: left;
	width:200px;
	margin: 14px 9px;
}

#hoverBoxContent #bioName
{
}

#hoverBoxContent #bioPhone
{
}

#hoverBoxContent #bioEmail a
{
	background: url('../i/bio-icon-email.png') right no-repeat;
	padding-right: 23px;
}

#hoverBoxContent #bioContent
{
	margin-top: 5px;
}

#subContent h2.toggleSideSlider + div,
#subContent h2.toggleSideSlider + span,
#subContent h2.fauxToggleSideSlider + div
{
	display: block;
	padding: 12px 22px 18px 38px;
}

#subContent h2.toggleSideSlider,
#subContent h2.fauxToggleSideSlider
{
	margin: 0;
	padding: 11px 30px 11px 38px;

	font-weight: normal;
	font-size: 16px;
	line-height: 18px;

	background: #002856 url('../i/subnav-arrow.png') 14px 50% no-repeat;
	border-bottom: 1px solid white;

	color: white;
}

#subContent h2.toggleSideSlider.collapsed
{
	background: #74767B;
}

#mainContent h5
{
	margin: 0;
	padding: 12px 20px 13px 16px;
	color: #ffffff;
	font-size: 18px;
	font-weight: bold;
	line-height: 19px;
	background: #004f8e url('../i/h2-arrow-closed.png') right 0 no-repeat;
	border-top: 2px solid #ffffff;
	border-bottom: 1px solid #ffffff;
}

#mainContent h5.expanded
{
	color: #004f8e;
	background: #e6e7e8 url('../i/h2-arrow-open.png') right 0 no-repeat;
}


#mainContent h5,
#subContent h2.toggleSideSlider
{
	cursor: pointer;
}

#subContent h2.toggleSideSlider button
{
	background: none;
	border: none;
	color: inherit;
	font-size: inherit;
	padding: 0;
}

#subContent h2.toggleSideSlider button:focus
{
	/*color: #27aae1;*/
	color: #007EB6;
}

#subContent h2.collapsed.toggleSideSlider + *
{
	display: none;
}

#mainContent h5 + p
{
	padding-left: 16px;
}

#subContent .sideStaticText
{
	padding: 20px 30px 20px 30px;
}

#subContent #bio_education p
{
	padding: 0 0 8px 0;
}

#subContent #bio_bar ul,
#subContent #bio_bar ul li,
#subContent #bio_area ul,
#subContent #bio_area ul li,
#subContent #bio_industry ul,
#subContent #bio_industry ul li
{
	list-style: none;
	margin: 0;
	padding: 0;
}

#subContent #bio_area div,
#subContent #bio_industry div
{
	padding: 0;
}

#subContent #bio_area ul li,
#subContent #bio_industry ul li
{
	padding: 12px 22px 12px 38px;
	border-bottom: 1px solid white;
}

#subContent #bio_bars ul,
#subContent #bio_bars ul li,
#subContent #bio_clerkships ul,
#subContent #bio_clerkships ul li,
#subContent #bio_language ul,
#subContent #bio_language ul li,
#subContent #area_bio_contact ul,
#subContent #area_bio_contact ul li,
#subContent #area_relatedsame ul,
#subContent #area_relatedsame ul li,
#subContent #area_brochure ul,
#subContent #area_brochure ul li,
#subContent #search_bio ul,
#subContent #search_bio ul li,
#subContent #office_news ul,
#subContent #office_news ul li,
#subContent #office_event ul,
#subContent #office_event ul li,
#subContent #office_contact ul,
#subContent #office_contact ul li,
#subContent #event_area ul,
#subContent #event_area ul li,
#subContent #item_bio ul,
#subContent #item_bio ul li,
#subContent #item_area ul,
#subContent #item_area ul li,
#subContent #item_industry ul,
#subContent #item_industry ul li,
#subContent #item_office ul,
#subContent #item_office ul li,
#mainContent .itemList ul.results_list,
#mainContent .itemList ul.results_list li
{
	list-style: none;
	margin: 0;
	padding: 0;
}

#subContent #bio_bar ul li,
#subContent #bio_clerkships ul li,
#subContent #bio_language ul li,
#subContent #area_bio_contact ul li,
#subContent #area_relatedsame ul li,
#subContent #area_brochure ul li,
#subContent #search_bio ul li,
#subContent #office_news ul,
#subContent #office_news ul li,
#subContent #office_event ul,
#subContent #office_event ul li,
#subContent #event_area ul,
#subContent #event_area ul li,
#subContent #item_bio ul,
#subContent #item_bio ul li,
#subContent #item_area ul,
#subContent #item_area ul li,
#subContent #item_industry ul,
#subContent #item_industry ul li,
#subContent #item_office ul,
#subContent #item_office ul li
{
	list-style: none;
	margin: 0;
	padding: 0 0 8px 0;
}

#mainContent .itemList ul.results_list li
{
	list-style: none;
	margin: 0;
	padding: 8px 0 8px 0;
	border-top: 1px solid #e9e9e9;
}

#events-rsvp #subContent ul.results_list,
#events-rsvp #subContent ul.results_list li
{
	list-style: none;
	margin: 0;
	padding: 8px 0 0 14px;
}

#mainContent .itemList ul.results_list li:first-child
{
	border-top: 0 solid #e9e9e9;
}

#subContent #area_bio_contact ul li
{
	line-height: 23px;
	color: #3b60ad;
	clear: both;
}

#subContent #area_bio_contact ul li .photo
{
	float: left;
	margin: 0 10px 0 0;
}

.professionals-item #mainContent #bio_blogpost ul.blogResults,
.professionals-item #mainContent #bio_blogpost ul.blogResults li
{
	margin-left: 0;
}

a.profileEmail
{
	padding: 0 0 0 26px;
	background: url('../i/bio-icon-email.png') no-repeat;
}

a.profileVcard
{
	padding: 0 0 0 26px;
	background: url('../i/bio-icon-vcard.png') no-repeat;
}

a.viewBrochure
{
	display: block;
	font-weight: bold;
	margin: 0 0 0 26px;
}

a.viewBrochure img
{
	margin: 10px 0 0 0;
}


/* bio/practice/ profile tabbed displays */

#tabGroups
{
	overflow: hidden;
	margin: -10px 0 10px 0;
	padding: 0;

	font-weight: bold;
	text-transform: uppercase;
	color: #74767B;
}

#tabGroups div.revealerOn,
#tabGroups div:hover
{
	color: #002856;
}

.revealer
{
	float: left;
	margin-right: 34px;
	cursor: pointer;
}


#tab2-group,
#tab3-group,
#tab4-group,
#tab5-group,
#tab6-group,
#tab7-group
{
	display: none;
	margin: 0;
}


#area_bio .bioList ul,
#area_bio .bioList h2.subhead
{
	display: none;
}

#area_bio
{
	padding-top: 22px;
}

#letterLinks
{
	background: #401b61;
	text-align: center;
	padding: 13px;
	margin: 0 0 1rem -17px;
}

#letterLinks *
{
	color: white;
	margin-right: 7px;
}

#letterLinks *:last-child
{
	margin-right: 0;
}

#letterLinks span
{
	opacity: .5;
}

#mainBioSearch
{
	display: flex;
	justify-content: space-between;

	margin-left: -17px;
	height: 208px;
}

#mainBioSearch #letterLinks
{
	width: calc(25% - 12px);
	height: 100%;
	padding: 27px 14px;
	box-sizing: border-box;
	font: inherit;

	margin: 0;
	text-align: left;
}

#mainBioSearch > .search_form
{
	width: calc(75% - 12px);
}

#mainBioSearch > .search_form > form
{
	width: 100%;
}

#mainBioSearch form > div
{
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	align-content: space-between;
	justify-content: center;


	width: 100%;

	height: 208px;
}

#mainBioSearch form > div > div
{
	background: #044f8e;
	width: calc(33.33% - 48px);
	height: 26px;

	color: white;
	padding: 0 17px;
}

#mainBioSearch div:not(.dropWrapper) > label
{
	display: block !important;
	opacity: 1 !important;
	position: static;
	float: left;

	width: 82px;
	line-height: 22px;
}

#mainBioSearch input[type=text]
{
	width: calc(100% - 82px);
	float: right;
	box-sizing: border-box;
	background: #b4cbdd;
	border: 0;
}

#mainBioSearch .customSelect
{
	border: 0;
	background: transparent;
	color: white;
}

#mainBioSearch .customSelectInner:after
{
	border-top-color: #b4cbdd;
	right: 2px;
}

#mainBioSearch form > div > :nth-of-type(1),
#mainBioSearch form > div > :nth-of-type(7)
{
	padding-top: 25px;
}

#mainBioSearch form > div > :nth-of-type(n + 7)
{
	background: #16445c;
}

#mainBioSearch form > div > :nth-of-type(n + 6) input[type=text]
{
	background: #7fa8aa;
}

#mainBioSearch form > div > :nth-of-type(n + 6) .customSelectInner:after
{
	border-top-color: #7fa8aa;
}

#mainBioSearch form > div > :nth-of-type(6),
#mainBioSearch form > div > :nth-of-type(12)
{
	flex-grow: 1;
	padding-bottom: 25px;
}

#mainBioSearch form > div > div:last-child
{
	display: flex;
	flex-direction:column;
	justify-content: center;
	text-align: center;

	height: 100%;
	background: #e7e7e8;
}

#mainBioSearch input[type=submit]
{
	width: 56.6%;
	margin: 0 auto;
	height: 71px;
	border: 0;
	/*background: #27aae1;*/
	background: #007EB6;
	text-transform: uppercase;
	text-align: center;
}

.bioList .results_list > div .office ul li
{
	list-style: none;
	list-style-image: none;
}

body#services #mainContent
{
	display: flex;
}

body#services #mainContent h2
{
	margin-bottom: 20px;
}

#practiceList
{
	flex: 1 1 auto;
}

#practiceList > div
{

	display: flex;
	justify-content: space-between;
}

#practiceList h2
{
}

#industryList
{
	width: calc(100%/3);
}

#mainContent div.listColumn
{
	position: relative;
	margin-bottom: 1em;
}

#mainContent div.listColumn ul,
#mainContent div.listColumn ul li
{
	display: block;
	position: relative;
	padding: 0;
	margin: .25em 0;
	line-height: normal;
	list-style: none;
	list-style-image: none;
	font-weight: bold;
}

#practiceList .listColumn
{
	width: calc(50% - 25px);
}

#industryList
{
	padding-right: 50px;
	margin-right: 50px;
	border-right: 1px solid #d5d5d5;
}


#mainContent div.listColumn > ul.results_list > li
{
	margin: 0;
	padding: 10px 0 10px 0;
	border-bottom: 1px solid #d5d5d5;
}

#mainContent div.listColumn > ul.results_list > li:first-child
{

}

#mainContent div.listColumn > ul.results_list > li > a
{
}

#mainContent div.listColumn ul.hierList li
{
	font-weight: normal;
	padding: 5px 0 5px 0;
}

/*#mainContent div.listColumn ul
{
	border-right: 2em solid white;
}*/

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

#mainContent div.listColumn li li
{
	margin-left: 20px;
}

div.itemRow div.title
{
	margin-top: 8px;
	margin-bottom: 0;
}

div.itemRow div.title p
{
	margin: 0;
	padding: 0;
}

.itemRowImg
{
	float: left;
	width: 110px;
	text-align: left;
}

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

.itemFooter
{
	border-top: 1px solid #ccc;
	padding-top: .5em;
}

#otherOffices
{
	margin: 5px 0 0 0;
}

#otherOffices a
{
	color: #ffffff;
}

#upperSpotlight
{
	width: 100%;
	background: #ffffff;
	padding-top: 2px;
	overflow: hidden;
}

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

#upperSpotlight div ul li
{
	position: relative;
	float: left;
	width: 30%;
	height: 246px;
	margin-left: 2px;
	background: #1e365f;
}

#upperSpotlight div ul li:first-child
{
	margin-left: 0;
}

#upperSpotlight div ul li div.spotimage,
#upperSpotlight div ul li div.photo
{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 4;
	width: 100%;
}

#upperSpotlight ul li .photo
{
	display: block;
}

#upperSpotlight ul li .photowide
{
	display: none;
}

#upperSpotlight div ul li div.title
{
	position: absolute;
	z-index: 5;
	color: #ffffff;
	bottom: 0;
	min-height: 70px;
	width: 100%;
	padding: 20px 30px 20px 30px;
	box-sizing: border-box;
	background: url('../i/spot-trans.png') repeat;
}

#careers #upperSpotlight div ul li div.url
{
	display: none;
}

#careers #upperSpotlight div ul li
{
	cursor: pointer;
	font-size: 13px;
}

#careers #upperSpotlight div ul li div.title
{
	min-height: auto;
	font-size: 16px;
}

#upperSpotlight div ul li div.title a
{
	color: #ffffff;
	font-weight: bold;
}

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

#upperSpotlight div ul li div.title span.bumpDate
{
	color: #ffffff;
	font-weight: normal;
}

#upperSpotlight div ul li div.content
{
	position: absolute;
	z-index: 5;
	color: #ffffff;
	top: 318px;
	height: 206px;
	width: 258px;
	padding: 20px 30px 20px 30px;
}

#upperSpotlight ul li .spotimage
{
	display: block;
}

#upperSpotlight ul li .spotimagewide
{
	display: none;
}

#downloadLogosBox
{
	margin: 0 0 5px 0;

	/* make div stretch to height of content */
	overflow: hidden;
}

.downloadLogos
{
	float: left;
	width: 540px;
	height: 68px;
	margin: 0 18px 13px 0;
	padding: 5px 5px 5px 5px;
	border: 1px solid #d4d4d4;
}

#downloadLogos_2,
#downloadLogos_4,
#downloadLogos_6,
#downloadLogos_8,
#downloadLogos_10,
#downloadLogos_12
{
	margin: 0 0 13px 0;
}

a.smallJPG-button,
a.largeJPG-button,
a.vectorJPG-button
{
	display: inline-block;
	/*min-width: 90px;*/
	padding: 1px 3px 1px 3px;
	background: #a0b1d0;
	border: 1px solid #879abd;
	color: #ffffff;
	font-size: 10px;
	text-decoration: none;
	text-align: center;
}

a.smallJPG-button:hover,
a.largeJPG-button:hover,
a.vectorJPG-button:hover,
a.smallJPG-button:focus,
a.largeJPG-button:focus,
a.vectorJPG-button:focus
{
	text-decoration: none;
	background: #879abd;
}

.downloadLogos a.smallJPG-button,
.downloadLogos a.largeJPG-button,
.downloadLogos a.vectorJPG-button
{
	width: 80px;
	margin: 24px 0 7px 10px;
}

img.previewLogoImage
{
	float: left;
	display: inline-block;
	margin: 0 50px 21px 0;
}

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

#subContent #office_contact ul li
{
	padding: 1rem 0;

	/* make div stretch to height of content */
	overflow: hidden;
}

#subContent #office_contact ul li > div
{
	float: left;
	width: 145px;
}

#subContent #office_contact .email,
#subContent #office_contact .vcard
{
	float: right;
	width: 60px;
}

#subContent #office_contact .email a,
#subContent #office_contact .vcard a
{
	display: block;
	padding: 0 29px 0 0;
	background: url('../i/bio-icon-email.png') right no-repeat;
}

#subContent #office_contact .vcard a
{
	background-image: url('../i/bio-icon-vcard.png');
}

#contentMap
{
	height: 444px;
	padding-top: 170px;
	margin-top: 15px;
	box-sizing: border-box;

	background: url('../i/content-map.png') top no-repeat;

	font-size: 34px;
	color: #219ed6;
	text-transform: uppercase;
	text-align: center;
}

#mainContent div.locationsList
{
	float: left;
	width: 150px;
	margin: 0 0 20px 0;
	border-left: 90px solid #ffffff;
}

#mainContent div.firstLocationsList
{
	border-left: 8px solid #ffffff;
}

#mainContent div.stateList
{

	width: 100%;
}

#mainContent div.locationsList ul,
#mainContent div.locationsList ul li
{
	list-style: none;
	margin: 0;
	padding: 0;
}

#mainContent div.locationsList ul li.stateItem
{
	margin: 10px 0 0 0;
	padding: 12px 0 3px 0;
	font-weight: bold;
	border-bottom: 1px solid #dddddd;
}

#mainContent div.stateList ul li.stateItem
{
	float: none;
}

#mainContent div.stateList ul li.stateItem
{
	font-size: 18px;
	border-bottom: 0;
	color: #1a3564;
}

#mainContent div.stateList ul li.stateItem a
{
	color: #1a3564;
}

#mainContent div.locationsList ul li.cityItem
{
	padding: 5px 0 8px 20px;
}

#mainContent div.stateList ul li.cityItem
{
	position: relative;
	float: left;
	width: 560px;
	height: 265px;
	padding: 20px 0 0 0;
}

#mainContent div.stateList ul li.cityItem img.cityItemImage
{
	position: absolute;
	display; block;
	margin: 0;
	background: #f2f2f2;
}

#mainContent div.stateList ul li.cityItem div.cityItemInner
{
	position: absolute;
	bottom: 0;
	left: 40px;
	width: 240px;
	height: 160px;
	padding: 25px 0 0 30px;
	background: url('../i/office-trans.png') 0 0 repeat;
	color: #ffffff;
}

#mainContent div.stateList ul li.cityItem div.cityItemInner a
{
	font-weight: bold;
	color: #ffffff;
}

#mainContent div.stateList ul li.cityItem div.cityItemInner a:after
{

	content: " ►";
	font-size: 8px;
}

#mainContent div.stateList ul li.cityItem div.cityItemInner a.sp_pencil:after
{
	content: "";
}

#mainContent div.stateList ul li.cityItem a
{
	font-weight: bold;
}

.statePageImg
{
	display: block;
}

#officeButton
{
	padding: 12px;
	background: #3f1a61;
	color: white;

	margin: 0 0 1rem 0;
	display: inline-block;
}

#officeButton:after
{
	content: '';
	display: inline-block;
	vertical-align: baseline;
	position: relative;
	top: 1px;

	width: 0;
	height: 0;
	transform: rotate(45deg);
	margin-left: 8px;

	background: pink;
	border: 5px solid;
	border-color: #a6a8ab #a6a8ab #e6e7e8 #e6e7e8;
}

.view_more
{
	margin: 0 0 25px 0;
}

.view_more a
{
	text-decoration: underline;
}

.viewMore
{
	margin: 14px 0 6px 0;
}

.diversity-events .view_more,
.events .view_more,
.newsroom .view_more
{
	margin: 14px 0 18px 0;
}

.viewMore a,
.newsroom .view_more a,
.events .view_more a,
.diversity-events .view_more a
{
	background: #004f8e;
	color: #ffffff;
	padding: 6px 10px;
	text-decoration: none;
	cursor: pointer;

	box-sizing: border-box;
	min-width: 80px;
	text-align: center;
	display: inline-block;
}

.viewMore a:hover,
.newsroom .view_more a:hover,
.events .view_more a:hover,
.diversity-events .view_more a:hover,
.viewMore a:focus,
.newsroom .view_more a:focus,
.events .view_more a:focus,
.diversity-events .view_more a:focus,
form div .buttonInput:focus,
form div .buttonInput:hover
{
	background: #b4b6b8;
}

#subContent .view_more
{
	margin: 0 0 5px 0;
}

#subContent .view_more a
{
	text-decoration: none;
}

#banner #pdfLink
{
	position: absolute;
	z-index: 200;
	bottom: 8px;
	right: 9px;
	color: #9abbff;
}

#diversitySquares
{
	margin-left: -17px;
}

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

#mainContent #diversitySquares ul
{
	display: flex;
	justify-content: space-between;
}

#mainContent #diversitySquares ul li
{
	position: relative;

	width: calc(33% - 10px);
	box-sizing: border-box;

	margin: 0 2px 2px 0;
	overflow: hidden;

	border: 1px solid #777;
}

#mainContent #diversitySquares li > *
{
	position: absolute;
	bottom: 0;
	right: 0;
	width: 100%;
	box-sizing: border-box;
}

#mainContent #diversitySquares ul li .title
{
	bottom: 0;
	left: 0;

	padding: 20px 30px 20px 30px;
	background: url('../i/spot-trans.png') repeat;
	color: #ffffff;
	cursor: pointer;
}

#mainContent #diversitySquares ul li .quote
{
	display: none;
}

#mainContent #diversitySquares ul li .photo,
#mainContent #diversitySquares ul li .photowide
{
	position: static;
	height: 100%;

	display: flex;
	flex-direction: column;
	justify-content: space-around;
}

#mainContent #diversitySquares ul li .photowide
{
	display: none;
}

#mainContent #diversitySquares ul li .photo img,
#mainContent #diversitySquares ul li .photowide img
{
	display: block;
	max-width: 100%;
	margin: 0 auto;
}

span.moreButton
{
	color: #a7a9ac;
}

#quotePicBox
{
	position: relative;
}

#quotePicBox #itemQuote
{
	position: absolute;
	bottom: 0;
	width: 500px;
	padding: 20px 30px 20px 30px;
	background: url('../i/spot-trans.png') repeat;
	color: #ffffff;
}

#quotePicBox #itemQuote p
{
	/*font-size: 16px;
	line-height: 26px;*/
}

body.diversity-item img#itemPhoto,
body.about-community-item img#itemPhoto
{
	display: block;
	margin: 20px 0 20px 0;
}


/* Video/audio library -----------------------------------------------> */

.videoItem,
.audioItem
{
	position: relative;
	float: left;
	width: 175px;
	height: 170px;
	padding-right: 12px;
	margin-bottom: 10px;
}

.videoItem
{
	margin-bottom: 76px;
}

.audioItem
{
	clear: both;
	width: 400px;
	height: auto;
	padding: 0;
}

.videoItem p,
.audioItem p
{
	font-weight: bold;
}

.audioItem > div,
.audioItem object
{
	height: 24px !important;
}

.videoItem,
.audioItem
{
	display: none;
}

/*
.loaded .videoItem,
.loaded .audioItem
{
	display: block;
}
*/

#moreVideos,
#moreAudios
{
	display: none;
}

.videoItem .videoWrapper
{
	border: 1px solid #c9c9c9;
	width: 175px;
	height: 136px;
}

.embedWrapper
{
	margin: 1em 0;
}

.miniVid .vidThumb
{
	display: block;
	width: 175px;
	height: 136px;
	border: 1px solid #c9c9c9;
	cursor: pointer;
	background: #c9c9c9;
}

.miniVid .vidThumb span
{
	display: block;
	width: 100%;
	height: 100%;
	background: url('../i/mini-play-button.png') 0 30px no-repeat;
}

.miniVid .closeButton
{
	position: absolute;
	right: -5px;
	top: 0;
	width: 22px;
	height: 22px;
	font-weight: bold;
	color: #ffffff;
	cursor: pointer;
}

.miniVid .videoWrapper
{
	display: none;
	position: fixed;
	left: 50%;
	top: 50%;
	z-index: 3000;
	margin-left: -150px;
	margin-top: -150px;
	padding: 17px;
	padding-bottom: 8px;
	width: auto;
	height: auto;
	background: #000000;
	border: none;
	cursor: pointer;
}

.viewMoreMedia
{
	display: none;
	clear: both;
}

.videoRow
{
	clear: both;
}


/* firm facts */

#mainContent #firmFacts
{
	margin: 20px 0 0 0;
	padding: 0;
	font-size: 14px;
}

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

#mainContent #firmFacts ul li
{
	clear: both;
	float: none;
	margin: 0;
	padding: 20px 0 0 0;
}

#mainContent #firmFacts ul li strong,
#mainContent #firmFacts ul li b
{
	font-size: 16px;
	font-weight: normal;
}
#mainContent #firmFacts li.spotlightFact p
{
	line-height: 20px;
}

#mainContent #firmFacts li:not(.spotlightFact) p
{
	font-size: 1rem;
}

#mainContent #firmFacts li:not(.spotlightFact) p b,
#mainContent #firmFacts li:not(.spotlightFact) p strong
{
	color: #004f8e;
}

#mainContent #firmFacts ul li.spotlightFact
{
	clear: none;
	float: left;
	color: #ffffff;
	margin: 0 2px 0 0;
	padding: 0 0 2px 0;
}

#mainContent #firmFacts ul li.spotlightFact .factWrapper
{
	position: relative;
	width: 155px;
	height: 155px;
	padding: 5px 12px;

	box-sizing: border-box;
}

#mainContent #firmFacts ul li.spotlightFact .bgColor_1
{

	background: #004f8e;
}

#mainContent #firmFacts ul li.spotlightFact .bgColor_2
{

	background: #16555c;
}

#mainContent #firmFacts ul li.spotlightFact .bgColor_3
{

	background: #401b61;
}

#mainContent #firmFacts ul li.spotlightFact .bgColor_1 strong,
#mainContent #firmFacts ul li.spotlightFact .bgColor_1 b,
#mainContent #firmFacts ul li.spotlightFact .bgColor_2 strong,
#mainContent #firmFacts ul li.spotlightFact .bgColor_2 b
{
	color: #ffffff;
	font-weight: bold;
}

#mainContent #firmFacts ul li.spotlightFact .bgColor_3 strong,
#mainContent #firmFacts ul li.spotlightFact .bgColor_3 b
{
	font-weight: bold;
}

#mainContent #firmFacts ul li.spotlightFact .factWrapper .factNumber
{
	position: absolute;
	bottom: 8px;
	right: 13px;
	font-size: 38px;
	font-weight: bold;

	line-height: 1;
}


#speakerHeaders
{
	clear: both;
	border-top: 1px solid #e9e9e9;
	border-bottom: 1px solid #e9e9e9;
	height: 28px;
}

#speakerHeaders > div
{
	float: left;
	width: 32%;
	height: 28px;
	color: #3f619e;
	font-weight: bold;
	line-height: 30px;
}

#speakerHeaders > div:first-child
{
	padding-left: 10px;
}

.speakerListItems
{
	border-bottom: 1px solid #e9e9e9;

	/* make div stretch to height of content */
	overflow: hidden;
}

.speakerListItems > div
{
	float: left;
	width: 32%;
	padding: 10px 0 0 0;
}

.speakerListItems > div:first-child
{
	padding-left: 10px;
}

#mainContent .speakerListItems > div ul,
#mainContent .speakerListItems > div ul li
{
	list-style: none;
	margin: 0;
	padding: 0 0 8px 0;
}

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

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

form:after
{
	content: '';
	display: block;
	clear: both;
}

form > div > div
{
	position: relative;

	width: 100%;
	max-width: 436px;
	height: 33px;

	padding-right: 1rem;
}

form > div > div.noDisplay
{
	display: none;
}

#mainContent form > div > div li
{
	list-style: none;
}

.search_form + .results
{
	padding-top: 1em;
}

form div .full_width
{
	width: 100%;
}

form label
{
	position: absolute;
	top: 0;
	left: 7px;
	height: 28px;
	line-height: 28px;
	font: inherit;

	background: transparent !important;
}

form #radio_wrapper
{
	width: 100%;
	margin: 12px 0 15px 0;
}

form #radio_wrapper label
{
	position: relative;
	left: 0;
	display: inline;
	visibility: visible;
	line-height: normal;
}

form div #submit_wrapper
{
	float: none;
	clear: both;
}

form div .textarea_wrapper
{
	height: 120px;
	width: auto;
	float: none;
	clear: both;
}

form div #radio_wrapper label,
form div #newsletter_wrapper label
{
	float: none;
	position: relative;
	left: 0;
	display: inline;
	visibility: visible;
	line-height: normal;
}

form div #newsletter_wrapper input
{
	float: left;
}

form div #newsletter_wrapper
{
	width: 100%;
	margin-left: 30px;
}

form div #newsletter_wrapper div div
{
	padding-bottom: 5px;
	line-height: 16px;
}

form div #newsletter_wrapper div
{
	width: 400px;
}

form div #newsletter_wrapper label:first-child
{
	display: block;
	height: 18px;
}

form #textarea_wrapper label
{
	float: none;
	display: inline;
	visibility: visible;
	line-height: normal;
	line-height: 30px;
	height: 30px;
}

form div #newsletter_wrapper
{
	height: auto;
	margin: 0 0 10px 0;
}

form div #radio_wrapper div
{
	height: auto;
}

form div #newsletter_wrapper div
{
	height: auto;
}

form div #newsletter_wrapper div:first-child
{
	width: 100%;
	margin: 0;
}

form textarea,
form div select,
form .customSelect,
form input[type=text]
{
	width: 100%;
	height: 25px;
	box-sizing: border-box;
	margin: 0 0 8px 0;
	padding: 1px 4px;
	background: #ffffff;
	border: 1px solid #d1d1d1;
	font: inherit;
	color: #333333;
}

form .customSelect
{
	position: relative;
	padding: 0;
}

select.hasCustomSelect
{
	z-index: 999;
}

form .customSelectInner
{
	width: calc(100% - 25px) !important;
	box-sizing: border-box;
	height: 100%;
	padding: 0 4px;
	overflow: hidden;
}

form .customSelectInner:after
{
	content: '';
	position: absolute;
	right: 9px;
	top: 7px;

	/* triangle */
	width: 0;
	height: 0;
	border: solid transparent;
	border-width: 9px 5.5px 0 5.5px;
	border-top-color: #004f8e;
	margin-left: 22px;
	line-height: 1;

	display: inline-block;
	overflow: hidden;
}

form textarea
{
	width: 100%;
	height: 100px;
}

#mainContent form input.checkboxInput label,
#mainContent form input.radioInput label
{
	position: relative;
	top: 0;
	left: 0;
}


form div .buttonWrapper
{
	width: auto;
}

form div .buttonInput
{
	width: auto;
	margin: 0;
	padding: 6px 10px;
	/*background: #27aae1;*/
	background: #007EB6;
	border: 0;
	color: #ffffff;
	cursor: pointer;
	font: inherit;
	text-align: center;

	display: inline-block;
	min-width: 80px;
	box-sizing: border-box;
}

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

form > div > div > label[for=publications]
{
	position: relative;
}

#newsroom #mainContent form
{
	/*height: 140px;*/
	margin: 0 0 20px;
}

#newsroom-news #mainContent form
{
	height: 180px;
	margin: 10px 0 0 0;
}

#newsroom #mainContent form div div
{
	float: none;
}

#newsroom-press-logos #mainContent form
{
	height: 90px;
}

#eventSearch
{
	background: #a7a9ac;
	border-bottom: 1px solid white;
}

#subContent #eventSearch h2
{
	background: #002856;
	padding-left: 22px;
}

#subContent #eventSearch > div
{
	padding-left: 22px;
}

#eventSearch .customSelectInner:after
{
	border-top-color: #002856;
	margin-top: 4px;
}

#eventSearch div
{
	height: auto;
}

#eventSearch .customSelect,
#eventSearch label,
#eventSearch input[type=text]
{
	background: #e6e7e8;
	height: 31px;
	line-height: 31px;
	box-sizing: border-box;
}

#eventSearch input[type=submit]
{
	height: 31px;
}

#eventSearch form
{
	padding-bottom: 2rem;
}

#newsroom-press-speakers #mainContent form
{
	height: 140px;
}

#navButton-professionals ul li
{
	background: inherit;
}

#navButton-professionals:hover ul
{
	display: flex !important;
	width: auto;
	min-width: 528px;
}

#mainNav li.megaMenu
{
	padding-right: 18px;
	color: white;
}

.megaMenu form > div
{
	display: flex;
	padding: 15px 0 15px 0;
}

.megaMenu form > div > div
{
	width: 170px;
	padding: 0 11px 0 0;
	box-sizing: border-box;
}

.megaMenu form > div > div:last-child
{
	width: auto;
	padding: 0;
}

#mainNav .megaMenu label,
#mainNav .megaMenu input
{
	width: 100%;
	height: 33px;
	line-height: 33px;
	font-size: 14px;
	color: #00447c;
	padding: 0;
}

#mainNav .megaMenu input[type=submit]
{
	color: white;
}

#navLetterLinks
{
	display: flex;
	justify-content: space-between;

	font-weight: bold;
	padding-top: 6px;
	font-size: 14px;
}

#navLetterLinks span
{
	opacity: .5;
}

/* Page transition flicker fix causes fields to show through too quick.
 Suppress for js, then show with js later to fix. */

form
{
	display: none;
}

.loaded form
{
	display: block;
}

#emailField
{
	display: none;
}

/* auto complete js */

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

.autocomplete
{
	max-height: 350px;
	min-width: 300px;
	overflow: auto;
	margin: -6px 6px 6px -6px;
	background: #fff;
	border: 1px solid #999;
	text-align: left;
	cursor: default;
	box-shadow: 4px 4px 5px -2px rgba(0,0,0,0.5);
}

.autocomplete .selected
{
	background: #f0f0f0;
}

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

.autocomplete div span.autoCompleteMore
{
	color: #3b60ad;
	font-size: 1.1rem;
}

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

.autocomplete strong
{
	font-weight: bolder;
	color: #3b60ad;
}


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

#footer
{
	padding-bottom: 1rem;
	color: #004f8e;
}

#footer a
{
	color: inherit;
}

#footer ul,
#footer li
{
	display: block;
	list-style: none;

	margin: 0;
	padding: 0;
}

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

	font-size: 12px;
}

#footer li:not(:last-child)
{
	padding-right: 20px;
}

ul#footerOffices
{
	justify-content: space-between;
	font-size: 14px;

	margin-bottom: .5rem;
}

#fullswitch
{
	cursor: pointer;
}

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


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


/*SiteMap object */

table.SITE_MAP
{
	border-collapse: collapse;
	margin-top: 5px;
}

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

table.SITE_MAP td.v_separator
{
	padding-left: 15px;
	padding-right: 15px;
	font-size: .8em;
	color: #666666;
}


/* EmailPage object */

div.EMAIL_PAGE div.email_form
{
	display: none;
}

p.EMAIL_PAGE-title
{
	font-weight: bold;
	margin-bottom: 0;
	padding-bottom: 0;
}

p.EMAIL_PAGE-url
{
	margin-top: 0;
	font-style: italic;
}

table.EMAIL_PAGE
{
	width: 500px;
}

table.EMAIL_PAGE td
{
	width: 47%;
}

table.EMAIL_PAGE td input
{
	width: 95%;
}

table.EMAIL_PAGE td textarea
{
	width: 100%;
	height: 120px;
}

div.EMAIL_PAGE ul.error
{
	color: red;
}


/* Search Object Support */

#search #search_button
{
	margin-left: 8px;
}

#search form div
{
	padding-bottom: .3em;
}

#search form div input[type=text]
{
	width: 250px;
	margin: 0;
	padding: 4px 6px;
}

#search form div div
	{
			height: auto;
	}


#search .search_form label
{
	display: inline;
	position: relative;
	top: 0;
	left: 0;
}

#search .search_form label,
#search .search_form input
{
	width: auto;
	margin: 3px 4px;
	vertical-align: middle;
}

#search div.sections,
#search div.search_type
{
	width: 35%;
	float: left;
}


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

#search a.more
{
	font-weight: bold;
	font-size: 1.1em;
}

#search div#select_all_links
{
	margin-top: 8px;
}

.searchfoundtext
{
	font-weight: bold;
}

#search p
{
	padding-top: 0;
	padding-bottom: 10px;
}

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

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

/* Map Object Support */

.sp_map
{
	margin: 0 0 20px 0;
}

#printMap
{
	display: inline-block;
	background: #3b60ad;
	width: 70px;
	margin: 20px 0 0 0;
	padding: 4px 4px 4px 4px;
	color: #ffffff;
	text-align: center;
}

#printMap:hover,
#printMap:focus
{
	background: #6a747c;
	text-decoration: none;
}


/* Home Page -----------------------------------------------------> */


#index #mainContent
{
	margin: 0;
	padding: 0;
}

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

#homeBanner
{
	height: 262px;
	margin-bottom: 17px;
	overflow: hidden !important;
	position: relative;
}

#homeBanner img
{
	display: block;
	position: absolute;
	left: calc(50% - 666px);
}

#homeBioSearch
{
	background: rgba(64, 27, 97, .66);
	overflow: hidden;

	position: absolute;
	top: 105px;
	left: calc(50% - 160px);

	z-index: 999;
	padding: 5px 25px;
	width: 320px;
	box-sizing: border-box;
}



#homeBioSearch label
{
	text-transform: uppercase;
}

#homeBioSearch div
{
	display: inline-block;
	float: none;
	width: auto;
	padding: 0;
}

#homeBioSearch *
{
	vertical-align: middle;
}

#homeBioSearch label,
#homeBioSearch input[type=text]
{
	background: transparent !important;
	border: 0;
	color: white !important;
	font-size: 18px;
	font-weight: bold;

	margin: 0 !important;
	padding: 0 !important;

	height: 35px;
	line-height: 35px;
	top: 0;
	left: 0;
	width: 240px;
}

#homeNews, #homeSpots
{
	height: 184px;
	padding: 0;
	margin: 0;
	box-sizing: border-box;
}

#homeSpots
{
	float: left;
	width: calc(75% - 6px);
}

#homeSpots ul
{
	list-style: none;

	display: flex;
	justify-content: space-between;
}

#homeSpots li
{
	width: calc(33.33% - 12px);
	position: relative;
	overflow: hidden;
}

#homeNews h2
{
	background: #74767B;
}

#homeNews h2,
#homeSpots .title
{
	min-height: 46px;
	padding: 5px 1rem;
	margin: 0;

	box-sizing: border-box;

	color: white;
	text-align: center;
	font-size: 1rem;
	font-weight: bold;
	line-height: normal;

	display: flex;
	justify-content: center;
	flex-direction: column;
}

#homeSpots .title
{
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 999;
}

#homeSpots .title a
{
	color: inherit;
	text-decoration: none;
	font-size: 14px;
}

#homeSpots .abstract
{
	height: 45px;
	width: 100%;
	top: 0;
	position: absolute;
	padding: 35px 1rem 10px;
	color: white;

	box-sizing: border-box;
	overflow: hidden;

	transition: .5s;
}

#homeSpots .abstract p
{
	line-height: normal;
}

#homeSpots .abstract > :first-child
{
	margin-top: 20px;
}

#homeSpots li:hover .abstract:not(:empty),
#homeSpots li:focus-within .abstract:not(:empty)
{
	height: 100%;
}

#homeSpots li:hover .abstract:not(:empty)
{
	height: 100%;
}

#homeSpots li:nth-child(1):not(:hover):not(:focus-within) .title { background: rgba(64, 27, 97, 1) }
#homeSpots li:nth-child(2):not(:hover):not(:focus-within) .title { background: rgba(0, 79, 142, 1) }
#homeSpots li:nth-child(3):not(:hover):not(:focus-within) .title { background: rgba(22, 85, 92, 1) }

#homeSpots li:nth-child(1) .abstract { background: rgba(64, 27, 97, .85) }
#homeSpots li:nth-child(2) .abstract { background: rgba(0, 79, 142, .85) }
#homeSpots li:nth-child(3) .abstract { background: rgba(22, 85, 92, .85) }

#homeSpots img
{
	width: 100%;
	display: block;
}

#homeNews
{
	float: right;
	width: calc(25% - 12px);
	box-sizing: border-box;

	position: relative;
	border: 1px solid #b4b6b8;
}

#index #homeNews .results_list
{
	height: 101px;
	overflow: hidden;
	margin: 12px 22px 3px;
}

#index #homeNews ul li
{
	display: block;

	overflow: hidden;
	padding: 0 0 1rem 0;
	line-height: 1.2;
	font-size: 14px;
}

#homeNews li a
{
	color: #4f5154;
}

#homeNews li a:hover,
#homeNews li a:focus
{
	color: #3b60ad;
	text-decoration: none;
}

#homeScroller > a
{
	/* triangle */
	width: 0;
	height: 0;
	border: solid transparent;
	border-width: 0 5.5px 9px 5.5px;
	border-bottom-color: #004f8e;
	margin: 0;
	line-height: 1;

	display: inline-block;
	overflow: hidden;
}

#homeScroller > a#ticker-next
{
	/* triangle */
	border: solid transparent;
	border-width: 9px 5.5px 0 5.5px;
	border-top-color: #004f8e;
	margin-left: 22px;
}

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

body.blogs #banner
{
	position: relative;
	margin: 0;
	height: 167px;
	background: #1a3462;
	overflow: hidden;
}

body.blogs #banner h1
{
	margin: 40px 30px 40px 60px;
	font-size: 50px;
	color: #a2c2ff;
}

body.blogs #blogTagline
{
	position: absolute;
	top: 102px;
	left: 58px;
	color: #a2c1ff;
	font-size: 18px;
	font-weight: bold;
	line-height: 26px;
}

/* main (hrlegal) blog nav */

body.blogs .nav-span
{
	background: #ffffff url('../i/navback-blog.png') top left no-repeat;
}

body.blogs #subContent ul,
body.blogs #subContent ul li
{
	list-style: none;
	margin: 0;
	padding: 0;
}

body.blogs #subContent ul li
{
	margin: 0;
	padding: 0 0 4px 0;
}

body.blogs #subContent ul li ul
{
	margin: 0 0 0 20px;
	padding: 4px 0 0 0;
}

body.blogs .blogSideAccessories
{
	padding: 30px 22px 18px 26px;
}

body.blogs form:after
{
	content: '';
	display: block;
	clear: none;
	margin: 0 0 20px 0;
}

body.blogs #subContent form > div
{
	margin: 0 0 8px 0;
	background: #ffffff;
	border: 1px solid #d1d1d1;
}

body.blogs #subContent form > div > div
{
	display: inline;
	width: auto;
	height: auto;
	padding: 0;
	position: static;
}

body.blogs #subContent .blogSideForm h2,
body.blogs #subContent .blogSideForm b,
body.blogs #subContent .blogSideForm strong
{
	color: #3c60ac;
	font: inherit;
	font-weight: bold;
	margin: 0;
	padding: 0;
}

body.blogs #subContent form label
{
	top: 0;
	left: 7px;
	height: 28px;
	line-height: 28px;
	color: #939192;
}

body.blogs #subContent form div input[type=text],
body.blogs #subContent form div input[type=email]
{
	width: 200px;
	margin: 0;
	padding: 4px 6px 2px 6px;
	background: none;
	border: 0 solid #d1d1d1;
	font-size: 16px;
	color: #939192;

	box-sizing: border-box;
}

body.blogs #subContent form div input.searchImage
{
	float: right;
	margin: 0;
}


body.blogs #subContent .blogSideLink
{
	margin: 5px 0 5px 0;
}

body.blogs #subContent .blogSideLink a img
{
	padding: 0 6px 0 0;
	vertical-align: top;
}

body.blogs .shareLink
{
	margin: 0 0 30px 0;
	padding: 0 0 5px 0;
	border-bottom: 1px solid #dfdfdf;
}

body.blogs .readMore
{
	font-weight: bold;
}

body.blogs .blogpost div.byline
{
	font-weight: bold;
}

body.blogs .blogpost .addthis_toolbox
{
	display: inline-block;
	float: left;
}

body.blogs .blogpost a.addthis_button
{
	margin: 0 6px 0 0;
	padding: 0 15px 0 0;
	background: url('../i/share-button.png') right 2px no-repeat;
}

body.blogs a.blogBioEmail
{
	padding: 0 25px 0 0;
	background: url('../i/bio-icon-email.png') top right no-repeat;
}

body.blogs a.blogPrint
{
	padding: 0 25px 0 0;
	background: url('../i/blog-print.png') top right no-repeat;
}

body.blogs .blogBio
{
	padding: 0 0 20px 0;
	margin: 0 0 10px 0;
	border-bottom: 1px solid #dfdfdf;
	line-height: 20px;
}

body.blogs .blogBio.blurbNarrow
{
	padding: 0 0 20px 0;
	margin: 0 0 10px 0;
	border-bottom: 0 solid #dfdfdf;
	line-height: 20px;
}

body.blogs img.blogBioPhoto
{
	display: block;
	float: left;
	margin: 0 25px 0 0;
}

body.blogs .blogBio.blurbNarrow img.blogBioPhoto
{
	display: block;
	float: none;
	margin: 0;
}

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

body.blogs .bioTitle
{
	color: #333333;
	font-size: 18px;
	line-height: 20px;
	font-weight: bold;
}

body.blogs .bioBlogHeader
{
	margin: 10px 0 20px 0;
	color: #333333;
	font-size: 18px;
	line-height: 20px;
	font-weight: bold;
}

body.blogs .bioBlogMasters
{
	float: left;
	width: 250px;
	padding: 0 10px 0 40px;
}

body.blogs .bioBlogMasters:first-child
{
	border-right: 1px solid #dfdfdf;
	padding: 0;
}

body.blogs .bioBlogMasters .bioTitle
{
	display: inline-block;
	color: #333333;
	font-size: 15px;
	line-height: 20px;
	font-weight: bold;
	padding: 15px 0 0 0;
}

body.blogs .blogBlurbBox
{
	margin: 20px 0 20px 0;
}



@media screen and (min-width: 1366px)
{
	body
	{
		width: 1306px; /* has 15px padding on both sides per default body style above */
	}

	/*bug 25388*/
	body.blogid_4 #banner
	{
		background: #325396;
	}

	#mainContent div.listColumn
	{
		/*width: 282px;*/
		/*width: 471px;*/
	}

	#tabGroups
	{
		width: 1016px;
	}

	.bioList .results_list
	{
		display: table;
		margin: 45px auto;
		min-width: 45%;
	}

	.bioList .bioItem
	{
		display: table-row;
		padding: 0;
	}

	.bioList .bioItem > div
	{
		display: table-cell;
		vertical-align: top;
		border-bottom: inherit;

		padding: 14px 8px 12px 10px;
		box-sizing: border-box;
	}

	.bioList .bioItem > div:first-child
	{
		padding-left: 0;
		width: 39px;
	}

	#mainContent div.locationsList
	{
		width: 244px;
	}

	#upperSpotlight
	{
		width: calc(100% + 192px);
		margin: -26px 0 1rem -17px;
	}

	#upperSpotlight div ul li
	{
		width: 30%;
		position: relative;
	}

	#upperSpotlight div ul li div.spotimagewide,
	#upperSpotlight div ul li div.photowide
	{
		width: 100%;
	}

	#upperSpotlight div ul li div.title
	{
		width: 100%;
		box-sizing: border-box;
	}

	#upperSpotlight ul li .photo,
	#upperSpotlight ul li .spotimage
	{
		display: none;
	}

	#upperSpotlight ul li .photowide,
	#upperSpotlight ul li .spotimagewide
	{
		display: block;
	}

	#diversitySquares
	{
		/*width: 960px;*/
		width: 75%;
		float: right;
		margin: 0 0 25px 25px;
	}

	#mainContent xxx#diversitySquares ul
	{
		display: flex;
	}

	#mainContent xxx#diversitySquares ul li
	{
		width: 33%;
	}

	#mainContent xxx#diversitySquares ul li .title
	{

	}

	#mainContent xxx#diversitySquares ul li .photo
	{

	}

	#mainContent xxx#diversitySquares ul li .photowide
	{

	}

	#index #homeLeft
	{
		/*width: 317px;*/
		width: 441px;
	}

	#index #homeRight
	{
		/*width: 638px;*/
		width: 892px;
	}

	#index #homeOffices .officeList
	{
		width: 441px;
	}

	#index #homeOffices .officeList ul
    {
		width: 180px;
    }

    #index #homeRight #homeRightTop
	{
		/*width: 638px;*/
		width: 892px;
	}

	#index .spotInfo
	{
		/*width: 268px;*/
		width: 395px;
	}

	#index #homeRight #homeRightTop img:first-child + img,
	#index #homeRight #homeRightTop div#spotInfo_1
	{
		margin: 0;
		left: 0;
	}

	#index #homeRight #homeRightBottom
	{
		/*width: 638px;*/
		width: 892px;
		background: url('../i/home-quad-lower-wide-left.png') no-repeat;
	}

	#homeNews #homeScroller
	{
		left: 411px;
	}

	.largeWidthOnly
	{
		display: block !important;
	}

	.standardWidthOnly
	{
		display: none !important;
	}
}

input[type=text]:focus,
input[type=tel]:focus,
input[type=email]:focus,
input[type=password]:focus,
textarea:focus,
.customSelectFocus,
.customSelectFocus .customSelectInner
{
	background-color: white !important;
	color: black !important;
}


/* END DEFAULT CSS -----------------------------------------------> */


/* BEGIN PRINT CSS -----------------------------------------------> */

/*@media all and (max-width:8.5in) /* use while programming */
@media print
{
	*
	{
		background: none !important;
		color: black !important;
	}

	#cookieBanner,
	#mainNav,
	#topLinks,
	#index #header,
	#index #homeOffices,
	#homeRightTop img,
	#homeRightBottom img,
	#timeLineBox,
	#timelinePrev,
	#timelineNext,
	#timelineBar,
	#letterLinks,
	#diversitySquares,
	.vidThumb,
	.videoWrapper,
	.audioItem > div,
	.locations-state #subContent,
	.buttonInput,
	#footerOffices,
	#tabGroups,
	#upperSpotlight,
	.newsroom #mainContent form,
	.events #mainContent form,
	.diversity-events #mainContent form,
	.smallJPG-button,
	.largeJPG-button,
	.vectorJPG-button,
	#contentMap,
	#officeContacts .email,
	#officeContacts .vcard,
	#officeButton,
	.vcard,
	#bioVcard,
	#bioPDF,
	#pdfLink,
	.services-item .email,
	.view_more,
	.viewMore,
	.sp_map,
	#printMap,
	.bioList .email,
	.noPrint,
	.subNavList,
	.largeWidthOnly
	{
		display: none !important;
	}

	body,
	#content,
	#index #content
	{
		position: relative !important;
		width: auto !important;
		background: none !important;
		margin: 0 !important;
		padding: 0 !important;
		min-width: 0 !important;
		min-height: 0 !important;
		overflow: visible !important;
	}

	#header
	{
		height: auto;
		padding: 0 0 10px 0;
	}

	#content,
	#index #content
	{
		overflow-x: hidden;
		min-height: 1px !important;
		height: auto !important;
		overflow: visible !important; /* need for FF not to puke */
		height: 100% !important; /* need for FF not to puke */
		margin: 0;
		padding: 0;
	}

	#mainContent
	{
		position: relative;
		width: 67% !important;
		margin: 0;
		padding: 0;
		float: left;
	}

	#subContent
	{
		width: 28% !important;
		margin: 0;
		padding: 0;
		float: right;
	}

	#index #mainContent
	{
		position: relative;
		float: none !important;
		width: 100% !important;
		height: auto !important;
		margin: 0;
		padding: 0;
	}

	#banner h1#pageTitle
	{
		margin-left: 0;
	}

	#mainContent div.listColumn
	{
		width: 100%;
	}

	.bioList .results_list > div
	{
		width: auto;
	}

	.professionals-item #banner h1#pageTitle
	{
		margin: 0;
	}

	.professionals-item #banner
	{
		margin: 20px 0 0 0;
	}

	#bioPhoto
	{
		margin-top: 0;
		margin-left: 0;
	}

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

	#tab2-group,
	#tab3-group,
	#tab4-group,
	#tab5-group,
	.listColumn ul ul
	{
		display: block !important;
	}

	#mainContent #firmFacts ul li.spotlightFact
	{
		clear: both;
		float: none;
	}

	#mainContent #firmFacts ul li.spotlightFact .factWrapper
	{
		width: auto;
		height: auto;
		padding-left: 0;
		padding-top: 0;
	}

	#mainContent #firmFacts ul li.spotlightFact .factWrapper .factNumber
	{
		position: relative;
		top: 0;
		left: 0;
		padding-top: 15px;
	}

	.downloadLogos
	{
		clear: both;
		float: none;
		width: 200px;
	}

	#mapText
	{
		position: relative;
		top: 0;
		left: 0;
		width: auto;
		height: auto;
	}

	#mainContent div.locationsList
	{
		clear: both;
		float: none;
		width: auto;
		border-left: 0 solid #ffffff;
	}

	#mainContent div.stateList ul li
	{
		height: auto !important;
		overflow: visible !important;
	}

	#mainContent div.stateList ul li.cityItem img.cityItemImage,
	#mainContent div.stateList ul li.cityItem div.cityItemInner
	{
		position: relative;
		top: 0;
		left: 0;
	}

	.videoItem,
	.audioItem
	{
		float: none;
		width: auto;
		height: auto;
	}

	#index #homeLeft
	{
		position: absolute;
		float: none;
		top: 0;
		left: 0;
		width: auto;
	}

	#index #homeRightTop
	{
		position: absolute;
		top: 0;
		right: 0;
		height: auto !important;
	}

	#index #homeRight
	{
		position: absolute;
		top: 120px;
		left: 330px;
		float: none;
	}

	#index .spotInfo
	{
		position: relative;
		top: 0;
		left: 0;
	}

	#footer
	{
		clear: both;
		width: auto;
		margin: 10px 0 0 0;
		padding: 0;
		border: 0 solid #ffffff;
	}

	#footer ul
	{
		text-align: left;
	}

	#footer ul li
	{
		border: 0 solid #ffffff;
		padding: 0;
	}

	#diversity #subContent .sideStaticText p img
	{
		width: 140px !important;
		height: 87px !important;
	}

	#index ul.results_list,
	#index #homeRight #homeRightBottom
	{
		overflow: visible !important;
	}
}

/* END PRINT CSS -------------------------------------------------> */

.mobile { display: none !important; visibility: none !important}
