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

/*

brandon-grotesque
-----------------------
100 Thin
300 Light
400 Regular
500 Medium
700 Bold
900 Black

/**
 * @license
 * MyFonts Webfont Build ID 3747409, 2019-04-15T11:55:54-0400
 *
 * The fonts listed in this notice are subject to the End User License
 * Agreement(s) entered into by the website owner. All other parties are
 * explicitly restricted from using the Licensed Webfonts(s).
 *
 * You may obtain a valid license at the URLs below.
 *

 * Webfont: BrandonGrotesqueWeb-BoldItalic by HVD Fonts
 * URL: https://www.myfonts.com/fonts/hvdfonts/brandon-grotesque/bold-italic/
 * Copyright: Copyright (c) 2015 by Hannes von Doehren. All rights reserved.
 *
 * Webfont: BrandonGrotesqueWeb-Light by HVD Fonts
 * URL: https://www.myfonts.com/fonts/hvdfonts/brandon-grotesque/light/
 * Copyright: Copyright (c) 2015 by Hannes von Doehren. All rights reserved.
 *
 * Webfont: BrandonGrotesqueWeb-LightItalic by HVD Fonts
 * URL: https://www.myfonts.com/fonts/hvdfonts/brandon-grotesque/light-italic/
 * Copyright: Copyright (c) 2015 by Hannes von Doehren. All rights reserved.
 *
 * Webfont: BrandonGrotesqueWeb-Bold by HVD Fonts
 * URL: https://www.myfonts.com/fonts/hvdfonts/brandon-grotesque/bold/
 * Copyright: Copyright (c) 2015 by Hannes von Doehren. All rights reserved.
 *
 * Webfont: BrandonGrotesqueWeb-Black by HVD Fonts
 * URL: https://www.myfonts.com/fonts/hvdfonts/brandon-grotesque/black/
 * Copyright: Copyright (c) 2015 by Hannes von Doehren. All rights reserved.
 *
 * Webfont: BrandonGrotesqueWeb-BlackItalic by HVD Fonts
 * URL: https://www.myfonts.com/fonts/hvdfonts/brandon-grotesque/black-italic/
 * Copyright: Copyright (c) 2015 by Hannes von Doehren. All rights reserved.
 *
 * Webfont: BrandonGrotesqueWeb-MediumItalic by HVD Fonts
 * URL: https://www.myfonts.com/fonts/hvdfonts/brandon-grotesque/medium-italic/
 * Copyright: Copyright (c) 2015 by Hannes von Doehren. All rights reserved.
 *
 * Webfont: BrandonGrotesqueWeb-Regular by HVD Fonts
 * URL: https://www.myfonts.com/fonts/hvdfonts/brandon-grotesque/regular/
 * Copyright: Copyright (c) 2015 by Hannes von Doehren. All rights reserved.
 *
 * Webfont: BrandonGrotesqueWeb-Italic by HVD Fonts
 * URL: https://www.myfonts.com/fonts/hvdfonts/brandon-grotesque/italic/
 * Copyright: Copyright (c) 2015 by Hannes von Doehren. All rights reserved.
 *
 * Webfont: BrandonGrotesqueWeb-Medium by HVD Fonts
 * URL: https://www.myfonts.com/fonts/hvdfonts/brandon-grotesque/medium/
 * Copyright: Copyright (c) 2015 by Hannes von Doehren. All rights reserved.
 *
 * Webfont: BrandonGrotesqueWeb-ThinItalic by HVD Fonts
 * URL: https://www.myfonts.com/fonts/hvdfonts/brandon-grotesque/thin-italic/
 * Copyright: Copyright (c) 2015 by Hannes von Doehren. All rights reserved.
 *
 * Webfont: BrandonGrotesqueWeb-Thin by HVD Fonts
 * URL: https://www.myfonts.com/fonts/hvdfonts/brandon-grotesque/thin/
 * Copyright: Copyright (c) 2015 by Hannes von Doehren. All rights reserved.
 *
 *
 * License: https://www.myfonts.com/viewlicense?type=web&buildid=3747409
 * Licensed pageviews: 100,000
 *
 * © 2019 MyFonts Inc
*/


/* @import must be at top of file, otherwise CSS will not work */
/*@import url("//hello.myfonts.net/count/392e51");*/

@font-face
{
	font-family: 'brandon-grotesque';
	font-weight: 100;
	font-style: normal;
	font-display: swap;

	src: url('../sp_class/assets/fonts/brandon_grotesque/392E51_1F_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/brandon_grotesque/392E51_1F_0.woff') format('woff');
}


@font-face
{
	font-family: 'brandon-grotesque';
	font-weight: 100;
	font-style: italic;
	font-display: swap;

	src: url('../sp_class/assets/fonts/brandon_grotesque/392E51_1E_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/brandon_grotesque/392E51_1E_0.woff') format('woff');
}


@font-face
{
	font-family: 'brandon-grotesque';
	font-weight: 300;
	font-style: normal;
	font-display: swap;

	src: url('../sp_class/assets/fonts/brandon_grotesque/392E51_15_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/brandon_grotesque/392E51_15_0.woff') format('woff');
}


@font-face
{
	font-family: 'brandon-grotesque';
	font-weight: 300;
	font-style: italic;
	font-display: swap;

	src: url('../sp_class/assets/fonts/brandon_grotesque/392E51_16_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/brandon_grotesque/392E51_16_0.woff') format('woff');
}


@font-face
{
	font-family: 'brandon-grotesque';
	font-weight: 400;
	font-style: normal;
	font-display: swap;

	src: url('../sp_class/assets/fonts/brandon_grotesque/392E51_1B_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/brandon_grotesque/392E51_1B_0.woff') format('woff');
}



@font-face
{
	font-family: 'brandon-grotesque';
	font-weight: 400;
	font-style: italic;
	font-display: swap;

	src: url('../sp_class/assets/fonts/brandon_grotesque/392E51_1C_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/brandon_grotesque/392E51_1C_0.woff') format('woff');
}


@font-face
{
	font-family: 'brandon-grotesque';
	font-weight: 500;
	font-style: normal;
	font-display: swap;

	src: url('../sp_class/assets/fonts/brandon_grotesque/392E51_1D_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/brandon_grotesque/392E51_1D_0.woff') format('woff');
}

@font-face
{
	font-family: 'brandon-grotesque';
	font-weight: 500;
	font-style: italic;
	font-display: swap;

	src: url('../sp_class/assets/fonts/brandon_grotesque/392E51_1A_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/brandon_grotesque/392E51_1A_0.woff') format('woff');
}



@font-face
{
	font-family: 'brandon-grotesque';
	font-weight: 700;
	font-style: normal;
	font-display: swap;

	src: url('../sp_class/assets/fonts/brandon_grotesque/392E51_17_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/brandon_grotesque/392E51_17_0.woff') format('woff');
}


@font-face
{
	font-family: 'brandon-grotesque';
	font-weight: 700;
	font-style: italic;
	font-display: swap;

	src: url('../sp_class/assets/fonts/brandon_grotesque/392E51_14_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/brandon_grotesque/392E51_14_0.woff') format('woff');
}


@font-face
{
	font-family: 'brandon-grotesque';
	font-weight: 900;
	font-style: normal;
	font-display: swap;

	src: url('../sp_class/assets/fonts/brandon_grotesque/392E51_18_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/brandon_grotesque/392E51_18_0.woff') format('woff');
}


@font-face
{
	font-family: 'brandon-grotesque';
	font-weight: 900;
	font-style: italic;
	font-display: swap;

	src: url('../sp_class/assets/fonts/brandon_grotesque/392E51_19_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/brandon_grotesque/392E51_19_0.woff') format('woff');
}

/*
freight-text-pro
------------------------
300 Light
400 Book
500 Medium
700 Bold

*/

/**
 * @license
 * MyFonts Webfont Build ID 3747409, 2019-04-15T11:55:54-0400
 *
 * The fonts listed in this notice are subject to the End User License
 * Agreement(s) entered into by the website owner. All other parties are
 * explicitly restricted from using the Licensed Webfonts(s).
 *
 * You may obtain a valid license at the URLs below.
 *
 * Webfont: FreightTextBlack by GarageFonts
 * URL: https://www.myfonts.com/fonts/garagefonts/freight-text/black/
 * Copyright: Copyright &#xFFA9; 2004, Joshua Darden &amp; Phil's Fonts, Inc. All rights reserved. Published by Garagefonts USA 301-260-2285 www.garagefonts.com
 *
 * Webfont: FreightTextBlackItalic by GarageFonts
 * URL: https://www.myfonts.com/fonts/garagefonts/freight-text/black-italic/
 * Copyright: Copyright &#xFFA9; 2004, Joshua Darden &amp; Phil's Fonts, Inc. All rights reserved. Published by Garagefonts USA 301-260-2285 www.garagefonts.com
 *
 * Webfont: FreightTextBlackItalicSC by GarageFonts
 * URL: https://www.myfonts.com/fonts/garagefonts/freight-text/black-italic-sc/
 * Copyright: Copyright &#xFFA9; 2004, Joshua Darden &amp; Phil's Fonts, Inc. All rights reserved. Published by Garagefonts USA 301-260-2285 www.garagefonts.com
 *
 * Webfont: FreightTextBlackSC by GarageFonts
 * URL: https://www.myfonts.com/fonts/garagefonts/freight-text/black-sc/
 * Copyright: Copyright &#xFFA9; 2004, Joshua Darden &amp; Phil's Fonts, Inc. All rights reserved. Published by Garagefonts USA 301-260-2285 www.garagefonts.com
 *
 * Webfont: FreightTextBold by GarageFonts
 * URL: https://www.myfonts.com/fonts/garagefonts/freight-text/bold/
 * Copyright: Copyright &#xFFA9; 2004, Joshua Darden &amp; Phil's Fonts, Inc. All rights reserved. Published by Garagefonts USA 301-260-2285 www.garagefonts.com
 *
 * Webfont: FreightTextBoldItalic by GarageFonts
 * URL: https://www.myfonts.com/fonts/garagefonts/freight-text/bold-italic/
 * Copyright: Copyright &#xFFA9; 2004, Joshua Darden &amp; Phil's Fonts, Inc. All rights reserved. Published by Garagefonts USA 301-260-2285 www.garagefonts.com
 *
 * Webfont: FreightTextBoldItalicSC by GarageFonts
 * URL: https://www.myfonts.com/fonts/garagefonts/freight-text/bold-italic-sc/
 * Copyright: Copyright &#xFFA9; 2004, Joshua Darden &amp; Phil's Fonts, Inc. All rights reserved. Published by Garagefonts USA 301-260-2285 www.garagefonts.com
 *
 * Webfont: FreightTextBoldSC by GarageFonts
 * URL: https://www.myfonts.com/fonts/garagefonts/freight-text/bold-sc/
 * Copyright: Copyright &#xFFA9; 2004, Joshua Darden &amp; Phil's Fonts, Inc. All rights reserved. Published by Garagefonts USA 301-260-2285 www.garagefonts.com
 *
 * Webfont: FreightTextBook by GarageFonts
 * URL: https://www.myfonts.com/fonts/garagefonts/freight-text/book/
 * Copyright: Copyright &#xFFA9; 2004, Joshua Darden &amp; Phil's Fonts, Inc. All rights reserved. Published by Garagefonts USA 301-260-2285 www.garagefonts.com
 *
 * Webfont: FreightTextBookItalic by GarageFonts
 * URL: https://www.myfonts.com/fonts/garagefonts/freight-text/book-italic/
 * Copyright: Copyright &#xFFA9; 2004, Joshua Darden &amp; Phil's Fonts, Inc. All rights reserved. Published by Garagefonts USA 301-260-2285 www.garagefonts.com
 *
 * Webfont: FreightTextBookItalicSC by GarageFonts
 * URL: https://www.myfonts.com/fonts/garagefonts/freight-text/book-italic-sc/
 * Copyright: Copyright &#xFFA9; 2004, Joshua Darden &amp; Phil's Fonts, Inc. All rights reserved. Published by Garagefonts USA 301-260-2285 www.garagefonts.com
 *
 * Webfont: FreightTextBookSC by GarageFonts
 * URL: https://www.myfonts.com/fonts/garagefonts/freight-text/book-sc/
 * Copyright: Copyright &#xFFA9; 2004, Joshua Darden &amp; Phil's Fonts, Inc. All rights reserved. Published by Garagefonts USA 301-260-2285 www.garagefonts.com
 *
 * Webfont: FreightTextLight by GarageFonts
 * URL: https://www.myfonts.com/fonts/garagefonts/freight-text/light/
 * Copyright: Copyright &#xFFA9; 2004, Joshua Darden &amp; Phil's Fonts, Inc. All rights reserved. Published by Garagefonts USA 301-260-2285 www.garagefonts.com
 *
 * Webfont: FreightTextLightItalic by GarageFonts
 * URL: https://www.myfonts.com/fonts/garagefonts/freight-text/light-italic/
 * Copyright: Copyright &#xFFA9; 2004, Joshua Darden &amp; Phil's Fonts, Inc. All rights reserved. Published by Garagefonts USA 301-260-2285 www.garagefonts.com
 *
 * Webfont: FreightTextLightItalicSC by GarageFonts
 * URL: https://www.myfonts.com/fonts/garagefonts/freight-text/light-italic-sc/
 * Copyright: Copyright &#xFFA9; 2004, Joshua Darden &amp; Phil's Fonts, Inc. All rights reserved. Published by Garagefonts USA 301-260-2285 www.garagefonts.com
 *
 * Webfont: FreightTextLightSC by GarageFonts
 * URL: https://www.myfonts.com/fonts/garagefonts/freight-text/light-sc/
 * Copyright: Copyright &#xFFA9; 2004, Joshua Darden &amp; Phil's Fonts, Inc. All rights reserved. Published by Garagefonts USA 301-260-2285 www.garagefonts.com
 *
 * Webfont: FreightTextMedium by GarageFonts
 * URL: https://www.myfonts.com/fonts/garagefonts/freight-text/medium/
 * Copyright: Copyright &#xFFA9; 2004, Joshua Darden &amp; Phil's Fonts, Inc. All rights reserved. Published by Garagefonts USA 301-260-2285 www.garagefonts.com
 *
 * Webfont: FreightTextMediumItalic by GarageFonts
 * URL: https://www.myfonts.com/fonts/garagefonts/freight-text/medium-italic/
 * Copyright: Copyright &#xFFA9; 2004, Joshua Darden &amp; Phil's Fonts, Inc. All rights reserved. Published by Garagefonts USA 301-260-2285 www.garagefonts.com
 *
 * Webfont: FreightTextMediumItalicSC by GarageFonts
 * URL: https://www.myfonts.com/fonts/garagefonts/freight-text/medium-italic-sc/
 * Copyright: Copyright &#xFFA9; 2004, Joshua Darden &amp; Phil's Fonts, Inc. All rights reserved. Published by Garagefonts USA 301-260-2285 www.garagefonts.com
 *
 * Webfont: FreightTextMediumSC by GarageFonts
 * URL: https://www.myfonts.com/fonts/garagefonts/freight-text/medium-sc/
 * Copyright: Copyright &#xFFA9; 2004, Joshua Darden &amp; Phil's Fonts, Inc. All rights reserved. Published by Garagefonts USA 301-260-2285 www.garagefonts.com
 *

 * License: https://www.myfonts.com/viewlicense?type=web&buildid=3747409
 * Licensed pageviews: 100,000
 *
 * © 2019 MyFonts Inc
*/


/* @import must be at top of file, otherwise CSS will not work */
/*@import url("//hello.myfonts.net/count/392e51");*/


@font-face
{
	font-family: 'freight-text-pro';
	font-weight: 900;
	font-style: normal;
	font-display: swap;

	src: url('../sp_class/assets/fonts/freight_text_pro/392E51_0_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/freight_text_pro/392E51_0_0.woff') format('woff');
}


@font-face
{
	font-family: 'freight-text-pro';
	font-weight: 900;
	font-style: italic;
	font-display: swap;

	src: url('../sp_class/assets/fonts/freight_text_pro/392E51_1_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/freight_text_pro/392E51_1_0.woff') format('woff');
}

/* Not sure what the SC is and don't have time to deal with it, so just commenting out for now */
/*@font-face
{
	font-family: 'FreightTextBlackItalicSC';
	src: url('../sp_class/assets/fonts/freight_text_pro/392E51_2_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/freight_text_pro/392E51_2_0.woff') format('woff');
}


@font-face
{
	font-family: 'FreightTextBlackSC';
	src: url('../sp_class/assets/fonts/freight_text_pro/392E51_3_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/freight_text_pro/392E51_3_0.woff') format('woff');
}*/


@font-face
{
	font-family: 'freight-text-pro';
	font-weight: 700;
	font-style: normal;
	font-display: swap;

	src: url('../sp_class/assets/fonts/freight_text_pro/392E51_4_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/freight_text_pro/392E51_4_0.woff') format('woff');
}


@font-face
{
	font-family: 'freight-text-pro';
	font-weight: 700;
	font-style: italic;
	font-display: swap;

	src: url('../sp_class/assets/fonts/freight_text_pro/392E51_5_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/freight_text_pro/392E51_5_0.woff') format('woff');
}


/*@font-face
{
	font-family: 'FreightTextBoldItalicSC';
	src: url('../sp_class/assets/fonts/freight_text_pro/392E51_6_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/freight_text_pro/392E51_6_0.woff') format('woff');
}


@font-face
{
	font-family: 'FreightTextBoldSC';
	src: url('../sp_class/assets/fonts/freight_text_pro/392E51_7_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/freight_text_pro/392E51_7_0.woff') format('woff');
}*/


@font-face
{
	font-family: 'freight-text-pro';
	font-weight: 400;
	font-style: normal;
	font-display: swap;

	src: url('../sp_class/assets/fonts/freight_text_pro/392E51_8_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/freight_text_pro/392E51_8_0.woff') format('woff');
}


@font-face
{
	font-family: 'freight-text-pro';
	font-weight: 400;
	font-style: italic;
	font-display: swap;

	src: url('../sp_class/assets/fonts/freight_text_pro/392E51_9_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/freight_text_pro/392E51_9_0.woff') format('woff');
}


/*@font-face
{
	font-family: 'FreightTextBookItalicSC';
	src: url('../sp_class/assets/fonts/freight_text_pro/392E51_A_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/freight_text_pro/392E51_A_0.woff') format('woff');
}


@font-face
{
	font-family: 'FreightTextBookSC';
	src: url('../sp_class/assets/fonts/freight_text_pro/392E51_B_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/freight_text_pro/392E51_B_0.woff') format('woff');
}*/


@font-face
{
	font-family: 'freight-text-pro';
	font-weight: 300;
	font-style: normal;
	font-display: swap;

	src: url('../sp_class/assets/fonts/freight_text_pro/392E51_C_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/freight_text_pro/392E51_C_0.woff') format('woff');
}


@font-face
{
	font-family: 'freight-text-pro';
	font-weight: 300;
	font-style: italic;
	font-display: swap;

	src: url('../sp_class/assets/fonts/freight_text_pro/392E51_D_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/freight_text_pro/392E51_D_0.woff') format('woff');
}


/*@font-face
{
	font-family: 'FreightTextLightItalicSC';
	src: url('../sp_class/assets/fonts/freight_text_pro/392E51_E_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/freight_text_pro/392E51_E_0.woff') format('woff');
}


@font-face
{
	font-family: 'FreightTextLightSC';
	src: url('../sp_class/assets/fonts/freight_text_pro/392E51_F_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/freight_text_pro/392E51_F_0.woff') format('woff');
}*/


@font-face
{
	font-family: 'freight-text-pro';
	font-weight: 500;
	font-style: normal;
	font-display: swap;

	src: url('../sp_class/assets/fonts/freight_text_pro/392E51_10_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/freight_text_pro/392E51_10_0.woff') format('woff');
}


@font-face
{
	font-family: 'freight-text-pro';
	font-weight: 500;
	font-style: italic;
	font-display: swap;

	src: url('../sp_class/assets/fonts/freight_text_pro/392E51_11_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/freight_text_pro/392E51_11_0.woff') format('woff');
}


/*@font-face
{
	font-family: 'FreightTextMediumItalicSC';
	src: url('../sp_class/assets/fonts/freight_text_pro/392E51_12_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/freight_text_pro/392E51_12_0.woff') format('woff');
}


@font-face
{
	font-family: 'FreightTextMediumSC';
	src: url('../sp_class/assets/fonts/freight_text_pro/392E51_13_0.woff2') format('woff2'),
	url('../sp_class/assets/fonts/freight_text_pro/392E51_13_0.woff') format('woff');
}*/


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 10px/1.6 freight-text-pro, Helvetica, Arial, sans-serif;
	color: #231f20;
}

body
{
	position: relative;
	min-width: 320px;
	max-width: 1920px;
	margin: 0 auto;
	padding: 0 10px;
	background: #fff;
	box-sizing: border-box;
	font-size: 2.2rem;
	font-weight: 400;
}

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

@media (max-width: 1350px)
{
	body
	{
		overflow: hidden;
		font-size: 2rem;
	}
}

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

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: #5ba8af;
	text-decoration: none;
}

/*
mark
{
	background: #5ba8af;
	color: white;
}
*/

hr
{
	height: 2px;
	margin: 20px 0;
	border: none;
	background: #c4e6eb;
}

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

.sideStaticText p img,
#mainContet p img
{
	max-width: 100%;
	height: auto;
}

/* needed for IE11 */
main { display: block }

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

	text-shadow: -1px 0 0 white, 0 1px 0 white, 1px 0 0 white, 0 -1px 0 white, -1px -1px 0 white, 1px 1px 0 white, 1px -1px 0 white, -1px 1px 0 white;
}


main p a:hover,
main ul:not([class]):not([id]) li a:hover,
main ol:not([class]):not([id]) li a:hover
{
	background: linear-gradient(to top, transparent 50%, rgba(50,69,95, 1) 50%) bottom repeat-x;
	background-size: 100% 2px;

	text-shadow: -1px 0 0 white, 0 1px 0 white, 1px 0 0 white, 0 -1px 0 white, -1px -1px 0 white, 1px 1px 0 white, 1px -1px 0 white, -1px 1px 0 white;

	color: rgba(50,69,95);
	text-decoration: none;
}

.people main ul:not([class]):not([id]) li a
{
	text-shadow: none;
}

#mainContent p img
{
	max-width: 100%;
	height: auto;
}

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

mark
{
	background: #76bbc1;
	color: white;
}

h1, h2, h3, h4, h5, h6
{
	margin: 0;
	padding: 0;
	color: #00446a;
	font-weight: bolder; /* relative, works better if you have a light base font */
	line-height: normal;
	font-family: 'brandon-grotesque', sans-serif;
}

h1
{
	padding: 5px 0 15px 0;
	color: #000;
	font-size: 3.6rem;
	line-height: 4.5rem;
	font-family: 'freight-text-pro', sans-serif;
	font-weight: 500;
}

#pageTitle
{
	margin: 0 0 10px;
	color: #ffffff;
	font-family: 'freight-text-pro', sans-serif;
	font-size: 4.6rem;
	line-height: 4.6rem;
	font-weight: 500;
}

#bannerSubtitle
{
	color: #ffffff;
	font-size: 1.8rem;
	text-transform: uppercase;
	font-weight: 700;
	font-family: 'brandon-grotesque', sans-serif;
}

h2
{
	padding: 12px 0 4px 0;
	font-size: 2.2rem;
	line-height: 2.2rem;
	text-transform: uppercase;
	color: #f05025;
}


#subContent > *:first-child > *:first-child
{
	margin-top: 0;
	/*padding-top: 0;*/
}

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

h4
{
	padding: 12px 0 4px 0;
	color: #000;
	font-size: 2.115rem;
	font-weight: inherit;
}

h5
{
	padding: 12px 0 4px 0;
	font-size: 1.9rem;
	text-transform: uppercase;
}

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

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

ol
{
	padding-left: 1em;
}

li
{
	padding: 0;
	margin: 15px 0em 15px 2em;
}

li ~ li
{
	margin-top: 15px;
}

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

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

iframe
{
	max-width: 100%;
}

@media (min-width: 1350px)
{
	h1
	{
		padding: 5px 0 15px 0;
		color: #000;
		font-size: 4rem;
		line-height: 5rem;
		font-family: 'freight-text-pro', sans-serif;
		font-weight: 500;
	}

	#pageTitle
	{
		margin: 0 0 10px;
		color: #ffffff;
		font-family: 'freight-text-pro', sans-serif;
		font-size: 5.2rem;
		line-height: 5.2rem;
		font-weight: 500;
	}

	#bannerSubtitle
	{
		color: #ffffff;
		font-size: 2rem;
		text-transform: uppercase;
		font-weight: 700;
		font-family: 'brandon-grotesque', sans-serif;
	}

	h2
	{
		padding: 12px 0 4px 0;
		font-size: 2.4rem;
		line-height: 2.4rem;
		text-transform: uppercase;
		color: #f05025;
	}


	#subContent > *:first-child > *:first-child
	{
		margin-top: 0;
		/*padding-top: 0;*/
	}

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

	h4
	{
		padding: 12px 0 4px 0;
		color: #000;
		font-size: 2.35rem;
		font-weight: inherit;
	}

	h5
	{
		padding: 12px 0 4px 0;
		font-size: 2.10rem;
		text-transform: uppercase;
	}

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

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

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

#alertMessage::before,
#lowerContent::before,
#header::before,
#footerOffices::before,
#mainNav::before,
#footerCopy::before,
#footerDisclaimer::before,
#tabLinks::before,
#banner.noBannerImage::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;
}


#banner.noBannerImage::before
{
	background: #f0623e;
}


/* 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 + td
{
	padding-left: 1rem;
}

@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 1em 0em;
}

.expandableHeading,
.expandableReadMore
{
	position: relative;
	cursor: pointer;
	padding-bottom: 8px;
	margin: 0 0 20px;
	font-weight: 400;
	color: #5ba8af;
	text-transform: uppercase;
	border-bottom: 2px solid #c4e6eb;
}

.expandableHeading:hover,
.expandableReadMore:hover,
.expandableHeading:hover button::after,
.expandableReadMore:hover button::after
{
	color: #32455f;
}

.expandableHeading button,
.expandableReadMore button
{
	text-transform: uppercase;
	text-align: left;
}

.expandableHeading button::after,
.expandableReadMore::after
{
	position: relative;
	top: -3px;
	content: ' +';
	display: inline-block;
	vertical-align: middle;
	color: black;
	font-size: 2.5rem;
	line-height: 2rem;

	margin-left: 8px;

	color: #5ba8af;
}

.expandableHeading.expanded button::after,
.expandableReadMore.expanded::after
{
	content: ' –';
}

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

.extraItems p:first-child
{
	margin-top: 5px;
}

/* buttons to look like links */
.expandableHeading button
{
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	border: none;
	font: inherit;
	font-weight: 700;
	color: inherit;
	/*white-space: nowrap;*/
	cursor: pointer;
}

/* subcontent expanders*/

#subContent h2.expandable
{
	cursor: pointer;
}

#subContent h2.expandable + div
{
	display: none;
}

#subContent h2.expandable
{
	margin-top: 10px;
	padding-top: 0;
	line-height: 3rem;
	text-transform: none;
}

#subContent h2.expandable:after
{
	position: relative;
	left: 8px;
	top: 2px;
	content: '+';
	font-weight: 700;
}

#subContent h2.expandable.isOpen:after
{
	top: -6px;
	content: '_';
}


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

#alertMessage
{
	position: relative;
	z-index: 99;
	width: 100%;
	margin: 0 auto;
	padding: 20px 33px 20px 33px;
	background: #ee5130;
	background: #32455f;
	box-sizing: border-box;
	color: #ffffff;
	font-size: 17px;
	text-transform: uppercase;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	font-family: 'brandon-grotesque', sans-serif;
}

#alertMessage *
{
	margin: 0;
	padding: 0;
	color: #ffffff;
}

#alertMessage a
{
	text-decoration: underline;
}

@media (max-width: 937px)
{
	#alertMessage
	{
		padding: 12px 10px 12px 10px;
	}
}

#header
{
	position: relative;
	height: auto;
	padding: 15px 0 15px;
	overflow: hidden;
	box-sizing: border-box;
}

body.people-item #header
{
	border-bottom: 1px solid #cccccc;
}

#logo
{
	float: left;
	width: 60%;
	max-width: 309px;
	transition: all 500ms ease;
}

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

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


#topLinks
{
	position: absolute;
	top: 12px;
	right: 40px;
	margin: 0;
}

#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 0 3px;
	color: #a5a5a5;
	font-size: 1rem;
	text-transform: uppercase;
}

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

#topLinks #searchJump img
{
	width: 24px;
	height: 24px;
}

@media (min-width: 768px)
{
	#header
	{
		padding-left: 20px;
		padding-right: 20px;
	}

	#topLinks
	{
		top: 24px;
		right: 50px;
	}
}

@media (min-width: 1200px)
{

	#header
	{
		padding: 28px 0 28px;
	}

	#topLinks
	{
		display: none;
		/*right: 20px;
		top: 10px;

		transition: all 500ms ease;*/
	}

	#topLinks #searchJump img
	{
		width: 18px;
	}
}

@media (min-width: 1024px)
{
	#header
	{
		padding-left: 25px;
	}
}

@media (min-width: 1280px)
{
	body
	{
		padding-top: 100px;
	}

	body.includeAlert
	{
		padding-top: 166px;
	}

	#alertMessage
	{
		position: fixed;
		top: 0px;
		left: 0;
		right: 0;
		height: 66px;
	}

	#header
	{
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		background: #ffffff;
		z-index: 100;
		transition: height 500ms ease;
	}

	body.scrolled #header
	{
		box-shadow: 0 0 10px 0 rgba(0,0,0,.3);
		padding-top: 25px;
		padding-bottom: 25px;
		background: rgba(255,255,255, .85) !important;
	}

	body.includeAlert #header,
	body.scrolled.includeAlert #header
	{
		top: 66px;
	}

	body.scrolled #topLinks
	{
		top: 2px;
	}

	body.scrolled.includeAlert #topLinks
	{
		top: 68px;
	}

	body.scrolled #header #logo
	{
		max-width: 200px;
	}
}

@media (max-width: 919px)
{

	#topLinks li
	{
		margin: 0 0 0 3px;
		font-size: 1.2rem;
	}

	#mainNav
	{
		background: #ffffff;
	}
}

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

#siteSearch label
{
	display: none !important;
}


#siteSearch:target,
#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;
}

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

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

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

	box-sizing: border-box;
	margin: 0;
	width: 50px;
}

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

#siteSearch input
{
	width: calc(100% - 160px);
	padding: 2px 2px 2px 5px;
	border: 0;
	font:inherit;
	font-size: 30px;
	font-weight: bold;
	min-height: auto;

	color: white;

	flex-grow: 1;
}

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

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

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

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

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

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

	transform: rotate(-30deg);
}

#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: 0px 4px 8px rgba(0,0,0,0.5);
}

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

#inlineSearchPopup
{
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	max-height: 350px;
}

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

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

	bottom: 0;
	background: #EF4F26;
}

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


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

#banner
{
	display: flex;
	align-items: center;
	position: relative;
	width: calc(100% + 20px);
	min-height: 220px;
	margin: 0 -10px 30px;
	overflow: hidden;
}

#banner:not(.noBannerImage):after
{
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: 12%;
	height: 100%;
	width: 40%;
	max-width: 250px;
	transform: skew(40deg);
	background: #f04f26;
	z-index: -1;
}

#banner.noBannerImage
{
	height: 220px;
	background:	linear-gradient(
		50deg,
		rgba(240,98,62,1) 0%,rgba(240,98,62,1) 12%,
		rgba(240,79,38,1) 12%,rgba(240,79,38,1) 28%,
		rgba(240,98,62,1) 23%,rgba(240,98,62,1) 65%,
		rgba(240,79,38,1) 65%,rgba(240,79,38,1) 83%,
		rgba(240,98,62,1) 83%,rgba(240,98,62,1) 100%);
}

img#bannerImage
{
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: auto;
	height: 100%;
	/*min-height: 60px;*/
	z-index: -1;
}

#bannerContent
{
	width: 100%;
	padding: 20px 10px 0;
	max-width: 1370px;
	margin: 0 auto;
	box-sizing: border-box;
	/*position: absolute;
	z-index: 2;
	top: 10px;
	left: 20px;*/
	/*color: #fff;
	font-size: 1.6rem;*/
}

#bannerContent *
{
	/*color: inherit;*/
}

@media (min-width: 768px)
{
	#bannerContent
	{
		padding: 20px 30px 0;
	}
}

@media (min-width: 1024px)
{
	#bannerContent
	{
		padding: 20px 40px 0;
	}
}

@media (min-width: 1400px)
{
	#bannerContent
	{
		padding: 20px 0 0;
	}

	#banner:not(.noBannerImage):after
	{
		max-width: 328px;
	}
}

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

@media (max-width: 1024px)
{
	#banner.noBannerImage
	{
		height: auto;
		min-height: 220px;
	}
}

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

#mainNav
{
	position: relative;
	line-height: normal;
	font-family: 'brandon-grotesque', sans-serif;
}

/* 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: #575252;
	font-family: 'brandon-grotesque', sans-serif;
}

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

/* top level links */
#mainNav > ul > li > a
{
	font-size: 2.2rem;
	color: #3c4644;
	font-weight: 700;
	text-transform: uppercase;
	padding-left: 0;
	padding-right: 0;
}

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

/*#mainNav > ul > li > a:after
{
    content: "";
    position: absolute;
    width: 100%;
    height: 2px;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0px auto;
    background: #7c8280;
    border-radius: 5px;
    transition: .2s linear;
    opacity: 0;
}

#mainNav > ul > li:not(.current):hover > a:after
{
    visibility: visible;
    opacity: 1;
}*/

#mainNav li:hover > a,
#mainNav li:focus > a
{
	color: #ef4e22;
	text-decoration: none;
}

/* main nav tab current page highlight */
#mainNav li.current > a
{
	/*border-bottom: 2px solid #7c8280;*/
}

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

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

	/*** un-comment to center the drops***
	left: calc(50% - 150px);
	width: 300px;
	/***/
	background: #ffffff;
	padding: 10px 0 18px 0;
	border: 1px solid #cecece;
}

#mainNav > ul ul ul
{
	display: none !important;
}

@media (min-width: 1200px)
{
	/*#mainNav > ul ul
	{
		display: none !important;
	}*/
}

#mainNav .subNavHeader
{
	font-weight: bold;
	text-transform: uppercase;
	font-size: .8em;
}

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

/* by default, hidden */
.contentJump
{
	display: none;
	z-index: 99999;
	background: inherit;
	color: black;
}

#header .contentJump:focus
{
	color: black;
}

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

/* make them transparent unless keyboard focused */
.contentJump:not(:focus)
{
	color: transparent;
	background: transparent;
	z-index: -1;
}

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

	padding: 5px 15px;
}

/*#mainNav #navButton-people ul,
#mainNav #navButton-capabilities ul
{
	width: 100vw;
	max-width: 600px;
	box-sizing: border-box;

	color: white;
}

#mainNav #navButton-people ul
{
	max-width: 1000px;
	padding-left: 20px;
	padding-right: 20px;
	color: white;
}

#mainNav .letterLinks
{
	color: #ccc;
}*/

/*#navButton-capabilities > ul
{
	columns: 2;
}*/

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

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

#mainNav #navButton-capabilities a
{
	white-space: normal;
	break-inside: avoid;
}*/

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

@media (min-width: 1200px)
{
	#mainNav
	{
		position: absolute;
		z-index: 9999;
		height: 80px;
		top: 0;

		/* body's padding minus menu item's padding */
		right: 10px;

		padding-top: 48px;
		/*display: flex;*/
		box-sizing: border-box;
	}

	body.includeAlert #mainNav
	{
		top: 66px;
	}

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

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

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

	/* push double drops out the width of the parent */
	#mainNav > ul li > ul ul
	{
		top: 0;
		left: 100%;
	}

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

	#mainNav li ul a
	{
		padding: 0 0 5px;
		margin: 10px 20px 0;
	}

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

	/* position the second nav above and make it smaller */
	#mainNav > ul + ul
	{
		position: absolute;
		top: 15px;
		right: 22px;
		bottom: 100%;
	}

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

	#mainNav > ul + ul > li > a
	{
		position: relative;
		padding: 3px 0;
		font-size: 15px;
		text-transform: uppercase;
		color: #5ba8af;
		font-weight: 400;
	}

	#mainNav > ul + ul > li:hover > a
	{
		/*border-bottom: 1px solid currentColor;*/
		/*background: none !important;*/
	}

	#mainNav > ul + ul > li.current > a
	{
		border-bottom: 1px solid #79b8be;
		padding-bottom: 0px;
		/*text-decoration: underline;*/
	}

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

	#navButton-search a
	{
		display: block;
		width: 18px;
		height: 18px;
		text-indent: -9999em;
		background: url('../i/icon-search-blue.svgz') no-repeat; /* data-uri */
	}

	#navButton-search a:hover
	{
		background: url('../i/icon-search-darkblue.svgz') no-repeat; /* data-uri */
	}

}

@media (min-width: 1280px)
{
	#mainNav
	{
		position: fixed;
		top: 0;
		transition: top 500ms ease;
	}

	body.includeAlert #mainNav
	{
		top: 66px;
	}

	body.scrolled #mainNav
	{
		top: -10px;
	}

	body.includeAlert.scrolled #mainNav
	{
		top: 56px;
	}
}

/* Mobile navigation ------------------------------------------------> */

@media (max-width: 1199px)
{
	#mainNav,
	#mainNav li ul
	{
		background: #3c4542;
		position: fixed;
		display: block;
		z-index: 99;
		top: 0;
		right: -1000px !important;
		left: auto !important;
		min-width: 60vw;
		width: 100%;
		max-width: 480px;
		height: 100vh;
		padding: 55px 10px 10px;
		box-sizing: border-box;
		box-shadow: 0 0 200px 15px rgba(0,0,0,.8);
		transition: right 0.5s;
	}

	#mainNav::before
	{
		display: none;
	}

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

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

	#mainNav #subNavBack a
	{
		color: #5ba8af;
	}

	#mainNav > ul ul
	{
		padding-top: 100px;
		overflow: scroll;
		box-sizing: border-box;
		padding-bottom: 40px;
	}

	#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 > ul > li
	{
		margin: 0 0 10px;
	}


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

	#mainNav ul ul li > a:first-child:not(:last-child)::after
	{
		line-height: 21px;
	}

	#mainNav > ul:last-child li > a:first-child:not(:last-child)::after
	{
		line-height: 14px;
	}

	.contentJump.navJump
	{
		display: block;
		position: absolute;
		top: 15px;
		right: 5px;
		width: 0;
		height: 0;
		overflow: hidden;
		padding: 22px 26px 0 0;
		background: white;
		border-top: 3px solid #32455f;
		cursor: pointer;
		box-sizing: border-box;
		z-index: 99;
	}

	.navJump::after,
	.navJump::before
	{
		content: '';
		display: block;
		position: absolute;
		top: 5px;
		width: 100%;
		height: 3px;
		background: #32455f;
		transition: transform .3s;
	}

	.navJump::after
	{
		top: 60%;
	}

	#pageJump
	{
		pointer-events: none;
		right: 15px;
	}

	body.includeAlert #pageJump
	{
		top: 73px;
		opacity: 0;
	}

	#mainNav.target ~ #pageJump,
	#mainNav:target ~ #pageJump
	{
		pointer-events: auto;
		background: #333;
	}

	#mainNav.target ~ #pageJump::after,
	#mainNav.target ~ #pageJump::before,
	#mainNav:target ~ #pageJump::after,
	#mainNav:target ~ #pageJump::before
	{
		top: 40%;
		background: white;

		transform: rotate(135deg);
	}

	#mainNav.target ~ #pageJump::before,
	#mainNav:target ~ #pageJump::before
	{
		transform: rotate(45deg);
	}

	#mainNav.target ~ #pageJump,
	#mainNav:target ~ #pageJump
	{
		border-top: none;
	}

	body.includeAlert #mainNav.target ~ #pageJump,
	body.includeAlert #mainNav:target ~ #pageJump
	{
		opacity: 1;
		top: 15px;
	}

	#mainNav > ul > li
	{
		margin-bottom: 20px;
	}

	#mainNav ul li a
	{
		font-size: 2.4rem;
		padding-right: 20px;
		color: #ffffff;
	}

	#mainNav ul li
	{
		margin-bottom: 15px;
	}

	#mainNav ul li#megaSearch
	{
		display: none;
	}

	#mainNav > ul > li > a
	{
		text-align: center;
	}

	#mainNav > ul > li:not(.current) > a:hover,
	#mainNav > ul > li:not(.current) > a:focus
	{
		color: #ffffff;
		text-decoration: underline;
	}

	#mainNav > ul:first-child > li > a
	{
		font-size: 3.5rem;
		line-height: normal;
	}

	#mainNav > ul:first-child
	{
		position: relative;
		padding-bottom: 40px;
		margin: 0 0 60px;
	}

	#mainNav > ul:first-child:after
	{
		position: absolute;
		bottom: 0;
		left: calc(50% - 162px);
		content: '';
		display: block;
		width: 300px;
		height: 1px;
		background: #56625e;
	}

	#mainNav > ul:first-child > li
	{
		margin: 0 0 ;
	}

	#mainNav li.current > a
	{
		color: #ef4e22;
		border-bottom: none;
	}

	#navButton-search
	{
		display: none !important;
	}
}

#navButton-about ul,
#navButton-careers ul
{
	left: auto !important;
	right: 0;
}

@media (min-width: 768px)
{
	.contentJump.navJump
	{
		top: 26px;
		right: 10px;
	}

	#pageJump
	{
		right: 20px;
	}
}

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

ul.subNavList
{
	display: flex;
	flex-wrap: wrap;
	font-family: 'brandon-grotesque', sans-serif;
}

ul.subNavList li
{
	list-style: none;
	margin: 0 40px 20px 0;
	padding: 0;
	position: relative;
	text-transform: uppercase;
	font-size: 1.5rem;
	font-weight: 700;
}

ul.subNavList li:last-child
{
	margin-right: 0;
}

ul.subNavList li a
{
	color: #ffffff;
}

ul.subNavList li a:hover,
ul.subNavList li a:focus
{
	/*background: #c4e6eb;*/
	text-decoration: none;
	border-bottom: 1px solid #ffffff;
}

ul.subNavList ul
{
	/*position: absolute;
	top: 14px;
	left: 0;
	display: none;*/
}

ul.subNavList ul li
{
	padding: 2px 0;
	margin: 0;
}

ul.subNavList li:hover > ul
{
	display: block;
	background: #e0e0e0;
}

ul.subNavList li.here > a,
ul.subNavList li.hereParent > a
{
	border-bottom: 1px solid #ffffff;
}

@media (min-width: 1350px)
{
	ul.subNavList li
	{
		font-size: 1.7rem;
	}
}

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

@media (min-width: 768px)
{
	#tabLinks
	{
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
		height: 89px;
		margin-bottom: 50px;
		background: #ebeeef;

	}

	body.capabilities-item #tabLinks
	{
		margin-bottom: 25px;
	}

	#tabLinks a
	{
		display: block;
		position: relative;
		text-transform: uppercase;
		font-family: 'brandon-grotesque', sans-serif;
		font-size: 1.6rem;
		line-height: 1.8rem;
		margin-right: 25px;
		font-weight: 500;
	}

	#tabLinks a:hover
	{
		text-decoration: none;
		color: #ff4d00 ;
	}

	#tabLinks a:last-child
	{
		margin-right: 0;
	}

	#tabLinks .current
	{
		color: #32465f;
		text-decoration: none;
		cursor: default;
	}

	.contentSection
	{
		display: none;
	}

	.sectionTitle
	{
		display: none;
	}

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

@media (min-width: 1024px)
{
	#tabLinks a
	{
		margin-right: 50px;
	}
}

@media (max-width: 767px)
{
	#tabLinks
	{
		display: none;
	}

	h2.sectionTitle
	{
		display: block;
		position: relative;
		overflow: hidden;
		margin: 1px -10px 0;
		padding: 13px 20px 13px 20px;
		background: #ebeeef;
		color: #32465f;
		font-size: 2.0rem;
		box-sizing: border-box;
		text-decoration: none;
		cursor: pointer;
	}

	h2.sectionTitle:hover
	{
		background: #ccc;
	}

	h2.sectionTitle:focus-within
	{
		background: #ccc;
	}

	h2.sectionTitle::after
	{
		content: '+';
		position: absolute;
		top: 13px;
		right: 15px;
		font-weight: lighter;
		font-size: 3.0rem;
	}

	h2.sectionTitle.isOpen::after
	{
		content: '–';
		top: 10px;
	}

	.contentSection
	{
		display: block !important;
	}

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

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


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

#content
{
	position: relative;
	height: auto !important;
	min-height: 350px;
	max-width: 1375px;
	margin: 0 auto;
}

#lowerContent
{
	max-width: 1375px;
	margin: 0 auto;
}

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

#content > div
{
	padding: 27px 0 0 0;
}

main
{
	display: block;
	/*margin: 27px 0 0 0;*/
	padding: 27px 0 20px 0;
	box-sizing: border-box;
}

#subContent
{
	padding: 0;
	box-sizing: border-box;
	border-radius: 0 0 10px 10px;
}

#subContent
{
	font-size: 2rem;
}

#pdfLink
{
	height: 39px;
	z-index: 10;
}

#pdfLink a
{
	display: block;
	float: right;
	height: 39px;
	width: 39px;
	background: url('../i/icon-pdf.svgz') center center no-repeat, #76bbc1; /* data-uri */
	background-size: 17px 20px;
	text-indent: -9999em;
}

#pdfLink a:hover
{
	background-color: #32455f;
}

#pdfLink
{
	position: absolute;
	right: 0;
	top: 307px;
}

body.capabilities-item #pdfLink,
body.locations-item #pdfLink
{
	top: 397px;
}

@media (min-width: 768px)
{

	#content
	{
		padding: 0 20px;
	}

	/* Doing this to keep the top margin the same when there is no subcontent*/
	#mainContent
	{
	}

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

	#subContent
	{
		float: right;
		clear: right;
		width: 250px;
	}

	#subNav
	{
		z-index: 2;
		top: 0px;
		left: 0;
		box-sizing: border-box;
	}
}

@media (min-width: 1024px)
{
	#content
	{
		padding: 0 30px;
	}
}

@media (min-width: 1200px)
{

	#pdfLink
	{
		top: 387px;
	}


	body.capabilities-item #pdfLink,
	body.locations-item #pdfLink
	{
		top: 416px;
	}
}

@media (min-width: 1280px)
{
	#mainContent:not(:only-child)
	{
		float: left;
		width: calc(100% - 550px);
	}

	#subContent
	{
		float: right;
		clear: right;
		width: 465px;
	}
}

@media (min-width: 1600px)
{
	#pdfLink
	{
		position: absolute;
		right: 0;
		top: 377px;
		width: 54px;
		height: 59px;
	}

	#pdfLink a
	{
		width: 100%;
		height: 100%;
	}

	#pdfLink a
	{
		background-size: 25px 29px;
	}
}

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

	main
	{
		order: 1;
	}

	#subContent
	{
		order: 2;
	}

	#subNav
	{
		order: 3;
	}

	#pdfLink
	{
		display: none;
	}
}

#subContent p
{
	margin: 0.5rem 0 1rem 0;
	line-height: 1.4;
}

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

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

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

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


/* Bio Directory */

body#people #mainContent
{
	width: 100%;
}

.letterLinks
{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;

	margin: 10px -2px 58px;
	color: #999;
	font-weight: 300;
	font-size: 2.4rem;
	font-family: 'brandon-grotesque', sans-serif;
}

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

.letterLinks a,
.letterLinks span
{
	display: block;
	width: 49px;
	height: 49px;
	margin: 0 2px 4px 2px;
	text-align: center;
	background: #ebeeef;
	text-shadow: none;
	font-size: 1.8rem;
	line-height: 50px;
	color: #9d3c21;
	font-weight: 700;
	border-radius: 50%;
}

.letterLinks a:hover
{
	color: #ffffff;
	background: #76bbc1;
	text-decoration: none;
	text-shadow: none;
}

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

/* non attorney directory list and search */
.bioList
{
	margin: 1rem 0;
}

.bioList tr
{
	border-bottom: 1px dashed #d7e7f5;
	padding: 1rem 0;
}

.bioList .results_list td
{
	padding: 0;
	line-height: normal;
	vertical-align: top;
}

@media (min-width: 768px)
{
	.bioList .results_list td
	{
		padding: inherit;
	}

	.bioList td + td
	{
		padding-left: 1em;
		padding: 1rem 0;
	}
}

@media (max-width: 767px)
{
	/*.letterLinks a,
	.letterLinks span
	{
		width: calc(100% / 13);
	}

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

.bioList .results_list th
{
	border-bottom: 1px solid currentColor;
	padding: 0;
}

.bioList .office ul,
.bioList .office li
{
	margin: 0;
}

.bioList ul li
{
	list-style: none;
	list-style-image: none;
}

/* attorney directory & search */
div.bioListTiles
{
	position: relative;
	margin: 50px 0 0px 0;
}

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

div.bioListTiles ul
{
	display: flex;
	flex-wrap: wrap;
}

div.bioListTiles ul.results_list > li
{
	border: 1px solid #dedede;
	border-top: none;
	box-sizing: border-box;
	margin-bottom: 60px;
}

div.bioListTiles > ul > li,
div.bioListTiles > ul > li img
{
	display: block;
	position: relative;
	width: 100%;
}

div.bioListTiles > ul > li .photo
{
	position: relative;
	width: calc(100% + 2px);
	left: -1px;
}

div.bioListTiles > ul > li .nametitle
{
	padding: 24px 10px;
	box-sizing: border-box;
	line-height: 3rem;
}

div.bioListTiles > ul > li .nametitle .title
{
	text-transform: uppercase;
	font-weight: 700;
	font-size: 2.1rem;
	color: #32465f;
	font-family: 'brandon-grotesque', sans-serif;
}

div.bioListTiles > ul > li .nametitle .position
{
	margin: 0 0 8px;
	color: #f05025;
	text-transform: uppercase;
	font-weight: 700;
	font-size: 1.6rem;
	font-family: 'brandon-grotesque', sans-serif;
}

div.bioListTiles > ul > li .nametitle .phone
{
	font-size: 2rem;
}

div.bioListTiles > ul > li .nametitle .phone:before
{
	content: 'Direct: ';
	text-transform: uppercase;
	font-weight: 700;
	font-size: 1.7rem;
	font-family: 'brandon-grotesque', sans-serif;
}

/*div.bioListTiles > ul > li .nametitle .phone span
{
	text-transform: uppercase;
	font-weight: 700;
	font-size: 1.7rem;
	font-family: 'brandon-grotesque', sans-serif;
}*/

div.bioListTiles > ul > li .nametitle .office
{
	display: flex;
	font-size: 2rem;
}

div.bioListTiles > ul > li .nametitle .office li:not(:last-child):after
{
	content: ',';
	margin-right: 4px;
}

div.bioListTiles > ul > li .nametitle .office li a
{
	color: #5ba8af;
	background: none;
}

div.bioListTiles > ul > li .nametitle .office:before
{
	display: block;
	content: 'LOCATION:';
	padding-top: 1px;
	margin-right: 5px;
	font-weight: 700;
	font-size: 1.7rem;
	font-family: 'brandon-grotesque', sans-serif;
}


div.bioListTiles > ul > li .nametitle .office:empty
{
   display: none;
}

div.bioListTiles > ul > li,
div.bioListTiles > ul > li a
{
	position: relative;
	color: #333333;
	text-decoration: none;
	border: 0px;
}

#leadershipListing
{
	margin-bottom: 50px;
}


/* attorney carousel */

body#people #lowerContent,
body#capabilities #lowerContent,
body#capabilities-alpha #lowerContent,
body#capabilities-project #lowerContent
{
	max-width: 100%;
	/*margin: 0 -10px;*/
}

#attorneyCarousel
{
	display: none;
	padding: 90px 0 45px;
}

#attorneyCarousel
{
	overflow: hidden;
	margin: 0 -15px;
}

#attorneyCarousel ul
{
	/*display: flex;
	flex-wrap: wrap;
	width: 200%;*/
}

#attorneyCarousel > div > div > div > div
{
	position: relative;
	/*width: calc((100%/2) - 30px);
	margin-bottom: 50px;*/
	margin: 0 5px;
}

#attorneyCarousel div .photo
{
	position: relative;
}

#attorneyCarousel div .photo:after
{
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: '';
	background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.35) 60%);
}

#attorneyCarousel div .photo img
{
	width: 100%;
	height: auto;
}

#attorneyCarousel .nametitle,
#attorneyCarousel .teasertext
{
	position: absolute;
	width: 100%;
	bottom: 0;
	z-index: 10;
	box-sizing: border-box;
}

#attorneyCarousel .teasertext
{
	display: none;
	padding: 10px 10px 10px 10px;
	color: #ffffff;
	font-family: 'freight-text-pro', sans-serif;
	font-size: 2.1rem;
	line-height: 2.8rem;
	font-weight: 300;
}

#attorneyCarousel > div > div > div > div:hover .photo:after
{
	background: linear-gradient(to bottom, rgba(0,0,0,0.5) 0%,rgba(0,0,0,0.5) 100%);
}

#attorneyCarousel > div > div > div > div:hover .teasertext
{
	display: block;
}

#attorneyCarousel > div > div > div > div:focus-within .teasertext
{
	display: block;
}

#attorneyCarousel > div > div > div > div:hover .nametitle
{
	display: none;
}

#attorneyCarousel > div > div > div > div:focus-within .nametitle
{
	top: 0;
}

#attorneyCarousel .nametitle
{
	bottom: 0;
	color: #ffffff;
	padding: 10px 10px 20px 10px;
	box-sizing: border-box;
}

#attorneyCarousel .nametitle .title
{
	font-size: 2rem;
	line-height: 2.4rem;
	font-weight: 700;
	text-transform: uppercase;
	font-family: 'brandon-grotesque', sans-serif;
}

#attorneyCarousel .nametitle .position
{
	text-transform: uppercase;
	font-weight: 600;
	color: #cccccc;
	font-size: 1.4rem;
	line-height: 1.8rem;
	font-family: 'brandon-grotesque', sans-serif;
}

button.slick-prev,
button.slick-next
{
	position: absolute;
	/*top: calc(50% - 23px);*/
	top: 20px;
	left: 10px;
	display: block;
	width: 46px;
	height: 46px;
	background: none;
	border: none;
	text-indent: -9999em;
	background: url('../i/icon-carousel-arrow.png') no-repeat; /* data-uri */
	background-size: 100%;
	z-index: 10;
	cursor: pointer;
}

button.slick-next
{
	transform: rotate(180deg);
	left: auto;
	right: 10px;
}

@media (min-width: 500px)
{

	div.bioListTiles ul.results_list
	{
		margin: 0 -10px;
	}

	div.bioListTiles ul.results_list > li
	{
		width: calc(50% - 20px);
		margin: 0 10px 20px;
		box-sizing: border-box;
	}
}

@media (min-width: 768px)
{

	div.bioListTiles > ul > li .nametitle
	{
		padding: 24px;
	}

	#attorneyCarousel .nametitle
	{
		padding: 35px;
	}

	#attorneyCarousel .teasertext
	{
		padding: 35px 35px 24px;
	}
}

@media (min-width: 1280px)
{
	div.bioListTiles ul.results_list > li
	{
		width: calc((100%/3) - 21px);
		margin: 0 10px 20px;
	}

	button.slick-prev,
	button.slick-next
	{
		top: calc(50% - 23px);
	}
}

@media (min-width: 1900px)
{

	button.slick-prev
	{
		left: 25px;
	}

	button.slick-next
	{
		right: 25px;
	}
}

/* Bio Profile */

body.people-item #banner
{
	background: none;
	height: auto;
}

body.people-item #banner:before
{
	display: none;
}

body.people-item #bannerContent
{
	position: static;
}

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

#bioInfo
{
	margin: 0 0 30px 0;
}

#bioInfo h1#pageTitle
{
	margin: 0;
	font-size: 4rem;
	line-height: 4.5rem;
	font-family: 'freight-text-pro', sans-serif;
	color: #231f20;
	padding: 5px 0 0 0;
}

#bioPronoun
{
	font-weight: 300;
	margin: 0;
	padding: 0 0 10px 0;
	line-height: 1.3rem;
}

#bioTitle
{
	padding: 14px 0 2px 0;
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 3.2rem;
	text-transform: uppercase;
	color: #f04f26;
	font-family: 'brandon-grotesque', sans-serif;
}

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


ul#bioContact
{
	margin-top: 10px;
	font-weight: 300;
}

ul#bioContact span
{
	font-weight: 700;
	font-size: 2rem;
	font-family: 'brandon-grotesque', sans-serif;
}

#bioEmail a
{
	color: inherit;
}

ul#bioAccessories
{
	margin-top: 30px;
	display: flex;
}

ul#bioAccessories li:not(:last-child)
{
	margin-right: 17px;
}

ul#bioAccessories a
{
	position: relative;
	display: block;
	width: 29px;
	height: 29px;
}

ul#bioAccessories a img + img
{
	display: none;
}

ul#bioAccessories a:hover img + img
{
	display: block;
}

ul#bioAccessories #bioPDF a
{
	width: 25px;
}

ul#bioAccessories a img
{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
	display: block;
}

body.people-item #content #preContent
{
	padding-top: 0;
	margin-bottom: 12px;
}

#bio_ofnote
{
	font-size: 2.8rem;
	line-height: 3.4rem;
	font-weight: 500;
	color: #32465f;
	font-family: 'brandon-grotesque', sans-serif;
}

#bio_ofnote p:last-child
{
	margin: 0;
}

#area_project
{
	/*border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;*/
	margin: 36px 0;
}



#bannerContent #slash
{
	display: block;
	position: absolute;
	top: 0;
	right: -3%;
	width: 25%;
	height: 100%;
	/* background: #ef4e22; */
	/*background: #f05025;*/
	background: linear-gradient(90deg, rgba(240,80,37,1) 0%,rgba(240,80,37,1) 35%,rgba(255,255,255,1) 30%,rgba(255,255,255,1) 100%);
	transform-origin: 0 0;
	transform: skew(40deg);
	border-left: 10px solid #ffffff;
	z-index: 10;
	-webkit-background-clip: padding-box;
	-webkit-backface-visibility: hidden; /* gets rid of the jagged edge on the right */
}

#subContent .bioSection:not(:first-of-type)
{
	border-top: 2px solid #c4e6eb;
	margin-top: 30px;
	padding-top: 20px;
}

#subContent .bioSection li a
{
	color: #231f20;
}

/*#subContent .bioSection li a:hover
{
	color: #ff4d00;
	text-decoration: none;
}*/

@media (min-width: 768px)
{
	#bioInfo
	{
		display: flex;
		justify-content: flex-start;
		padding: 30px 0 0;
	}

	#bioInfo #bioPhoto
	{
		order: 2;
		flex: 0 1 702px;
		padding-right: 30px;
	}

	#bioInfoContent
	{
		order: 1;
		flex: 0 1 665px;
		padding-right: 20px;
		box-sizing: border-box;
	}

	#bio_ofnote.hideMe
	{
		display: none;
	}

}

@media (min-width: 1024px)
{

	body.people-item #bannerContent
	{
		max-height: 503px;
	}

	#bioInfo #bioPhoto
	{
		padding-right: 0;
	}

	#bio_ofnote
	{
		font-size: 3.6rem;
		line-height: 4.2rem;
	}
}

@media (max-width: 767px)
{
	#bioInfo h1#pageTitle
	{
		margin-bottom: 0;
		padding-bottom: 0;
	}
}


/*  Careers landing page */

#banner.careersBanner
{
	height: auto;
	padding: 50px 10px 70px;
	box-sizing: border-box;
}

#banner.careersBanner #bannerContent,
#banner.lpmBanner #bannerContent
{
	text-align: center;
	text-transform: uppercase;
	max-width: 1160px;
}

#banner.careersBanner #bannerContent h1,
#banner.lpmBanner #bannerContent h1
{
	font-family: 'brandon-grotesque', sans-serif;
	margin: 0 auto 15px;
	text-shadow: 1px 1px 1px #32455f;
}

#slantExpander
{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	display: flex;
	/*background: #3c5270;*/
	/*background: #f0623e;*/

	/*background-size: #76bbc1; invalid CSS */

	justify-content: center;
	z-index: 0;
}

#banner.careersBanner,
#banner.careersBanner:before
{
	background: #76bbc1 !important;
}

#slantExpander span
{
	display: block;
	height: 100%;
	min-width: 200px;
	/*background: #32455f;*/
	/*background: #f04f26;*/
	background: #c4e6eb;
	transform: skew(40deg);
	transition: width 10ms ease;
}

#slantExpander + #bannerContent
{
	z-index: 10;
}

#careerPages ul
{
	margin: 50px 0 0 0;
}

#careerPages li
{
	margin: 0 0 60px;
	list-style: none;
	border: 1px solid #dedede;
	font-family: 'brandon-grotesque', sans-serif;
	text-transform: uppercase;
	font-weight: 700;
	font-size: 2rem;
	box-sizing: border-box;
}

#careerPages li a
{
	color: #32465f;
}

#careerPages .linkimage img
{
	display: block;
	width: 100%;
	height: auto;
}

#careerPages .title
{
	padding: 20px 10px;
	box-sizing: border-box;
}

#jobList
{
	margin-top: 20px;
}

#jobList .title a
{
	color: #5ba8af;
}

#jobList .title a:hover
{
	color: #32455f;
}

#jobList .experience
{
	font-size: 2rem;
	line-height: 2.8rem;
}

#careerPages ul li a
{
	text-decoration: none;
}

#careerPages ul li a:hover .title
{
	color: #FF4D00;
	text-decoration: none;
}

#careerPages ul li a .linkimage
{
	position: relative;
}

@media (min-width: 550px)
{
	#careerPages ul
	{
		display: flex;
		flex-wrap: wrap;
		margin: 80px -10px 0;
	}

	#careerPages ul li
	{
		margin: 0 10px 20px;
		width: calc(50% - 20px);
	}
}

@media (min-width: 768px)
{

	#banner.careersBanner
	{
		height: 50vw;
		max-height: 700px;
	}

	#banner.careersBanner #bannerContent h1
	{
		max-width: 480px;
	}
}

@media (min-width: 1024px)
{

	#banner.careersBanner #bannerContent h1
	{
		max-width: 750px;
		font-size: 8rem;
		line-height: 8rem;
	}

	#banner.careersBanner #bannerContent #bannerSubtitle
	{
		font-size: 2.5rem;
		line-height: 4rem;
	}

	#slantExpander span
	{
		min-width: 330px;
	}

	#careerPages ul li
	{
		margin: 0 10px 20px;
		width: calc((100%/3) - 20px);
	}


	#banner.lpmBanner #bannerContent
	{
		padding: 0;
	}

	#banner.lpmBanner #bannerContent h1
	{
		font-size: 75px;
		line-height: 75px;
		margin: 0;
		padding: 0 20px;
	}
}

@media (min-width: 1350px)
{
	#banner.careersBanner #bannerContent h1
	{
		max-width: 940px;
		font-size: 10rem;
		line-height: 10rem;
	}

}

@media (max-width: 767px)
{
	#banner.careersBanner #bannerContent h1
	{
		font-size: 3.8rem;
		line-height: 4.5rem;
	}
}

/* Practice List */
form > div button
{
	position: absolute;
	top: 7px;
	right: 0;
	background: none;
	border: none;
	cursor: pointer;
}

#homeBioSearch
{
	position: relative;
}

#homeBioSearch form > div button
{
	position: absolute;
	top: 10px;
	right: 0;
	background: none;
	border: none;
	cursor: pointer;
}

#homeBioSearch form > div
{
	position: relative;
}

#homeBioSearch form > div input
{
	height: 50px;
	border: none;
	border-bottom: 2px solid #d8d8d8;
}

#homeBioSearch label
{
	position: absolute;
	padding: 5px 0 0 5px;
	color: #ef4e22;
}

@media (min-width: 768px)
{
	#homeBioSearch
	{
		font-size: 3rem;
		line-height: 3rem;
	}

	#homeBioSearch label
	{
		top: 0;
	}
}



div.listColumn > ul > li
{
    overflow: hidden;
	break-inside: avoid;
	font-family: 'brandon-grotesque', sans-serif;
}

/* 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: 0;
	padding: 0;
	font-weight: 500;
	line-height: normal;
}

div.listColumn ul li
{
	position: relative;
	/*display: inline-block;
	width: 100%;*/
	font-size: 2rem;
	color: #32465f;
}

div.listColumn > ul > li
{
	border-bottom: 1px solid #dedede;
	padding: 19px 30px 14px 0;
}

div.listColumn ul li a
{
	color: inherit;
}

div.listColumn ul li a:hover
{
	color: #76bbc1;
	text-decoration: none;
}

div.listColumn ul.hierList li
{
	padding-top: 8px;
	padding-bottom: 8px;
	font-weight: normal;
	font-size: 1.8rem;
}

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

/* service list expander */
div.listColumnWrapper ul.results_list > li > ul.hierList
{
    display: none;
}

div.listColumnWrapper ul li .expander
{
	/* button reset */
	overflow: hidden;
	margin: 0;
	border: none;

	position: absolute;
	right: 5px;
	top: 17px;
	display: block;
	width: 0;
	height: 0;
	padding: 30px 30px 0 0;
	overflow: hidden;

    cursor: pointer;
    text-decoration: none;
    background: url('../i/icon-select-teal.png') center no-repeat; /* data-uri */
    background-size: 18px 12px;
}

div.listColumnWrapper ul li .expander.isOpen
{
	transform: rotate(180deg);
}

div.listColumn
{
	position: relative;
}

div.listColumn:before
{
	position: absolute;
	top: 0;
	left: 0;
	content: '';
	width: 100%;
	height: 1px;
	background: #dedede;
}


/*div.listColumnWrapper ul li .expander:after
{
	content: '\0a0+\0a0';
}

div.listColumnWrapper ul li .expander.isOpen:after
{
	content: '\0a0-\0a0';
}*/

#expandAll
{
	cursor: pointer;
}

#servicesSearch
{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 40px;

	position: relative;
}

#servicesSearch form
{
	position: relative;
	flex: 1 1 800px;
}

#servicesSearch form > div > div
{
	width: 100%;
}

#servicesSearch #serviceSearchOptions
{
	flex: 1 1 345px;
	justify-content: flex-end;
}

#servicesSearch #serviceSearchOptions
{
	display: flex;
}

#servicesSearch #serviceSearchOptions > *
{
	/* button reset */
	border: none;
	font: inherit;
	cursor: pointer;

	display: block;
	flex: 0 0 163px;
	height: 49px;
	padding: 0;
	text-align: center;
	background: #76bbc1;
	color: #ffffff;
	text-transform: uppercase;
	font-weight: 700;
	font-size: 1.7rem;
	line-height: 49px;
	box-sizing: border-box;
	font-family: 'brandon-grotesque', sans-serif;
}

#servicesSearch #serviceSearchOptions > *:hover,
#servicesSearch #serviceSearchOptions > *:focus
{
	background: #32455f;
	text-decoration: none;
}

#servicesSearch #serviceSearchOptions > * + *
{
	margin-left: 1px;
}

/* Success Stories */

#experienceSearch form > div,
#servicesSearch form  > div
{
	display: block;
}

#experienceSearch form > div > div
{
	margin: 0;
	width: 100%;
}

#experienceSearch form input[type=submit],
#servicesSearch form button
{
	position: absolute;
	right: 17px;
	top: -43px;
	height: 35px;
	padding: 5px 25px 5px 0;
	background: none;
	color: #5ba6ac;
	text-transform: uppercase;
	font-weight: 700;
	font-size: 1.7rem;
	letter-spacing: 1px;
	background: url('../i/icon-search-blue.svgz') right 7px no-repeat; /* data-uri */
	background-size: 18px 18px;
}

#servicesSearch form button
{
	top: 8px;
}

#experienceSearch form input[type=submit]:hover,
#servicesSearch form button:hover
{
	color: #32455f;
	background: url('../i/icon-search-darkblue.svgz') right 7px no-repeat; /* data-uri */
	background-size: 18px 18px;
}

@media (min-width: 1024px)
{
	div.listColumn > ul
	{
		columns: 2;
	    margin-bottom: 1em;
	}

	/*  Ha!  Ghetto, but it works */
	div.listColumn:before,
	div.listColumn:after
	{
		position: absolute;
		top: 0;
		left: 0;
		content: '';
		width: calc(50% - 10px);
		height: 1px;
		background: #dedede;
	}

	div.listColumn:after
	{
		left: auto;
		right: 0;
		content: '';
	}
}

@media (min-width: 1100px)
{

	#servicesSearch
	{
		flex-wrap: nowrap;
	}

	#servicesSearch #serviceSearchOptions
	{
		flex-grow: 0;
	}

}

@media (min-width: 1350px)
{
	div.listColumn ul li
	{
		font-size: 2.4rem;
	}

	div.listColumn > ul > li
	{
		padding: 14px 30px 14px 0;
	}
}

@media (max-width: 599px)
{
	#experienceSearch form input[type=submit],
	#servicesSearch form button
	{
		top: -55px;
		right: 5px;
		padding: 0;
		height: 37px;
		width: 37px;
		float: right;
		/*border: 1px solid #76bbc1;*/
		background: url('../i/icon-search-blue.svgz') center no-repeat; /* data-uri */
		background-size: 18px;
		text-indent: -9999em;
	}

	#servicesSearch form button
	{
		top: 4px;
	}

	#experienceSearch form > div > div
	{
		margin-top: 10px;
	}

	#servicesSearch form label
	{
		top: 4px;
		font-size: 1.4rem;
	}
}


/* Practice Profile */


body.capabilities-item #banner
{
	margin-bottom: 0;
}

body.capabilities-item h1#pageTitle
{
	font-weight: 500;
}

body.capabilities-item #mainContent,
body.capabilities-item #subContent
{
	margin-top: 0;
}

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

#subContent .areaSection .results_list
{
	margin: 0;
}

div.relatedAttorneyList .results_list li:last-child
{
	margin-bottom: 0 !important;
}

div.relatedAttorneyList .results_list li,
div.relatedAttorneyList .contactInfo ul
{
	display: flex;
	flex-wrap: wrap;
}

div.relatedAttorneyList .practicephoto
{
	flex: 0 1 120px;
	margin: 0 23px 15px 0;
}

div.relatedAttorneyList .practicephoto img
{
	display: block;
	width: 100%;
	height: auto;
}

div.relatedAttorneyList .contactInfo
{
	flex: 1 1 180px;
}

div.relatedAttorneyList .title
{
	font-size: 1.8rem;
	line-height: 2.4rem;
	text-transform: uppercase;
	font-weight: 700;
	color: #32465f;
	font-family: 'brandon-grotesque', sans-serif;
}

div.relatedAttorneyList .title a
{
	color: inherit;
}

div.relatedAttorneyList .office ul,
div.relatedAttorneyList .office li
{
	margin: 0 !important;
}

div.relatedAttorneyList .office li
{
	margin: 0 4px;
	color: #231f20;
}

div.relatedAttorneyList .office li a
{
	color: inherit;
}

div.relatedAttorneyList .office li:not(:last-child):after
{
	content: ',\00A0';
}

div.relatedAttorneyList.nameOnly .practicephoto,
div.relatedAttorneyList.nameOnly .position,
div.relatedAttorneyList.nameOnly .office
{
	display: none;
}

#subContent .areaSection,
#subContent .itemSection
{
	padding-bottom: 30px;
	margin-bottom: 30px;
	border-bottom: 2px solid #c4e6eb;
}

#subContent #area_relatedsame
{
	margin-bottom: 35px;
}

#subContent #area_relatedsame a,
#area_matter li a,
#item_area li a
{
	color: #231f20;
}

#area_matter li
{
	padding-left: 5px;
	list-style: disc !important;
	list-style-position: inside !important;
}

@media (max-width: 767px)
{
	div.relatedAttorneyList + a
	{
		display: none;
	}
}





/* Legal Project Management page */


#banner.lpmBanner
{
	height: 50vw;
	max-height: 479px;
}

#banner.lpmBanner:after
{
	display: none;
}

#introBuckets
{
	margin-top: 70px;
}

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


#introBuckets li
{
	text-align: center;
	max-width: 367px;
	margin: 0 auto 50px;
	font-family: 'brandon-grotesque', sans-serif;
	font-weight: 700;
	color: #32465f;
}

#introBuckets .title
{
	padding-bottom: 10px;
	margin-bottom: 20px;
	border-bottom: 2px solid #f04e23;
	font-size: 90px;
	line-height: 90px;
	color: #75bac1;
}

#introBuckets .smalltext
{
	padding: 0 5px;
	font-size: 20px;
	line-height: 26px;
	text-transform: uppercase;
}


#lpmHighlights
{
	margin: 68px 0 0;
}

#lpmHighlights:after
{
	content: '';
	display: table;
	clear: both;
}

#lpmHighlights > div > div
{
	margin: 0 0 10px;
	position: relative;
}

#lpmHighlights > div > div.current:after
{
	content: '';
	position: absolute;
	left: calc(50% - 12px);
	bottom: -30px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 12px 13px 12px;
	border-color: transparent transparent #303634 transparent;
}

#lpmHighlights .image
{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	overflow: hidden;
}

#lpmHighlights .image img
{

	display: block;
	width: 100%;
	height: 100%;
	/*IE doesn't recognize this, but it's only going to be at mobile sizing and, since they aren't in the mobile game, I doubt it will matter and it simplifies what needs to be done*/
	object-fit: cover;
	transition: all 250ms ease;
}

#lpmHighlights .intro
{
	position: relative;
}

#lpmHighlights .introcontent
{
	font-family: 'brandon-grotesque', sans-serif;
	position: relative;
	/*position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;*/
	padding: 30px 20px;
	box-sizing: border-box;
	background: rgba(50,70,95, .85);
	color: #ffffff;
	opacity: 0;
	transition: all 250ms ease;
}

#lpmHighlights .introcontent li
{
	margin: 10px 0 10px 25px;
}

#lpmHighlights .introcontent:focus-within
{
	opacity: 1;
	cursor: pointer;
}

#lpmHighlights .introcontent:hover,
#lpmHighlights .introcontent:focus,
#lpmHighlights > div > div.current .introcontent
{
	opacity: 1;
	cursor: pointer;
}

#lpmHighlights .intro:focus-within .image img
{
	transform: scale(1.05);
}

#lpmHighlights .intro:hover .image img,
#lpmHighlights .intro:focus .image img
{
	transform: scale(1.05);
}

#lpmHighlights button
{
	background: none;
	border: none;
	color: #75bac2;
	text-transform: uppercase;
	font-size: 17px;
	font-weight: bold;
	font-family: 'brandon-grotesque', sans-serif;
	cursor: pointer;
}

#lpmHighlights .title
{
	font-family: 'brandon-grotesque', sans-serif;
	color: #32465f;
	font-weight: 700;
	padding: 20px;
	border: 1px solid #dedede;
}

#lpmHighlights .content
{
	display: none;
}

#lpmHighlights .results_list > div.content
{
	position: relative;
	width: 100vw;
	padding: 60px 15px 50px;
	margin: 30px 0;
	color: #ffffff;
	background: #303634;
	left: calc(50% - 50vw);
	box-sizing: border-box;
}

#lpmHighlights .results_list > div.content *:not(a)
{
	color: inherit;
}

#lpmHighlights .results_list > div.content a:not(:hover):not(:focus)
{
	color: inherit;
}

#lpmHighlights .results_list > div.content li
{
	margin-left: 24px;
}

#lpmHighlights .results_list > div.content > img
{
	display: none;
}

#lpmHighlights button.close
{
	position: absolute;
	top: 10px;
	right: 10px;
	width: 30px;
	height: 30px;
	padding: 0;
	text-align: center;
	font-size: 24px;
	line-height: 30px;
	font-weight: 700;
	background: #434a48;

	color: #75bac2 !important;

}

#extraContent:not(:empty)
{
	margin: 40px 0;
}

body#capabilities-project #lowerContent h2
{
	color: #32465f;
	text-align: center;
}

body#capabilities-project #lowerContent
{
	padding: 45px 0;
}

body#capabilities-project #attorneyCarousel
{
	padding-top: 55px;
}

@media (min-width: 500px)
{

	#lpmHighlights .image
	{
		position: relative;
		width: auto;
		height: auto;
		z-index: 0;
	}

	#lpmHighlights .introcontent
	{
		font-family: 'brandon-grotesque', sans-serif;
		position: relative;
		position: absolute;
		top: 0;
		left: 0;
		height: 100%;
		width: 100%;
		padding: 30px 20px;
		box-sizing: border-box;
		background: rgba(50,70,95, .85);
		color: #ffffff;
		opacity: 0;
		transition: all 250ms ease;
	}
}

@media (min-width: 650px)
{
	#lpmHighlights .introcontent
	{
		padding: 55px;
	}
}

@media (min-width: 768px)
{
	#introBuckets ul
	{
		display: flex;
		justify-content: space-between;
		margin: 0 -5px;
	}

	#introBuckets ul li
	{
		margin: 0 5px;
	}
}

@media (min-width: 920px)
{


	#lpmHighlights > div
	{
		/*display: flex;
		flex-wrap: wrap;*/
		margin: 0 -10px;
	}

	#lpmHighlights > div > div
	{
		float: left;
		width: calc(50% - 10px);
		margin: 0 5px 10px;
	}

	#lpmHighlights .results_list > div.content
	{
		margin-top: 20px;
	}

	#lpmHighlights button.close
	{
		right: auto;
		left: 20px;
		top: 13px;
	}
}

@media (min-width: 1024px)
{
	#lpmHighlights .results_list > div.content
	{
		overflow: hidden;

		background: linear-gradient(to right,
					rgba(48, 54, 52, 1) 59%,
					rgba(48, 54, 52, .9) 63%,
					rgba(48, 54, 52, 0) 85%);
	}

	#lpmHighlights .results_list > div.content > div
	{
		width: 100%;
		max-width: 1374px;
		margin: 0 auto;
	}

	#lpmHighlights .results_list > div.content > div div.innerContent
	{
		width: 58%;
	}

	#lpmHighlights .results_list > div.content > img
	{
		position: absolute;
		right: 0;
		top: 0;
		display: block;
		height: 100%;
		width: 42%;
		/*object-fit: cover;*/
		z-index: -1;
	}

	#lpmHighlights button.close
	{
		right: 25px;
	}
}

@media (min-width: 1250px)
{
	/*#lpmHighlights .results_list > div.content > img
	{
		height: auto;
		width: 45%;
	}*/
}

@media (min-width: 920px) and (max-width: 1200px)
{
	#lpmHighlights
	{
		font-size: 18px;
	}

	#lpmHighlights .introcontent
	{
		padding: 30px 20px;
	}
}

/* News/Pub/Event type Listing */


#newsroomList
{
	margin-top: 100px;
}

#newsroomList > div
{
	margin: 0 0 50px;
}

#newsroomList > div h2
{
	display: flex;
	color: #32455f;
	margin: 0 0 30px;
}

#newsroomList > div h2 span + span
{
	background: url('../i/border.png') left 3px repeat-x; /* data-uri */
	flex: 1 1 auto;
	margin-left: 20px;
}

#newsroomList li
{
	margin: 0 0 30px;
}

#newsroomList li.thisWeek .itemdate
{
	padding-right: 105px;
	background: url('../i/this-week.png') right 0px no-repeat; /* data-uri */
	background-size: 96px 21px;
}

.itemList .title,
.itemList .itemTitle
{
	color: #231f20;
	font-size: 2.4rem;
	line-height: 3.5rem;
}

.itemList .title:hover,
.xrefSection .title:hover
{
	color: #76bbc1;
}

.itemList .title a,
.itemList .itemTitle a
{
	color: inherit;
	text-decoration: none;
}

.sectionDate
{
	display: flex;
	/*margin: 0 0 5px;*/
	font-size: 1.4rem;
	text-transform: uppercase;
	font-family: 'brandon-grotesque', sans-serif;
	font-weight: 700;
}

.sectionDate .section
{
	color: #5ba8af;
}

.sectionDate div + div:before
{
	content: '|';
	position: relative;
	top: -2px;
	margin: 0 10px;
}

.mediaContact
{
	margin-top: 40px;
}

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

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

body#newsroom #mainContent .ITEM_SEARCH
{
	padding-bottom: 45px;
	margin-bottom: 60px;
	border-bottom: 1px solid #dedede;
}

@media (min-width: 768px)
{
	#newsroomList
	{
		display: flex;
		flex-wrap: wrap;
		margin-left: -15px;
		margin-right: -15px;
	}

	#newsroomList > div
	{
		flex: 1 1 auto;
		flex-basis: calc(50% - 30px);
		margin-left: 15px;
		margin-right: 15px;
	}
}

@media (min-width: 1024px)
{
	#newsroomList
	{
		display: flex;
		flex-wrap: wrap;
		margin-left: -50px;
		margin-right: -50px;
	}

	#newsroomList > div
	{
		flex: 1 1 auto;
		flex-basis: calc(50% - 100px);
		margin-left: 50px;
		margin-right: 50px;
	}
}

@media (min-width: 1280px)
{

	body#newsroom form > div
	{
		flex-wrap: nowrap;
	}

	body#newsroom form > div > div
	{
		margin: 0 12px 0 0;
	}

	body#newsroom form > div > div:nth-child(2)
	{
		flex: 0 1 218px;
	}

	body#newsroom form > div > div:nth-child(3),
	body#newsroom form > div > div:nth-child(4)
	{
		flex: 0 1 519px;
	}

	body#newsroom form > div > div:nth-child(5)
	{
		flex: 0 0 109px;
	}

}

/* News/Pub/Event type Profile */

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

#itemDate
{
	margin: 0 0 20px;
}

#itemAddress p
{
	margin: 0;
}

#attachments h2
{
	margin: 0 0 10px;
}

#attachments li
{
	margin: 0;
	list-style: none;
}

#eventMenu
{
	display: flex;
	flex-wrap: wrap;
	margin: 20px 0 40px;
	padding-bottom: 20px;
	border-bottom: 1px solid #dedede;
}

#eventMenu div
{
	margin-right: 6px;
}

#eventMenu a
{
	padding: 4px 13px;
	background-color: #32465f;
	color: #76bbc1;
	font-size: 1.5rem;
	line-height: 1.5rem;
	text-transform: uppercase;
	font-family: 'brandon-grotesque', sans-serif;
	font-weight: 700;
}

#eventMenu .mapit a
{
	padding-right: 30px;
	background: url('../i/icon-mapit.svgz') 70px 8px no-repeat; /* data-uri */
	background-size: 9px 13px;
	background-color: #32465f;
}

#category_subTitle span + span:before
{
	content: '|';
	margin: 0 10px;
}

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

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

#itemTools
{
	display: flex;
}

#itemTools > div
{
	margin-right: 1px;
	background-color: #76bbc1;
}

#itemTools > div a
{
	display: block;
	width: 100%;
	height: 100%;
	font-size: 0px;
}

#itemTools > div:hover
{
	background-color: #32455f;
}

#subscribeLink
{
	display: block;
	padding-left: 68px;
	text-transform: uppercase;;
	font-family: 'brandon-grotesque', sans-serif;
	font-size: 2.2rem;
	line-height: 2.6rem;
	color: #32465f;
	font-weight: 700;
	background: url('../i/icon-subscribe.png') left center no-repeat; /* data-uri */

	background-size: 52px;
}

#subscribeLink:hover
{
	color: #76bbc1;
	text-decoration: none;
}

.sideShare
{
	position: relative;
    display: block;
    width: 39px;
    height: 39px;
    /*background-color: #76bbc1;*/
}

.sideShare a img
{
	width: 100%;
	height: auto;
}

#sidepdfLink
{
	display: block;
	height: 39px;
	width: 39px;
	background: url('../i/icon-pdf.png')no-repeat; /* data-uri */
	background-size: 100%;
	text-indent: -9999em;
	overflow: hidden;
}

#toolSubscribeLink
{
	display: block;
	height: 39px;
	width: 39px;
	background: url('../i/icon-side-subscribe.png')no-repeat; /* data-uri */
	background-size: 100%;
	text-indent: -9999em;
	overflow: hidden;
}

@media (min-width: 1600px)
{
	#itemTools
	{
		flex-direction: column;
		position: absolute;
		right: 0;
		top: 390px;
	}

	#itemTools > div
	{
		width: 59px;
		height: 59px;
		margin: 0 0 1px;
	}

	#itemTools > div a
	{
	}
}

/* Contact Main Listing */

body#locations #banner
{
	height: auto;
	margin-bottom: 100px;
	background: none;
	display: block;
	background: #c3e6eb;
	min-height: 0px;
}

body#locations #banner #locationMap
{
	position: relative;
	width: 100%;
	margin: 0 auto;
	max-width: 1025px;
}

body#locations #banner img
{
	width: 100%;
	display: block;
	height: auto;
	min-height: 0;
}

body#locations #banner:before
{

	background: #c3e6eb;
}

body#locations #banner h1
{
	position: absolute;
	bottom: -100px;
	left: 10px;
	color: #3d4543;
}

body#locations #banner a
{
	display: block;
	position: absolute;
	z-index: 10;
	width: 10px;
}

body#locations #banner a img
{
	display: block;
	width: 100%;
	height: auto;
}

body#locations #banner a span
{
	display: none;
	position: absolute;
	left: 100%;
	top: 100%;
}

body#locations #banner a:hover,
body#locations #banner a:focus
{
	z-index: 100;
}

body#locations #banner a:hover span,
body#locations #banner a:focus span
{
	/*display: block;
	white-space: nowrap;
	color: #000000;
	text-shadow: 1px 1px 5px #666666;
	z-index: 20;*/
}

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

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

#officeList ul li
{
	margin: 0 0 20px;
	padding: 15px;
	border: 1px solid #dedede;
	box-sizing: border-box;
	font-size: 2rem;
	line-height: 3rem;
}

#officeList ul li .title
{
	padding-bottom: 15px;
	margin-bottom: 15px;
	font-weight: 700;
	text-transform: uppercase;
	font-size: 2.1rem;
	background: url('../i/border.png') repeat-x bottom; /* data-uri */
	background-size: auto 9px;
	font-family: 'brandon-grotesque', sans-serif;
}

#officeList ul li .title a:hover
{
	color: #32455f;
	text-decoration: none;
}

#officeList ul li .contactperson
{
	margin: 1rem 0;
}

#officeList ul li .phone span,
#officeAddressPhone span
{
	font-weight: 700;
	color: #333333;
	text-transform: uppercase;
	font-size: 1.7rem;
	font-family: 'brandon-grotesque', sans-serif;
}

@media (min-width: 500px)
{
	#officeList ul
	{
		display: flex;
		flex-wrap: wrap;
		margin: 0 -10px;
	}

	#officeList ul li
	{
		flex: 0 1 auto;
		flex-basis: calc(50% - 20px);
		margin: 0 10px 20px;
		padding: 15px;
		border: 1px solid #dedede;
		box-sizing: border-box;
	}
}

@media (min-width: 768px)
{
	body#locations #banner a
	{
		width: 22px;
	}
}

@media (min-width: 920px)
{

	#officeList ul
	{

	}

	#officeList ul li
	{
		flex: 0 0 auto;
		width: calc((100%/3) - 20px);
	}
}

@media (min-width: 1024px)
{
	#officeList ul li
	{
		padding: 32px 30px;
	}
}

@media (min-width: 1350px)
{
	body#locations #banner h1
	{
		top: calc(50% - 50px);
		left: 30px;
		width: 100%;
		margin: 0 auto;
		color: #3d4543;
		z-index: 10;
		font-weight: 500;
	}

	body#locations #banner
	{
		margin-bottom: 50px;
	}
}

@media (min-width: 1600px)
{
	body#locations #banner h1
	{
		left: calc(50% - 750px);
	}
}

@media (max-width: 1349px)
{
	body#locations #banner
	{
		overflow: visible;
	}
}

@media (max-width: 767px)
{

	/*body#locations #banner
	{
		height: 45vw;
		min-height: auto;
	}

	body#locations #banner img
	{
		height: 100%;
		width: auto;
		position: relative;
		left: -49vw;
	}*/
}


/* Office Profile Pages */

body.locations-item #banner
{
	margin-bottom: 0;
}

body.locations-item #banner #bannerContent
{
	display: flex;
	flex-wrap: wrap;
}

body.locations-item #banner #bannerContent li,
body.locations-item #banner #bannerContent ul,
body.locations-item #banner #bannerContent h1
{
	margin: 0;
}

body.locations-item #banner #bannerContent h1
{
	width: 100%;
	order: 2;
	line-height: 52px;
}

body.locations-item #mainContent
{
	padding-top: 0;
}

#officeInfo
{
	padding: 22px 10px;
	margin: 10px 0 70px;
	border: 1px solid #dedede;
	/*border-top: 1px solid #dedede;
	border-bottom: 1px solid #dedede;*/
	font-family: 'freight-text-pro', sans-serif;
	box-sizing: border-box;
}

#officeAddressPhone span
{
	font-family: 'brandon-grotesque', sans-serif;
}

#officePhoto
{
	display: block;
	height: auto;
	width: 100%;
	max-width: 454px;
}

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

#officeAddressPhone
{
	padding-top: 30px;
	margin: 20px 0 10px 0;
	background: url('../i/border.png') repeat-x top; /* data-uri */
}

@media (min-width: 768px)
{

	#officeInfo
	{
		display: flex;
		padding: 25px;
	}

	#officePhoto
	{
		width: 50%;
		margin-right: 50px;
	}

	#officeAddress
	{
		flex: 1 1 auto;
	}
}

@media (min-width: 1600px)
{
	body.locations-item #pdfLink,
	body.capabilities-item #pdfLink
	{
		top: 460px;
	}
}


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

#itemSubtitle
{
	padding: 12px 0 4px 0;
	color: #00446a;
	font-size: 1.35rem;
	line-height: normal;
}

/* tiles */
.tiles ul.results_list li
{
	position: relative;
	margin: 0;
	list-style: none;
}

.tiles ul.results_list li > a:before
{
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	content: '';
	display: block;
	opacity: 0;
	background: rgba(255,255,255, .3);
	z-index: 100;

	transition: opacity 250ms ease;
}

.tiles ul.results_list li > a:hover:before,
.tiles ul.results_list li > a:focus:before
{
	opacity: 1;
}

.tiles ul.results_list
{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
		flex-wrap: wrap;

}

.tiles ul.results_list li
{
	margin-right: 18px;

}

.tiles ul.results_list li img
{
	max-width: 200px;
}
.tiles #clientTiles ul.results_list li img
{
	max-width: 300px;
}
.tiles ul.results_list li .sp_pencil
{
	position: absolute;
	top: 0;
	left: 0;
}

.tiles ul.results_list li .abstract,
.tiles ul.results_list li .title
{
	position: absolute;
	width: auto;
	bottom: 15px;
	padding: 25px 15px 0;
	color: #ffffff;
	line-height: 1.25em;
	font-size: 1em;
	font-weight: 700;
	z-index: 10;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
}

#experienceSpotlight ul
{
	margin: 54px 0;
	padding: 0;
}

#experienceSpotlight li
{
	position: relative;
	list-style: none;
	border: 1px solid #dedede;
}

#experienceSpotlight li .more
{
	display: inline-block;
	margin-top: 10px;
	font-size: 1.7rem;
	font-weight: 700;
	border-bottom: 1px solid #c4e6eb;
	color: #5ba8af;
}

@media (max-width: 992px)
{
	/*#experienceSpotlight li
	{
		width: calc(50% - 2px);
	}*/
}

@media (max-width: 768px)
{
	/*#experienceSpotlight li
	{
		width: calc(100% - 1px);
	}*/
}

.channelDesc
{
	margin-bottom: 1.5em;
}

#lowerContent
{
	order: 3;
	clear: both;
	position: relative;
	margin-top: 80px;
	background: #eaeeef;
    box-sizing: border-box;
}

.itemSpotlight ul
{
	padding: 85px 0;
}

.itemSpotlight li
{
	min-height: 350px;
	margin: 0 0 50px;
	list-style: none;
	box-sizing: border-box;
	background: #ffffff;
}

.itemSpotlight li a
{
	text-decoration: none;
}

.itemSpotlight li .image
{
	margin: 0 0 20px;
}

.itemSpotlight li img
{
	display: block;
	width: 100%;
	height: auto;
}

.itemSpotlight li .info
{
	padding: 0 18px 30px;
	box-sizing: border-box;
}

.itemSpotlight li .category,
.itemSpotlight li .section
{
	margin: 0 0 5px;
	font-size: 1.4rem;
	font-weight: 700;
	color: #f05025;
	text-transform: uppercase;
	font-family: 'brandon-grotesque', sans-serif;
}

.itemSpotlight li .title,
.itemSpotlight li .spotlighttitle
{
	margin: 0 0 5px;
	font-size: 2.1rem;
	line-height: 2.4rem;
	font-weight: 700;
	color: #32465f;
	text-transform: uppercase;
	font-family: 'brandon-grotesque', sans-serif;
}

.itemSpotlight li .content,
.itemSpotlight li .abstract
{
	font-size: 1.8rem;
	line-height: 2.6rem;
	color: #707070;
}


#item_action .title
{
	font-size: 2.4rem;
	font-weight: 700;
	color: #32465f;
	text-transform: uppercase;
	font-family: 'brandon-grotesque', sans-serif;
}

#item_action li
{
	margin: 0;
}

#item_action .image
{
	margin: 0 0 20px;
}

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


.itemSpotlight .image,
#careerPages ul li a .linkimage,
ul#homeSpotLarge li .image,
#newsroomSpotlight li .image,
div.bioListTiles > ul > li .photo
{
	overflow: hidden;
}

.itemSpotlight .image img,
#careerPages ul li a .linkimage img,
ul#homeSpotLarge li .image img,
#newsroomSpotlight li .image img,
div.bioListTiles > ul > li .photo img
{
	transition: all 500ms ease;
}

.itemSpotlight a:hover .image img,
#careerPages ul li a:hover .linkimage img,
ul#homeSpotLarge li:hover .image img,
#newsroomSpotlight li:hover .image img,
div.bioListTiles > ul > li:hover .photo img
{
	transform: scale(1.05);
}

#careerPages ul li a:hover .title,
.itemSpotlight a:hover .title,
.itemSpotlight a:hover .spotlighttitle,
ul#homeSpotSmall :hover .title,
ul#homeSpotLarge li:hover .title,
#newsroomSpotlight li:hover .title,
div.bioListTiles > ul > li:hover .title,
div.bioListTiles > ul > li:hover .title a,
.itemList .itemTitle:hover
{
	color: #76bbc1;
}

@media (min-width: 768px)
{
	.itemSpotlight ul
	{
		display: flex;
		flex-wrap: wrap;
		margin: 0 -5px;
	}

	.itemSpotlight ul li
	{
		flex: 0 1 auto;
		/*flex-basis: calc((100%/3) - 10px);*/
		width: calc((100%/3) - 10px);
		margin: 0 5px 10px;
		border: 1px solid #dedede;
	}
}

@media (min-width: 1024px)
{
	.itemSpotlight ul
	{
		margin: 0 -10px;
	}

	.itemSpotlight ul li
	{
		/*flex-basis: calc((100%/3) - 20px);*/
		width: calc((100%/3) - 20px);
		min-height: 400px;
		margin: 0 10px 20px;
	}

}

@media (min-width: 1280px)
{
	.itemSpotlight li .info
	{
		padding: 0 30px 50px;
	}
}

/* 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% - 6px);*/
	width: 100%;
	margin: 0 0 12px 0;
}

#index form > div > div
{
	position: relative;
	flex-basis: calc(100% - 1.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;
}

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

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

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: 49px; /* appease IE11 */
	margin: 0;
	padding: 5px 17px;
	color: #666766;
	border: 1px solid #76bbc1;
	font: normal 20px/1.6 brandon-grotesque, Arial, sans-serif;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
}

input[type=text]
{
	padding-right: 30px;
}

textarea
{
	min-height: 6.5em;
}

form > div > div > div > div > label,
form > div > div > label
{
	position: absolute;
	padding: 11px 17px;
	color: #32465f;
	font-size: 1.8rem;
	font-weight: 700;
	text-transform: uppercase;
	font-family: 'brandon-grotesque', sans-serif;
}

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

.customSelect::after
{
	content: '';
	display: block;
	position: absolute;
	top: 20px;
	right: 17px;

	/* http://apps.eky.hk/css-triangle-generator/ */
	width: 18px;
	height: 12px;
	background: url('../i/icon-select.png') no-repeat; /* data-uri */
	background-size: 100%;
}

/* this makes sure the invisible select always floats above */
select.hasCustomSelect
{
	z-index: 1;
	width: 100% !important;
}

.customSelectInner
{
	position: relative;
	display: block !important;
	color: #32465f;
	font-family: 'brandon-grotesque', sans-serif;
	font-size: 1.8rem;
	font-weight: 700;
	text-transform: uppercase;
	top: 3px;
	white-space: nowrap;
	overflow: hidden;
	width: 100% !important;
}

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: .5rem;
}

input[type=submit]
{
	width: auto;
	height: 100%;
	margin: 0 0 10px 0;
	padding: 0 18px 0 18px;
	background: #76bbc1;
	border: 0 solid #d6d6d6;
	color: #fff;
	font-size: 1.7rem;
	font-family: 'brandon-grotesque', sans-serif;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
	cursor: pointer;
}

a.clearAll
{
	float: right;
	padding-top: 5px;
	font-weight: 500;
}

a.viewAll
{
	display: inline-block;
	width: auto;
	margin: 0 0 10px 0;
	padding: 4px 14px 5px 14px;
	background: #969696;
	color: #fff;
}

input[type=submit]:hover,
input[type=submit]:focus,
a.viewAll:hover,
a.viewAll:focus
{
	background: #32455f;
	text-decoration: none;
}


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

#emailField
{
	display: none;
}

@media (min-width: 768px)
{
	form > div > div
	{
		width: calc(50% - 6px);
	}
}

@media (min-width: 1380px)
{
	form > div > div
	{
		position: relative;
		/*flex-basis: calc((100%/3) - 6px);*/
		width: calc((100%/3) - 6px);
		margin: 0 0 12px 0;
	}

	form > div > div.submit_wrapper
	{
		flex-basis: calc(((100%/3) *2) - 6px);
	}
}


@media (max-width: 767px)
{
	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: 1.1rem;
}

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

.autocomplete strong
{
	font-weight: bolder;
	color: #3874a8;
}

/* custom autocomplete suggestion: 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;
}

/* Payment --------------------------------------------------------> */

#payment main label
{
	display: block;
	position: static;

	padding: 0 0 2px 5px;
}

#payment form div:not(#emailField)
{
	display: block;
}

#payment #submit_wrapper
{
	height: 42px;
}

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

#footer
{
	position: relative;
	margin: 1em 0 0 0;
	padding: .8em 0;
	color: #666;
	font-size: 1.4rem;
}

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

#footer a
{
	color: inherit;
}

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

#footer ul li
{
	line-height: normal;
}

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

#footerSocial
{
	margin: 33px 0;
	background: linear-gradient(to bottom, #ffffff 0px,#ffffff 26px,#75bbc1 26px,#75bbc1 28px,#ffffff 27px,#ffffff 51px);
}

#footerSocial ul
{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 330px;
	max-width: 100%;
	padding: 0 37px;
	margin: 0 auto;
	background: #ffffff;
}

@media (max-width: 450px)
{
	#footerSocial
	{
		background: none;
	}

	#footerSocial ul
	{
		padding: 0;
	}
}

#footerSocial ul li a
{
	position: relative;
	display: block;
	width: 52px;
	height: 52px;
	text-indent: -9999em;
	background: #75bbc1;
	border-radius: 100%;
}

#footerSocial ul li a:hover
{
	background: #32455f;
}

#footerSocial ul li a img
{
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: auto;
}

#footerOffices
{
	position: relative;
	padding: 42px 0;
	color: #ffffff;
	background: #ef4e22;
	font-weight: 700;
	font-size: 1.4rem;
	text-transform: uppercase;
	letter-spacing: 1px;
}

#footerOffices ul.results_list
{
	/* width: 100%;
	max-width: 900px;
	column-count: 2;
	column-width: 150px;
	column-rule: 1px solid #c3350f;
	margin: 0 auto; */

}

#footerOffices ul.results_list li
{
	/*display: inline-block;*/
	width: 100%;
	text-align: center;
	box-sizing: border-box;
	padding: 0 10px;
	margin-bottom: 8px;
}

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

#footerCopy,
#footerDisclaimer
{
	position: relative;
	padding: 30px 10px 0;
	background: #303634;
}

#footerDisclaimer
{
	padding-bottom: 30px;
}

#footerCopy
{
	color: #868585;
	text-transform: uppercase;
}

#footerCopy > div
{
	margin: 0 0 20px;
	text-align: center;
}

#footerCopy div a,
#footerCopy div button
{
	display: inline-block;
	padding: 8px 15px;
	text-align: center;
	background: #32455f;
	color: #cecece;
	box-sizing: border-box;
}

#footerCopy div button 
{
	cursor: pointer;
	border: none;
	padding: 8px 15px;
	line-height: 1.6;
	height: 38px;
	font-family: 'freight-text-pro', sans-serif;
	font-size: 14px;
}

#footerCopy div a:hover,
#footerCopy div a:focus,
#footerCopy div button:hover,
#footerCopy div button:focus
{
	text-decoration: none;
	color: #32455f;
	background: #ffffff;
}

#footerCopy ul
{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	color: #ffffff;
}

#footerCopy ul li
{
	margin: 0 15px;
}

#footerCopy ul a
{
	color: inherit;
}

#footerDisclaimer p
{
	margin: 0 auto;
	width: 100%;
	max-width: 840px;
	text-align: center;
}

@media (min-width: 768px)
{
	#footerOffices ul.results_list
	{
		/*display: inline-block; */
		/* column-count: 3;
		column-width: 240px;
		column-rule: 1px solid #c3350f;
		margin: 0 auto; */
	}
	
	/* #footerOffices ul.results_list > li:nth-child(4)
	{
		break-after: column;
	} */

	#footerOffices
	{
		display: flex;
		justify-content: center;
	}

	#footerOffices > div:not(:last-child)
	{
		margin-right: max(30px, 
             min(120px, 30px + (120 - 30) * ((100vw - 767px) / (1500 - 767))
			));
		padding-right: max(30px, 
             min(120px, 30px + (120 - 30) * ((100vw - 767px) / (1500 - 767))
			));
		border-right: 1px solid #c3350f;
	}
}

@media (max-width: 1024px)
{
	#footerSocial
	{
		margin: 0 0 10px 0;
	}

}

@media (max-width: 767px)
{
	#footer
	{
		margin-top: 80px;
	}
}


/* 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;
	border-radius: 2px;
	box-sizing: border-box;
	color: #fff;
}

.popupPlayerWrapper.inlinePlayer
{
	position: relative;
	top: inherit;
	left: inherit;
	z-index: inherit;
	width: 100%;
	height: 425px;
	margin: 0 0 1.25em 0;

	/* make the player height the size of the iframe */
	height: 0;
  	padding-bottom: 56.25%; /* 16:9 */
}

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

/* override some of the standard closeButton styles */

.popupPlayerWrapper button.closeButton
{
	position: absolute;
	z-index: 25;
	top: -15px;
	right: -15px;
	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;
}

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

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

.popupPlayerWrapper button.closeButton:hover,
.popupPlayerWrapper button.closeButton:focus
{
	color: #262626 !important;
}

.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%;
	height: 100%;
	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;
	width: 100%;
	min-width: 100000px;
	height: calc(100% - 10px);
	overflow-x: hidden;
	margin: 0;
	padding: 0;
}

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

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

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

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

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

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

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

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

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

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

a#playlistPrev,
a#playlistNext
{
	display: none;
	position: absolute;
	z-index: 50;
	top: 0;
	width: 25px;
	height: calc(100% - 10px);
	margin: 0;
	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;
	font-size: 0.8rem;
}

.popupPlayerSidebar > div h2
{
	font-size: 0.9rem;
}

.inlineMultimediaPlaceholder /* client specific */
{
	max-width: 75%;
    margin: 0px auto;
}

.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
{
	margin: 0px 0px 10px 0;
}

.xrefMultimediaList ul.results_list li
{
	margin: 20px 0px 20px 0;
}

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

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

.videomore
{
	font-size: 0.8rem;
}

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

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

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

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

.itemMultimediaList ul.results_list li .photo,
.xrefMultimediaList 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 350px;
}

#mainContent .xrefMultimediaList ul li .abstract p
{
	margin: 0;
	padding: 0;
}

#mainContent .xrefMultimediaList ul li .videomore
{
	font-size: 0.8rem;
}

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

.title .videoMore
{
	margin-left: 6px;
	font-weight: 700;
}

.photo .triggerPopupPlayer,
.photo .triggerPopupPlayer img
{
	display: inline-block;
	position: relative;

	max-width: 100%;
}

/* 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);
	z-index: 5;
}

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

@media (max-width: 1024px)
{
	#mainContent .xrefMultimediaList ul li,
	.itemMultimediaList ul.results_list li
	{
		margin: 0 0 30px 0;
	}

	#mainContent .xrefMultimediaList ul li .photo,
	.itemMultimediaList ul.results_list li .photo
	{
		float: none:
		margin: 0 0 10px 0;
		width: 100%;
	}

	#mainContent .xrefMultimediaList ul li .photo img,
	.itemMultimediaList ul.results_list li .photo img
	{
		/*width: 100%;*/
	}

	#mainContent .xrefMultimediaList ul li .videomore,
	#mainContent .xrefMultimediaList ul li .title,
	#mainContent .xrefMultimediaList ul li .abstract,
	.itemMultimediaList ul.results_list li .videomore,
	.itemMultimediaList ul.results_list li .title,
	.itemMultimediaList ul.results_list li .abstract
	{
		margin-left: 0px;
	}
}

@media (max-width: 767px)
{
	.inlineMultimediaPlaceholder
	{
		position: relative;
		z-index: 10;
		max-width: none;
		margin: 0px;
	}
	
	.popupPlayerWrapper
	{
		border: 3px solid #cecece;
		border-radius: 2px;
	}
	
	.popupPlayerWrapper.inlinePlayer
	{
		display: flex;
		flex-direction: column;
		height: auto;
		overflow: visible;
		padding-bottom: 0;
	}
	
	.popupPlayerWrapper.inlinePlayer .mediaPlayer,
	.popupPlayerWrapper.inlinePlayer.playerWithSidebar .mediaPlayer,
	.popupPlayerWrapper.inlinePlayer.playerWithPlaylist .mediaPlayer,
	.popupPlayerWrapper.inlinePlayer.playerWithPlaylist.playerWithSidebar .mediaPlayer
	{
		position: relative;
		width: 100% !important;	
		height: 100% !important;
		padding-bottom: 56.25%; /* 16:9 */
	}
	
	.popupPlayerWrapper.inlinePlayer .popupPlayerPlaylist,
	.popupPlayerWrapper.inlinePlayer.playerWithSidebar .popupPlayerPlaylist,
	.popupPlayerWrapper.inlinePlayer.playerWithPlaylist .popupPlayerPlaylist,
	.popupPlayerWrapper.inlinePlayer.playerWithPlaylist.playerWithSidebar .popupPlayerPlaylist
	{
		position: relative;
		width: 100% !important;
		max-width: none;
		height: 100px;
		background: #f0f0f0;
	}
	
	a#playlistPrev
	{
		border-left: 2px solid #f0f0f0;
	}

	a#playlistNext
	{
		border-left: 2px solid #f0f0f0;
	}
	
	.popupPlayerWrapper.inlinePlayer .popupPlayerSidebar
	{
		position: relative;
		width: 100% !important;
		height: auto !important;
	}
	
	.popupPlayerSidebar > div 
	{
		padding: 0px 10px 0px 10px;
	}
	
	.popupPlayerSidebar > div:last-of-type 
	{
		padding: 0px 10px 5px 10px;
	}
	
	.popupPlayerSidebar > div h2
	{
		padding: 6px 0 2px 0;
	}
	
	#mainContent .xrefMultimediaList ul li .photo img,
	.itemMultimediaList ul.results_list li .photo img
	{
		width: 100%;
	}
}


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

span#emailPopupClose
{
	display: block;
	position: absolute;
	top: -15px;
	right: -15px;
	border-radius: 50%;
	width: 15px;
	height: 15px;
	background: #333;
	color: #f1f1f1;
	font-size: 1.4rem;
	line-height: 13px;
	text-align: center;
	text-indent: 1px;
	cursor: pointer;
}

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

@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: 0.8rem;
}

@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: 1rem;
	}

	table.SITE_MAP td:nth-child(n + 6)
	{
		padding-left: 2rem;
	}

	table.SITE_MAP .v_separator
	{
		display: none;
	}
}


/* Search Object Support */

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

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

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

#search .search_form form div
{
	height: auto;
}

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

#search .search_form br
{
	display: none;
}

#search .search_form label
{
	display: block;
	position: relative;
	top: 0;
	left: 0;
	margin: -26px 0 0 0;
	padding: 0 0 0 20px;
	line-height: 1.4;
	vertical-align: middle;
}

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

#search .search_form input#searchtext
{
	width: calc(100% - 120px);
	margin-right: 4px;
	box-sizing: border-box;
}

#search .search_form input[type=submit]
{
        width: 112px;
}


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

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

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

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

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

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

#search .search_result_date
{
	color: #888;
}

#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: 10px;
	margin: 0;
}

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

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

#search input[type=submit]
{
	min-height: 49px;
}

#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: #5ba8af;
}
#search #searchTabLinks a span
{
	color: #5ba8af;
}

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

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

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

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

@media (max-width: 919px)
{
	#search .searchBioWrapper div > div
	{
		flex-direction: column;
	}
}



/* 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,
.view_more a
{
	margin: 0 0 1.5em 0;
	padding: 0 !important;

	border: none;
	font: inherit;
	white-space: nowrap;
	cursor: pointer;
	font-family: 'brandon-grotesque', sans-serif;
	font-size: 1.7rem;
	font-weight: 500;
	text-transform: uppercase;

	color: #5ba8af;
	border-bottom: 2px solid #c4e6eb;

	background: linear-gradient(120deg, #c4e6eb 0%, #c4e6eb 100%);
	background-size: 100% 0em;
	background-position: 0 100%;
	background-repeat: no-repeat;

	transition: background-size .125s ease-in;
}


button.toggleExpand:hover,
.view_more a:hover
{
	background-size: 100% 2em;
}

/* Newsletter Object Support */

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


/* experience maps */

#mapInstructions
{
	padding: 15px;
	margin: 0 0 20px;
	font-size: 1.5rem;
	font-weight: 600;
	text-align: center;
	font-family: 'brandon-grotesque', sans-serif;
	text-transform: uppercase;
	background: #32465f;
	color: #ffffff;
}

#expMapPopup
{
	position: absolute;
	top: 10vh;
	left: 10vw;
	right: 10vw;
	background: white;

	border: 1px solid black;
	padding: 10px 20px;

	z-index: 10000;
}

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

#expMap svg
{
	display: block;
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}

#expMap path
{
	stroke-width: 1px;
	stroke: white;

	fill: #c3e6eb;
}

#expMap a path,
#expMap .stateImage path
{
	fill: #75bac2;
}

#expMap .stateImage path
{
	stroke-width: 0;
}

#expMap a:hover path,
#expMap a:focus path
{
	fill: #777;
}

#expMap .results_list > div
{
	display: none;

	position: absolute;
	top: 80px;
	left: calc(50% - 393px);

	width: 787px;
	height: 490px;

	box-sizing: border-box;

	border: 1px solid black;

	padding: 27px 34px 26px 323px;

	background: white;

	z-index: 100009;
}

#expMap .results_list > div > div
{
	padding-left: 19px;
}

#expMap .stateImage
{
	position: absolute;
	top: 0;
	left: 0;

	width: 323px;
	height: 100%;

	padding: 30px;

	box-sizing: border-box;

	background: #ddd;
}

#expMap .stateImage svg
{
	width: 100%;
	height: 100%;
}

#expMap .title
{
	border-bottom: 4px solid #ddd;
	padding: 0 194px 20px 0;

	font-size: 30px;
	font-weight: bold;
	line-height: normal;

	color: #1a2841;
}

#expMap a.return
{
	position: absolute;
	top: 39px;
	right: 34px;


	font-size: 18px;
	color: #1a2841;
}

#expMap .experience
{
	margin-top: 23px;

	max-height: 377px;
	overflow: auto;
}

#mapLabel
{
	display: none;

	position: absolute;
	background: white;
	padding: 4px 7px;

	border: 1px solid #007659;

	border-radius: 4px;
	-moz-border-radius: 4px;

	z-index: 100002;
}

#expUnderlay
{
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 100%;

	background: rgba( 137, 137, 137, .44 );

	z-index: 100000;
}

#mapClose
{
	position: absolute;
	top: 8px;
	right: 8px;

	background: #1a2841;
	width: 30px;
	height: 30px;

	border-radius: 4px;
	-moz-border-radius: 4px;

	font-size: 40px;
	text-transform: uppercase;
	text-align: center;
	font-weight: normal;

	color: white;
	text-decoration: none;
	cursor: pointer;
}

#mapClose:before,
#mapClose:after
{
	content: '';
	display: block;
	background: white;
	transform: rotate(45deg);

	position: absolute;
	top: calc(50% - 1px);
	right: 15%;
	width: 70%;
	height: 2px;
}

#mapClose:after
{
	transform: rotate(135deg);
}

#iconInternational
{
	background: url(../i/int-matters.png);
	width: 166px;
	height: 88px;

	position: absolute;
	right: 32px;
	bottom: 32px;
	z-index: 100002;

	cursor: pointer;
}

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


#expMapLink
{
	display: block;

	/*background: url(../i/exp-map-icon.png) no-repeat;
	background-size: 100%;
	padding-top: 160px;
	margin: 1.5em 0 1em 0;

	color: inherit;
	font-weight: bold;
	text-decoration: none;*/
}

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

@media (min-width: 920px)
{
	#mapInstructions
	{
		position: absolute;
		left: 0;
		top: 20px;
		width: 140px;
		padding-bottom: 35px;
		box-sizing: border-box;
	}

	#mapInstructions:after
	{
		content: '';
		position: absolute;
		right: 0;
		bottom: 0;
		z-index: 10;
		display: block;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0 0 37px 37px;
		border-color: transparent transparent #ffffff transparent;
	}

	#expMap
	{
		padding: 0 160px;
		box-sizing: border-box;
	}

}

@media (min-width: 1375px)
{
	/*#expMap svg
	{
		position: relative;
		left: calc(50% - 440px);
	}*/
}

@media (max-width: 767px)
{
	#expMap
	{
		display: none;
	}
}

body#newsroom-blogs #mainContent h2 a
{
	color: #32455f;
}

/*#expMapLink:after
{
	content: ' ›';
}
*/
/* Blogs ----------------------------------------------------------> */

/* IF-BLOG
.blog .search_form div
{
	float: none;
}

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

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

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

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


.blogPosts .socialshare
{
	padding: .5em 0;
	border-bottom: 1px solid currentColor;
	text-align: right;
}

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

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

.blogPosts .sp_pencil img
{
	display: inline !important;
}

/* in listing, make sure the read more shows inline with the intro */
/* IF-BLOG
.blogPosts > div > div:not(:only-child) .intro p:last-child
{
	display: inline;
}

.blogPosts > div > div
{
	clear: both;
	margin-bottom: 2.5em;
}

/* fields within each blog post */
/* IF-BLOG
.blogPosts > div > div > div + div
{
	margin-top: .5em;
}

.blogPosts .blogComments
{
	margin-bottom: 0;
}

.blogPosts .blogComments > div > div
{
	padding: 1rem 0;
	border: 1px solid currentColor;
	border-width: 1px 0 0 0;
}

.blogPosts .blogComments > div > div > div
{
	margin: 0 1rem;
}

.blogPosts .blogComments .comment
{
	margin-top: 1rem;
}

#addComment
{
	border-top: 1px solid currentColor;
}

.blog #historyLinks a
{
	float: left;
}

.blog #historyLinks a:last-child
{
	float: right;
}

.blogtag
{
	line-height: 1.5;
	margin: 1em 0;
}

.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 1.5rem 0;
}

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

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

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

.blogAuthors ul,
.blogAuthors li
{
	list-style: none;
	margin: 0 0 1rem 0;
}

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

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

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

.vlog .image
{
	position: relative;
}

.vlog .image a::before,
.vlog .image a::after
{
	content: '';
	display: block;
	position: absolute;
	top: 1rem;
	left: 1rem;
	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);
}

/**/

/* often copy/pasted from elsewhere */


/* Alignment */

figure
{
	margin: .5rem 0;
}

.alignleft,
.align-left,
img[style*='float: left']
{
	float: left;
	margin: .5em 1.5rem .5rem 0;
}

.alignright,
.align-right,
img[style*='float: right']
{
	float: right;
	margin: .5em 0 .5rem 1.5rem;
}

.aligncenter,
.align-center,
.alignnone
{
	clear: both;
	display: block;
	margin: .5rem 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: 1.2rem;
}

pre.receipt
{
	font-size: 14px;

	width: 24.3em;
	max-width: 100%;

	float: left;
	vertical-align: top;
	border: 1px solid #ccc;
	padding: .5em 1em;

	margin: 0 20px 20px 0 !important;
}

@media (max-width: 400px)
{
	pre.receipt
	{
		font-size: 11px;
	}
}


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

body#index #banner
{
	background: none;
	height: auto;
	margin-left: 0;
	margin-right: 0;
	overflow: visible;
}

body#index #banner:before
{
	display: none;
}

body#index #mainContent
{
	padding-top: 0;
	margin-top: 0;
}

/* Each slide in the homeanimation is different.  They are separated out below.  There is probably going to be a lot of redundancy between each slide, but I think it will work out for the best rather than trying to be clever and combine a lot of styles*/

#homeAnimation
{
	position: relative;
	left: -10px;
	width: calc(100% + 20px);
	font-family: 'brandon-grotesque', sans-serif;
}

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

#homeAnimation .results_list
{
	overflow: hidden;
}

#homeAnimation .results_list > div
{
	position: relative;
	float: left;
	width: 100%;
	margin: 0 -100% 0 0;
	transition: opacity 500ms ease;
	opacity: 0;
	height: 38vw;
}

#homeAnimation .results_list > div.current
{
	opacity: 1;
}

#homeAnimation .image
{
	position: relative;
}

#homeAnimation .titleGroup
{
	position: absolute;
	color: #ffffff;
	text-transform: uppercase;
	font-weight: 700;
	height: 100%;
	text-align: center;
	width: 70%;
	max-width: 1060px;
	box-sizing: border-box;
}

#homeAnimation .title
{
	max-width: 680px;
	margin: 0 auto;
	font-size: 10rem;
	line-height: 10rem;
}

#homeAnimation .subtitle
{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}

#homeAnimation .subtitle span
{
	width: 8%;
	max-width: 70px;
}

#homeAnimation .subtitle span img
{
	display: block;
	width: 100%;
	height: auto;
}

.animControls
{
	position: absolute;
	top: 20px;
	right: 41px;
	z-index: 10;
}

.animControls button
{
	display: block;
	width: 14px;
	height: 14px;
	margin-top: 10px;
	border-radius: 50%;
	text-indent: -9999em;
	border: none;
	padding: 0;
	background: rgba(255,255,255, .3);
	cursor: pointer;
}

.animControls button.current
{
	background: #ef4e22;
}

@keyframes swipeLeftFirst
{
	0%
	{
		width: 16%;
		/*opacity: 1;*/
	}

	10%
	{
		width: 13%;
	}

	60%
	{
		/*opacity: 1;*/
	}

	80%
	{
		/*opacity: 0;*/
	}

	100%
	{
		width: 130%;
		/*opacity: 0;*/
	}
}

@keyframes swipeLeftThird
{
	0%
	{
		width: 16%;
		/*opacity: 1;*/
	}

	10%
	{
		width: 13%;
	}

	60%
	{
		/*opacity: 1;*/
	}

	80%
	{
		/*opacity: 0;*/
	}

	100%
	{
		width: 130%;
		/*opacity: 0;*/
	}
}

/* ---------- Slide 1 ---------- */

#homeAnimation .results_list > div:nth-child(1) .image
{
	background: #3c4644;
}

#homeAnimation .results_list > div:not(.current) .animatingSlash
{
	display: none;
}


#homeAnimation .results_list > div:nth-child(1) .animatingSlash,
#homeAnimation .results_list > div:nth-child(3) .animatingSlash
{
	display: block;
	content: '';
	opacity: 1;
	position: absolute;
	top: 0;
	right: 0;
	width: 16%;
	height: 100%;
	/*background: #ef4e22;*/
	background: rgba(239,78,34,.6);
	transform-origin: 0 0;
	transform: skew(40deg);
	border-left: 14vw solid #ef4e22;

	/*background: linear-gradient(to right,
		rgba(255,255,255,0) 0%,
		rgba(255,255,255,0) 35%,
		rgba(239,78,34,1) 35%,
		rgba(239,78,34,1) 65%,
		rgba(239,78,34,.6) 65%,
		rgba(239,78,34,.6) 100%);*/

	z-index: 10;

}

#homeAnimation .results_list > div.current:nth-child(1) .animatingSlash,
#homeAnimation .results_list > div.previous:nth-child(1) .animatingSlash
{
	animation: swipeLeftFirst 1.75s;
	animation-fill-mode: forwards;
	animation-delay: 7s;
}


#homeAnimation .results_list > div.current:nth-child(3) .animatingSlash,
#homeAnimation .results_list > div.previous:nth-child(3) .animatingSlash
{
	animation: swipeLeftThird 1.75s;
	animation-fill-mode: forwards;
	animation-delay: 7s;
}

#homeAnimation .results_list > div:nth-child(1) .image img
{
	opacity: .5;
}

#homeAnimation .results_list > div:nth-child(1) .titleGroup
{
	position: absolute;
	top: 22%;
	left: 8vw;
	height: 100%;
	text-align: center;
	width: 70%;
	max-width: 1060px;
	box-sizing: border-box;
}



#homeAnimation .subtitle
{
	font-size: 2.5rem;
	line-height: 2.5rem;
	margin-top: 50px;
}

@media (min-width: 768px)
{
	#homeAnimation
	{
		height: calc(100vh - 100px);
		max-height: 45vw;
	}


	#homeAnimation .results_list,
	#homeAnimation .results_list > div,
	#homeAnimation .results_list > div .image
	{
		height: 100%;
	}
}

@media (min-width: 1280px)
{

	#homeAnimation
	{
		min-height: 600px;
	}

	#homeAnimation .results_list > div .image img
	{
		position: absolute;
		top: -100%;
		bottom: -100%;
		left: -100%;
		right: -100%;
		height: auto;
		width: auto;
		min-height: 100%;
		min-width: 100%;
		margin: auto;
	}




}

@media (max-width: 1400px)
{

	#homeAnimation	.title
	{
		max-width: 600px;
		font-size: 6vw;
		line-height: 6vw;
	}

	#homeAnimation .subtitle
	{
		font-size: 1.8vw;
		margin-top: 3vw;
	}

	#homeAnimation .subtitle span
	{
		max-width: 30px;
		margin: 0 10px;
	}

	#homeAnimation .results_list > div:nth-child(1) .titleGroup
	{
		width: 75%;
		top: 8vw;
		left: 0;
		padding-left: 20px;
	}
}

@media (min-width: 1900px)
{
	#homeAnimation
	{
		max-height: 861px;
	}
}

@media (max-width: 767px)
{

	body#index #banner
	{
		margin: 0;
	}

	#homeAnimation .contentGroup
	{
		margin-top: 20px;
	}

	#homeAnimation .results_list > div .content p:last-child
	{
		margin-bottom: 0;
	}

	#homeAnimation .results_list > div
	{
		height: auto;
	}

	#homeAnimation .results_list > div:nth-child(1) .titleGroup
	{
		margin-top: 20px;
		position: static;
	}

	#homeAnimation .results_list > div:nth-child(1) .title
	{
		position: absolute;
		top: 8vw;
		width: 65%;
		left: 10px;
		font-size: 3rem;
		line-height: 3rem;
		text-align: left;
	}

	#homeAnimation .results_list > div:nth-child(1) .titleGroup
	{
		padding: 0 10px;
	}

	#homeAnimation .results_list > div:nth-child(1) .titleGroup .subtitle
	{
		font-size: 2.6rem;
		line-height: 3.2rem;
	}

	#homeAnimation .results_list .subtitle
	{
		display: block;
		color: #545454;
		font-size: 1.8rem;
		line-height: 2rem;
		text-align: left;
	}

	#homeAnimation .results_list .subtitle span
	{
		display: block;
		margin-bottom: 10px;
	}

	#homeAnimation .results_list .subtitle span img
	{
		display: none;
	}

	#homeAnimation .animatingSlash
	{
		height: 47.4vw !important;
	}

	#homeAnimation .animControls
	{
		display: none;
	}

}


/* ---------- Slide 2 ---------- */




@keyframes swipeRight
{
	0%
	{
		width: 32%;
		/*opacity: 1;*/
	}

	10%
	{
		width: 29%;
	}

	60%
	{
		/*opacity: 1;*/
	}

	80%
	{
		/*opacity: 0;*/
	}

	100%
	{
		width: 152%;
		/*opacity: 0;*/
	}
}

@keyframes swipeRightSecond
{
	0%
	{
		width: 32%;
		/*opacity: 1;*/
	}

	10%
	{
		width: 29%;
	}

	60%
	{
		/*opacity: 1;*/
	}

	80%
	{
		/*opacity: 0;*/
	}

	100%
	{
		width: 152%;
		/*opacity: 0;*/
	}
}


#homeAnimation .results_list > div:nth-child(n+2) .image
{
	background: #000000;
}

#homeAnimation .results_list > div:nth-child(2) .animatingSlash,
#homeAnimation .results_list > div:nth-child(4) .animatingSlash
{
	display: block;
	content: '';
	position: absolute;
	top: 0;
	left: -32%;
	width: 32%;
	height: 100%;
	/*background: #ef4e22;*/
	background: rgba(239,78,34,.6);
	transform-origin: 0 right;
	transform: skew(40deg);
	border-right: 14vw solid #ef4e22;
	opacity: 1;

	z-index: 10;
}



#homeAnimation .results_list > div.previous:nth-child(4) .animatingSlash,
#homeAnimation .results_list > div.current:nth-child(4) .animatingSlash
{
	animation: swipeRight 1.4s;
	animation-fill-mode: forwards;
	animation-delay: 7s;
}

#homeAnimation .results_list > div.previous:nth-child(2) .animatingSlash,
#homeAnimation .results_list > div.current:nth-child(2) .animatingSlash
{
	animation: swipeRightSecond 1.4s;
	animation-fill-mode: forwards;
	animation-delay: 7s;
}

#homeAnimation .results_list > div:nth-child(2) .image img,
#homeAnimation .results_list > div:nth-child(4) .image img
{
	opacity: .8;
}

#homeAnimation .results_list > div:nth-child(2) .titleGroup,
#homeAnimation .results_list > div:nth-child(4) .titleGroup
{
	right: 0;
	top: 15vw;
}

#homeAnimation .results_list > div:nth-child(2) .contentGroup,
#homeAnimation .results_list > div:nth-child(4) .contentGroup
{
	position: absolute;
	top: -100%;
	width: 65vw;
	max-width: 1266px;
	height: 100%;
	padding: 5% 10% 0 0;
	color: #ffffff;

	background: url('../i/skewed-bg.png') no-repeat; /* data-uri */
	background-size: 100%;
	background-position: -2px 0;
	box-sizing: border-box;
	text-align: center;

}


#homeAnimation .results_list > div:nth-child(2) .teaser,
#homeAnimation .results_list > div:nth-child(3) .teaser,
#homeAnimation .results_list > div:nth-child(4) .teaser
{
	width: 50%;
	max-width: 550px;
	margin: 0 auto;
	font-size: 2.6rem;
	line-height: 2.6rem;
	color: #ef4e22;
	font-weight: 700;
	text-transform: uppercase;
}

#homeAnimation .results_list > div:nth-child(2) .content,
#homeAnimation .results_list > div:nth-child(3) .content,
#homeAnimation .results_list > div:nth-child(4) .content
{
	width: 50%;
	max-width: 550px;
	margin: 0 auto;
	font-size: 2.2rem;
	line-height: 3rem;
	font-family: 'freight-text-pro', sans-serif;
}

@media (max-width: 1400px)
{

	#homeAnimation .results_list > div:nth-child(2) .titleGroup,
	#homeAnimation .results_list > div:nth-child(4) .titleGroup
	{
		width: 55%;
	}

	#homeAnimation .results_list > div:nth-child(2) .contentGroup,
	#homeAnimation .results_list > div:nth-child(4) .contentGroup
	{
		width: 65vw;
		max-width: 1266px;
		padding: 2vw 7vw 0 0;

	}

	#homeAnimation .results_list > div:nth-child(2) .teaser,
	#homeAnimation .results_list > div:nth-child(3) .teaser,
	#homeAnimation .results_list > div:nth-child(4) .teaser
	{
		width: 70%;
		max-width: 550px;
		margin: 0 auto;
		font-size: 2vw;
		line-height: 2vw;
	}

	#homeAnimation .results_list > div:nth-child(2) .content,
	#homeAnimation .results_list > div:nth-child(3) .content,
	#homeAnimation .results_list > div:nth-child(4) .content
	{
		width: 70%;
		max-width: 550px;
		margin: 0 auto;
		font-size: 1.6vw;
		line-height: 2.2vw;
	}
}

/* ---------- Slide 3 ---------- */


/*#homeAnimation .results_list > div:nth-child(3) .animatingSlash
{
	display: block;
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	width: 50%;
	height: 100%;
	background: #ef4e22;
	transform-origin: 0 0;
	transform: skew(40deg);

	background: linear-gradient(to right,
		rgba(255,255,255,0) 0%,
		rgba(255,255,255,0) 35%,
		rgba(239,78,34,1) 35%,
		rgba(239,78,34,1) 65%,
		rgba(239,78,34,.6) 65%,
		rgba(239,78,34,.6) 100%);

	z-index: 10;
}*/

#homeAnimation .results_list > div:nth-child(3) .titleGroup
{
	left: 0vw;
	top: 19%;
	width: 50%;
}

#homeAnimation .results_list > div:nth-child(3) .contentGroup
{
	position: absolute;
	bottom: 0;
	right: 0;
	width: 65vw;
	max-width: 1266px;
	height: 100%;
	padding: 25% 0 0 15%;
	color: #ffffff;

	background: url('../i/skewed-bottom-bg.png') left bottom no-repeat; /* data-uri */
	background-size: 100%;
	/*background-position: -50px bottom;*/
	box-sizing: border-box;
	text-align: center;

}


@media (min-width: 920px)
{
	#homeAnimation .results_list > div:nth-child(3) .contentGroup
	{
		padding-top: 28%;
	}
}

@keyframes fadeout
{
	0%{	opacity: 1;	}
	90%{	opacity: 1;	}
	100%{opacity: 0;}
}

@keyframes slidedown
{
	0%{top: -100%;}
	100%{top: 0;}
}

@keyframes slideup
{
	0%{bottom: -100%;}
	100%{bottom: 0;}
}

/*#homeAnimation .results_list > div.current .contentGroup
{
	opacity: 1;
	animation: fadeout .5s;

	animation-fill-mode: forwards;
	animation-delay: 7s;
}*/



#homeAnimation .results_list > div.current:nth-child(2) .contentGroup,
#homeAnimation .results_list > div.current:nth-child(4) .contentGroup
{
	opacity: 1;
	animation: slidedown .75s, fadeout 7.75s;

	animation-fill-mode: forwards;
	animation-delay: 0s;
}

#homeAnimation .results_list > div.current:nth-child(3) .contentGroup
{
	opacity: 1;
	animation: slideup .75s, fadeout 7.75s;
	animation-fill-mode: forwards;
	animation-delay: 0s;
}

#homeAnimation .results_list > div:not(.current) .contentGroup
{
	opacity: 0;
}

#homeAnimation .results_list > div:not(.current):nth-child(3) .contentGroup
{
	bottom: -100%;
	opacity: 0;
}

@media (min-width: 768px) and (max-width: 1024px) and (orientation: portrait)
{
	#homeAnimation .results_list > div:nth-child(3) .contentGroup
	{
		padding-top: 30%;
	}
}

/*#homeAnimation .results_list > div:nth-child(3) .contentGroup
{
	position: absolute;
	bottom: 0;
	right: -20%;
	width: 65vw;
	max-width: 1266px;
	height: 100%;
	padding: 25% 0 0 0;
	color: #ffffff;

	transform: skew(-50deg);

	background-size: 100%;
	box-sizing: border-box;

}

#homeAnimation .results_list > div:nth-child(3) .contentGroup:before
{
	transform: skew(50deg);
	content: '';
	position: absolute;
	bottom: 0;
	left: -30%;
	display: block;
	width: 100%;
	height: 100%;
	background: url('../i/skewed-bottom-bg.png') left bottom no-repeat;
	background-size: 100%;
}

#homeAnimation .results_list > div:nth-child(3) .contentGroup > *
{
	transform: skew(50deg);
	text-align: center;
	max-width: 40%;
}*/





/* ---------- Slide 4 ---------- */


@media (max-width: 767px)
{



	#homeAnimation .results_list > div:nth-child(2) .contentGroup,
	#homeAnimation .results_list > div:nth-child(3) .contentGroup,
	#homeAnimation .results_list > div:nth-child(4) .contentGroup
	{
		width: 100%;
		max-width: 100%;
		position: static;
		padding: 10px;
		background: none;
		text-align: left;
	}

	#homeAnimation .results_list > div:nth-child(2) .teaser,
	#homeAnimation .results_list > div:nth-child(3) .teaser,
	#homeAnimation .results_list > div:nth-child(4) .teaser
	{
		width: 100%;
		max-width: 100%;
		font-size: 2.6rem;
		line-height: 2.6rem;
	}

	#homeAnimation .results_list > div:nth-child(2) .content,
	#homeAnimation .results_list > div:nth-child(3) .content,
	#homeAnimation .results_list > div:nth-child(4) .content
	{
		width: 100%;
		max-width: 100%;
		color: #545454;
		font-size: 2rem;
		line-height: 2.6rem;
	}
}


@media (min-width: 1900px)
{

	#homeAnimation .results_list > div .animatingSlash
	{
		border-width: 268px !important;
	}
}

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

ul#homeSpotSmall,
ul#homeSpotLarge
{
	margin-top: 2em;
}

ul#homeSpotSmall > li
{
	margin: 0 0 60px;
	box-sizing: border-box;

	border: 1px solid #dedede;
	border-top: none;
}

ul#homeSpotSmall > li img
{
	display: block;
	position: relative;
	left: -1px;
	width: calc(100% + 2px);
	height: auto;
}

ul#homeSpotSmall li a
{
	display: block;
	text-decoration: none;
}

ul#homeSpotSmall .homeSpotContent
{
	padding: 20px 10px 30px;
	border-top: none;
	height: 100%;
}

ul#homeSpotSmall li div.category
{
	margin: 0 0 10px;
	font-size: 1.4rem;
	font-weight: 700;
	color: #ef4e22;
}

ul#homeSpotSmall .title
{
	margin: 0 0 6px;
	line-height: 2.4rem;
	font-size: 1.8rem;
	font-weight: 700;
	color: #32465f;
}

ul#homeSpotSmall .content
{
	color: #4f4f4f;
	font-family: 'freight-text-pro', sans-serif;
	line-height: 2.3rem;
}

ul#homeSpotLarge li,
#newsroomSpotlight li
{
	margin-bottom: 32px;
}

ul#homeSpotLarge li,
ul#homeSpotLarge li > a:not(.sp_pencil),
#newsroomSpotlight li > a:not(.sp_pencil)
{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	width: 100%;
	text-decoration: none !important;
}

ul#homeSpotLarge li .image,
#newsroomSpotlight li .image
{
	position: relative;
	flex: 0 1 634px;
}

/*ul#homeSpotLarge li .image:after
{
	position: absolute;
	top: -15px;
	left: 15px;
	content: '';
	display: block;
	width: 68px;
	height: 80px;

	background: url('../i/icon-slantbar.png') no-repeat;
	background-size: 50%;
}

ul#homeSpotLarge li:nth-child(even) .image:after
{
	left: auto;
	right: -15px;
}*/

ul#homeSpotLarge .image img,
#newsroomSpotlight .image img
{
	display: block;
	width: 100%;
	height: auto;
}


ul#homeSpotLarge li .homeSpotContent,
#newsroomSpotlight li .info
{
	flex: 0 1 500px;
	box-sizing: border-box;
}

ul#homeSpotLarge li a .homeSpotContent .content p:last-child:after,
#newsroomSpotlight li .info .featuredabstract p:last-child:after
{
	content: 'More';
	text-transform: uppercase;
	font-size: 1.5rem;
	color: #32455f;
	font-weight: 600;
	margin-left: 4px;
	border-bottom: 2px solid #76bbc1;
}

#newsroomSpotlight li .info .featuredabstract
{
	color: #231f20;
	font-size: 2.4rem;
	line-height: 3.5rem;
	font-weight: 400;
}

#newsroomSpotlight li .info .featuredabstract p:last-child:after
{
	content: 'More +';
	color: #5ba8af;
	font-size: 1.7rem;
	font-family: 'brandon-grotesque', sans-serif;
}

ul#homeSpotLarge li:nth-child(2n) > a,
#newsroomSpotlight li:nth-child(2n) > a
{
	flex-direction: row-reverse;
}


ul#homeSpotLarge .title,
#newsroomSpotlight .title
{
	margin: 0 0 10px;
	font-size: 2.25rem;
	line-height: 2.75rem;
	font-weight: 700;
	color: #32455f;
	font-family: 'brandon-grotesque', sans-serif;
	text-transform: uppercase;
}

ul#homeSpotLarge .content,
#newsroomSpotlight .featuredabstract
{
	font-family: 'freight-text-pro', sans-serif;
	font-size: 2.15rem;
	line-height: 2.75rem;
	color: #545454;
	font-weight: 300;
}



@media (min-width: 768px)
{
	ul#homeSpotLarge li,
	ul#homeSpotLarge li > a:not(.sp_pencil),
	#newsroomSpotlight li > a:not(.sp_pencil)
	{
		flex-wrap: nowrap;
	}

	ul#homeSpotSmall
	{
		display: flex;
		flex-wrap: nowrap;
		margin-left: -10px;
		margin-right: -10px;
	}

	ul#homeSpotSmall li
	{
		flex: 1 1 445px;
		margin: 0 10px;
	}

	ul#homeSpotLarge li .homeSpotContent
	{

	}

	ul#homeSpotLarge li .homeSpotContent,
	#newsroomSpotlight .info
	{
		padding-left: 35px;
	}

	ul#homeSpotLarge li:nth-child(2n) .homeSpotContent,
	#newsroomSpotlight li:nth-child(2n) .info
	{
		text-align: right;
		padding-left: 0;
		padding-right: 35px;
	}
}

@media (min-width: 1024px)
{
	ul#homeSpotSmall .homeSpotContent
	{
		padding: 20px 27px 30px;
		box-sizing: border-box;
	}

	ul#homeSpotLarge li .homeSpotContent,
	#newsroomSpotlight li .info
	{
		padding-left: 65px;
	}

	ul#homeSpotLarge li:nth-child(2n) .homeSpotContent,
	#newsroomSpotlight li:nth-child(2n) .info
	{
		text-align: right;
		padding-left: 0;
		padding-right: 65px;
	}

	ul#homeSpotLarge li .image:after
	{
		position: absolute;
		top: auto;
		bottom: -20px;
		left: 20px;
		content: '';
		display: block;
		width: 68px;
		height: 80px;

		background-size: 100%;
	}

	ul#homeSpotLarge li:nth-child(even) .image:after
	{
		top: -20px;
		right: 20px;
	}
}

@media (min-width: 1350px)
{
	ul#homeSpotSmall .title
	{
		margin: 0 0 6px;
		line-height: 2.6rem;
		font-size: 2rem;
		font-weight: 700;
		color: #32465f;
	}

	ul#homeSpotSmall .content
	{
		color: #4f4f4f;
		font-family: 'freight-text-pro', sans-serif;
		line-height: 2.6rem;
	}


	ul#homeSpotLarge .title,
	#newsroomSpotlight .title
	{
		margin: 0 0 10px;
		font-size: 2.5rem;
		line-height: 3rem;
		font-weight: 700;
		color: #32455f;
		font-family: 'brandon-grotesque', sans-serif;
		text-transform: uppercase;
	}

	ul#homeSpotLarge .content,
	#newsroomSpotlight .featuredabstract
	{
		font-family: 'freight-text-pro', sans-serif;
		font-size: 2.4rem;
		line-height: 3rem;
		color: #545454;
		font-weight: 300;
	}
}

@media (max-width: 767px)
{
	ul#homeSpotLarge li .image,
	#newsroomSpotlight li .image
	{
		margin: 0 0 30px;
	}
}

/* Cookie popup */

#cookiePopup
{
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	height: auto;
	box-sizing: border-box;
	padding: 15px 40px 15px 20px;
	background: rgba(50,69,95, .95);
	color: #ffffff;
	z-index: 1000;
	font-size: 1.8rem;
	line-height: 2.4rem;
}

#cookieClose
{
	display: block;
	position: absolute;
	width: 20px;
	height: 20px;
	top: 15px;
	right: 15px;
	color: #000000;
	font-family: sans-serif;
	border: 1px solid #ffffff;
	border-radius: 100%;
	font-size: 14px;
	text-align: center;
	line-height: 20px;
	background: #cecece;
}

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


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

/* @media all and (max-width:1350px) /* use while programming */
@media print
{
	html
	{
	}

	*
	{
		background: none !important;
		color: #333;
	}

	.mobile,
	#siteSearch,
	.view_more,
	.sp_map,
	.printMap,
	.letterLinks,
	#pdfLink,
	#subNav,
	#homeAnimation,
	form,
	#navJump,
	#topLinks,
	#contentJump,
	#pageJump,
	footer,
	h2.sectionTitle,
	.toggleExpand,
	#bioAccessories,
	#tabLinks,
	#attorneyCarousel,
	#banner:not(.noBannerImage):after
	{
		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;
	}

	#pageTitle
	{
		color: #333333;
	}

	#banner.noBannerImage,
	#banner.noBannerImage::before
	{
		min-height: 0;
		background: none !important;
	}

	#mainContent:not(:only-child)
	{
	    float: left;
	    width: 65%;
	}

	#subContent
	{
	    float: right;
	    clear: right;
	    width: 30%;
	}

	ul#homeSpotSmall
	{
		display: block;
		margin: 0 0 50px;
	}

	.itemSpotlight ul,
	div.bioListTiles ul,
	div.bioListTiles ul.results_list,
	#officeList ul
	{
		margin: 0;
		display: block;
	}

	ul#homeSpotSmall li,
	.itemSpotlight ul li,
	div.bioListTiles ul li,
	#officeList ul li
	{
		float: left;
		width: calc((100%/3) - 20px);
		margin: 0 10px;
		page-break-inside: avoid;
	}

	#officeList ul li
	{
		min-height: 350px;
		margin-bottom: 20px;
	}

	div.bioListTiles ul li
	{
		min-height: 100px;
	}

	ul#homeSpotSmall li:last-child,
	.itemSpotlight ul li:last-child,
	div.bioListTiles ul li:last-child
	{
		margin-right: 0;
	}

	ul#homeSpotLarge li, ul#homeSpotLarge li > a:not(.sp_pencil),
	#newsroomSpotlight li > a:not(.sp_pencil)
	{
		display: block;
		overflow: hidden;
	}

	ul#homeSpotLarge li .image,
	#newsroomSpotlight li .image
	{
		float: left;
		width: 45%;
		margin-right: 20px;
	}

	ul#homeSpotLarge li:nth-child(2n) > a .image,
	#newsroomSpotlight li:nth-child(2n) > a .image
	{
		float: right;
		margin-right: 0;
		margin-left: 20px;
	}

	.contentSection > *,
	.extraItems,
	div.listColumnWrapper ul.results_list > li > ul.hierList
	{
		display: block !important
	}

	#bioInfo
	{
		display: block;
	}

	#bioInfo #bioPhoto
	{
		float: right;
		width: 40%;
	}

	#banner
	{
		display: block;
		margin: 0;
	}

	img#bannerImage
	{
		position: static;
	}

	#officeInfo
	{
		display: block;
		overflow: hidden;
	}

	#officePhoto
	{
		float: left;
	}

	#careerPages ul
	{
		display: block;
	}

	#careerPages ul li
	{
		float: left;
	}
}

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