/* BEGIN AREA-LISTING CSS ---------------------------------------> */

#subNav
{
	display: none;
}

#practiceList
{
	position: relative;
}

#practiceSearch
{
	position: relative;
	padding: 52px;
	padding: max(30px,
	             min(52px, 30px + (52 - 30) * ((100vw - 767px) / (1920 - 767))
	));

	padding-left: 0;
	padding-right: 0;
	margin-bottom: 40px;
}

#practiceSearch > div:not(#inlineSearchPopup)
{
	position: relative;
}

#practiceSearch #inlineSearchPopup
{
	top: calc(100% - clamp(30px, 48/1600 * 100vw, 48px));
}

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

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

#practiceSearch form  > div
{
	display: block;
}

#practiceSearch form button
{
	position: absolute;
	right: 8px;
	top: 9px;
	color: #333333;
}

#practiceSearch form button:hover,
#practiceSearch form button:focus
{
	color: #cecece;
}

#practiceSearch input[type=text]
{
	padding-right: 130px;
}

#areaOptions
{
	font-family: 'HelveticaNeue_cn';
	font-weight: 500;
	color: #808080;
	font-size: 17px;
	letter-spacing: 1px;
	text-transform: uppercase;
}

#areaOptions a:not(:focus):not(:hover)
{
	color: inherit;
}

#areaOptions button
{
	padding: 0;
	background: none;
	border: none;
	color: inherit;
	letter-spacing: inherit;
	text-transform: inherit;
	font-size: inherit;
	cursor: pointer;
}

#areaOptions button::before
{
	content: '|';
	margin: 0 12px;
	color: #F0EFED;
}

#listColumnWrapper
{
	margin-bottom: 60px;
}

div.listColumn ul,
div.listColumn ul li
{
	position: relative;
	list-style: none;
	list-style-image: none;
	margin: 0;
	padding: 0;
	/* font-weight: bold; */
	line-height: normal;
	width: 100%;
}

div.listColumn > ul > li
{
	background-color: #f0efed;
	padding: 20px 50px 17px 32px;
	padding-left: 32px;
	padding-left: max(20px,
	             min(32px, 20px + (32 - 20) * ((100vw - 767px) / (1920 - 767))
	));
	margin-bottom: 16px;
	box-sizing: border-box;
}

div.listColumn ul li a
{
	display: block;
	padding-left: 0;
	color: #000;
	transition: padding-left 250ms ease;
}

div.listColumn > ul > li > a
{
	font-weight: 400;
}

div.listColumn ul li a:hover,
div.listColumn ul li a:focus
{
	padding-left: 5px;
	color: #808080;
}

div.listColumn ul.hierList li
{
	margin: 20px 0 10px 0;
}

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

div.listColumn.areaToggle > ul > li > ul.hierList
{
	display: none;
}

div.listColumn.areaToggle .areaExpand
{
	position: absolute;
	right: 12px;
	top: 12px;
	display: block;
	width: 35px;
	height: 35px;
	padding: 0px;
	background: none;
	border: 0px;
	cursor: pointer;
	font-family: HelveticaNeue_cn;
	text-align: center;
	vertical-align: top;
	color: #E31B23;
	font-size: 24px;
	z-index: 10;
}

div.listColumn.areaToggle .areaExpand span
{
	position: relative;
	display: block;
	font-size: 24px;
	line-height: 1;
}

div.listColumn.areaToggle .areaExpand:not(.expanded) span:last-child
{
	display: none;
}

div.listColumn.areaToggle .areaExpand.expanded span:first-child
{
	display: none;
}

@media (min-width: 600px)
{
	#areaOptions
	{
		position: absolute;
		right: 0;
		top: 30px;
		top: max(20px,
		             min(30px, 20px + (30 - 20) * ((100vw - 600px) / (1920 - 600))
		));
	}
}

@media (min-width: 768px)
{
	#practiceSearch form button
	{
		position: static;
		color: inherit;
	}

	#practiceSearch form > div
	{
		display: flex;
		flex-wrap: nowrap;
	}

	#practiceSearch button
	{
		width: 140px;
		margin-left: 35px;
	}

	#practiceSearch input[type=text]
	{
		padding-right: 0;
	}

	#practiceSearch #inlineSearchPopup
	{
		width: calc(100% - 170px);
	}

	#listColumnWrapper
	{
		display: flex;
		gap: 15px;
	}

	#listColumnWrapper > div
	{
		width: calc(100%/3);
	}
}

@media (min-width: 920px)
{

	#listColumnWrapper:last-of-type
	{
		margin-bottom: 100px;
		margin-bottom: max(70px,
		             min(100px, 70px + (100 - 70) * ((100vw - 767px) / (1920 - 767))
		));
	}
}


/* END AREA-LISTING CSS -----------------------------------------> */