html
{
	font-size:15px;
}
body
{
	background-color: #6f6f6f;
	font-family: Arial, Helvetica, Sans-serif;
	font-weight:200;
	overflow-y:scroll;
}
	body strong
	{
		font-weight:bold;
	}
	#page 
	{
		width:100%;
		/*min-width: 1000px;*/
		position:relative;
		min-height:100%;
		overflow:hidden;
		color:#2e2e2e;
		background-color:white;
	}

	span.keywordMatch
	{
		background-color:yellow;
	}

	/***HEADER***/

		header
		{
			
		}

		#mainNav .item img
		{
			display:inline;
		}


	/***CONTENT***/

		#stripe 
		{
		    background-color: #86bc24;
		    min-height: 156px;
		}

			#stripe .stripeTitle
			{
				background-image:url('pictos/stripe-icon.png');
				padding-top:60px; padding-bottom:20px;
				background-position: left 20px;

				position:relative;
			}

		#wrapper
		{
			max-width:756px;
			margin:0 auto;
			padding-top:38px;
			/*padding-bottom:800px;*/
			padding-bottom:80px;
		}

	/***FOOTER***/

		footer
		{
			
		}

	/*****/

		.borderToPadding
		{
			padding-left:4px;
			padding-right:4px;
		}

		.mainTitle
		{
			font-size:30px;
			font-weight:bold;
			line-height:1.5em;
			color:#86bc24;
			text-transform:uppercase;

			margin-bottom:1em;
		}

		.intro
		{
			margin-bottom:48px;
		}
			.intro p
			{
				font-size:17px;
				line-height:26px; line-height:1.529411764705882em;
				color:#848484;

				margin-bottom:1em;
			}
				.intro p:last-child
				{
					margin-bottom:0;
				}

	/***LANGUAGE***/

		#language
		{
			font-size:17px;
			text-transform:uppercase;
			color:#848484;

			margin-bottom:58px;
		}

			#language .link
			{
				text-decoration:underline;
			}
				#language .link.active
				{
					font-weight:bold;
					color:#86bc24;
				}

			#language .separator
			{
				margin:0 12px;
			}

	/***Filters***/

		#filters
		{
			margin-bottom:20px;
		}

			.fixedFilters #filtersPosition
			{
				margin-bottom:219px;
				position:relative;
				height:1px;
			}

			.fixedFilters #filters
			{
				position:fixed;
				left:0;top:0;right:0;
				z-index:10;
			}
				.fixedFilters #filters .wrapper
				{
					max-width:756px;
					margin:0 auto;
				}

			#filters .form td
			{
				padding:0;
			}

				#filters .inputWrapper
				{
					border:1px solid black;
					background-color:white;
					position:relative;
				}
					#filters .keywords .inputWrapper
					{
						background-image:url('forms/search.jpg');
						padding-left:56px;
					}

					#filters .inputWrapper input
					{
						border:none;
						background:transparent;
						width:100%; height:40px;
						padding:0;
						position:relative;
						overflow:hidden;

						line-height:40px;
						font-size:14px;
					}

				#filters .customSelect
				{
					border:1px solid black;
					background-color:white;
					position:relative;
					cursor:pointer;
				}
					#filters .customSelect .input
					{
						line-height:40px;
						font-size:14px;
						position:relative;
						overflow:hidden;
						white-space:nowrap;
						text-overflow:ellipsis;
						padding-left:34px;
						padding-right:10px;
						height:40px;
						background:url('forms/select.png') no-repeat 10px center;
					}

					#filters .customSelect select
					{
						position:absolute;
						width:100%; height:100%;
						left:0; top:0;
						cursor:pointer;
					}

				#filters #loading
				{
					position:absolute;
					right:10px; top:12px;
					display:none;
				}
					#filters.loading #loading
					{
						display:block;
					}

	/***Table Header***/

		#filters .header
		{
		}
			#filters .header td
			{
				
				padding-top:0;
				padding-bottom:0;
				vertical-align:middle;

				font-size:13px;
				font-weight:bold;
				white-space:nowrap;
			}
				#filters .header .line1 td
				{
					height:56px;
					background-color:#d4d4d4;

					text-transform:uppercase;
				}

				#filters .header td.empty
				{
					background-color:transparent;
					border-bottom:none;
				}

				#filters .header .line2 td
				{
					height:35px;
				}

	/***Tooltips***/

		.tooltip
		{
			position:relative;
			cursor:pointer;
		}
			.tooltip .trigger
			{
				font-size:0.6em;
				color:red;
				vertical-align:top;
				position:relative;
				top:-3px;
			}
			.tooltip .tooltipContent
			{
				position:absolute;
				left:0; top:-20px;
				opacity:0;
				z-index:-1;
				display:block;
				width:300px;

				transition-property:opacity;
				transition-duration:0.4s;
			}
				.tooltip:hover .tooltipContent
				{
					opacity:1;
					display:block;
					z-index:1;

					background-color:black;
					display:inline-block;
					padding:0.5em 1em;

					color:white;
					font-size:0.8em;
					
					line-height:1.4em;
				}
				.tooltip .tooltipContent p
				{
					background-color:black;
					display:inline-block;
					padding:0.5em 1em;

					color:white;
					font-size:0.8em;
					
					line-height:1.4em;
				}

	/***TABLE***/

		#noResults 
		{
			padding-left:4px;
		}

		table
		{
			table-layout:fixed;
			border-collapse:collapse;
			width:100%;
		}

			table td
			{
				background-color:#ededed;
				border:4px solid white;
				padding:16px 12px;
				vertical-align:top;

				font-size:14px;
				line-height:1.45em;
			}

				table td.linked.first
				{
					border-bottom:none;
				}
				table td.linked.middle
				{
					border-top:none;
					border-bottom:none;
				}
				table td.linked.last
				{
					border-top:none;
				}

		/***Category***/

			#wrapper .category
			{
				margin-bottom:28px;
			}

				#wrapper .category > .title
				{
					color:#86bc24;
					font-size:20px;
					line-height:35px;
					font-weight:bold;
					text-transform:uppercase;

					padding-left:4px;
				}

				#wrapper .category .doesNotMatchKeywords
				{
					/*opacity:0.5;*/
				}

			/***Groups***/

				#wrapper .groupsWrapper
				{
					position:relative;
					/*margin-bottom:4px;*/
				}
					#wrapper .groupsWrapper>.title
					{
						background-color: #ededed;
					    /*border: 4px solid white;*/
					    margin:0 4px;
					    border-top:4px solid white;

					    font-size: 14px;
					    line-height: 1.45em;
					    padding: 16px 12px;
					    /*font-weight:bold;*/
					}
						#wrapper .groupsWrapper:first-child>.title
						{
							border-top:none;
						}

					#wrapper .groupTable tr:last-child td,
					#wrapper .groupTitle
					{
						border-bottom-width:0;
						
					}
						#wrapper .groupTitle .hyphens
						{
					       -webkit-hyphens: auto;
						   -moz-hyphens: auto;
						   -ms-hyphens: auto;
						   -o-hyphens: auto;
						   hyphens: auto;
						   position:relative;
						   word-wrap: break-word;
						}
						#wrapper .groupsWrapper .group:last-child
						{
						}

			/***Violations***/

				#wrapper .linkedViolations
				{
					padding:0;
					border:none;
				}
					#wrapper .linkedViolations table
					{
						border:none; height:100%;
					}
					#wrapper .linkedViolations td
					{
						border-top:none;
						border-bottom:none;
					}
					#wrapper .linkedViolations .infractionDetails
					{
						border-left:none;
					}
					/*#wrapper .linkedViolations td.infractionLv.lv2
					{
						border-right:none;
					}*/

		/***Cell sizes***/

			.groupTitle
			{
				width:142px;
				font-weight:bold;
			}

			.td.emptyGroup
			{
				font-weight:bold;
			}

			.infractionDetails
			{
			}

				/*.infractionDetails.linked
				{
					border-top:none;
					border-bottom:none;
				}*/
				table .infractionDetails.linked.first
				{
					padding-bottom:8px;
				}
				table .infractionDetails.linked.middle
				{
					padding-top:8px;
					padding-bottom:8px;
				}
				table .infractionDetails.linked.last
				{
					padding-top:8px;
				}

				.infractionDetails .padding
				{
					padding-left:40px;
					position:relative;
				}
					.infractionDetails .code
					{
						position:absolute;
						display:block;
						left:0;top:0;

						font-weight:bold;
					}

				/***Non corresponding levels hidden***/

					#wrapper .category.lvFiltered td.infractionDetails
					{
						background-color:#f8f8f8;
					}
						#wrapper .category.lvFiltered td.infractionDetails.linked,
						#wrapper .category.lvFiltered.lv0 tr.infractionLine.lv0 td.infractionDetails,
						#wrapper .category.lvFiltered.lv1 tr.infractionLine.lv1 td.infractionDetails,
						#wrapper .category.lvFiltered.lv2 tr.infractionLine.lv2 td.infractionDetails,
						#wrapper .category.lvFiltered.lv3 tr.infractionLine.lv3 td.infractionDetails
						{
							background-color:#ededed;
						}


					/*#wrapper .category.lvFiltered td.infractionLv
					{
						background-color:#f8f8f8;
					}
						#wrapper .category.lvFiltered td.infractionLv.lv0.linked,
						#wrapper .category.lvFiltered.lv0 tr.infractionLine.lv0 td.infractionLv.lv0
						{
							background-color:#fff4c9;
						}

						#wrapper .category.lvFiltered td.infractionLv.lv1.linked,
						#wrapper .category.lvFiltered.lv1 tr.infractionLine.lv1 td.infractionLv.lv1
						{
							background-color:#ff9191;
						}

						#wrapper .category.lvFiltered td.infractionLv.lv2.linked,
						#wrapper .category.lvFiltered.lv2 tr.infractionLine.lv2 td.infractionLv.lv2
						{
							background-color:#ff4545;
						}

						#wrapper .category.lvFiltered td.infractionLv.lv3.linked,
						#wrapper .category.lvFiltered.lv3 tr.infractionLine.lv3 td.infractionLv.lv3
						{
							background-color:#fff4c9;
						}*/

				td.infractionDetails .mobileWrapper .mobileLevel
				{
					display:none;
				}

			.infractionLv
			{
				width:76px;
			}
				.infractionLv.lv3
				{
					width:228px;
				}

				td.infractionLv
				{
					/*min-height:52px;*/
					padding:0;
					font-size:22px;
					font-weight:bold;
					text-align:center;
					vertical-align:middle;
				}
					td.infractionLv.linked.first
					{
						padding-top:8px;
					}
					td.infractionLv.linked.last
					{
						padding-bottom:8px;
					}

				td.infractionLv.lv0
				{
					background-color:#fff4c9;
				}
				td.infractionLv.lv1
				{
					background-color:#ffce99;
				}
				td.infractionLv.lv2
				{
					background-color:#ff9191;
				}
				td.infractionLv.lv3
				{
					text-transform:uppercase;
					font-size:16px;
					
					background-color:#ff4545;
				}

			.jointInfractionLv
			{
				width:228px;
			}

	/***HTML***/

		td.infractionDetails
		{
		}

			td.infractionDetails p,
			td.infractionDetails ul
			{
				margin-bottom:1em;
			}

			td.infractionDetails p:last-child,
			td.infractionDetails ul:last-child
			{
				margin-bottom:0;
			}

			td.infractionDetails ul
			{
				margin-left:16px;
				list-style:square;
			}
				td.infractionDetails ul ul
				{
					margin-left:16px;
					list-style:square;
				}
				td.infractionDetails ul p
				{
					margin-bottom:0.5em;
				}
			td.infractionDetails li
			{
				margin-bottom:0.5em;
			}
				td.infractionDetails li:last-child
				{
					margin-bottom:0;
				}


			td.infractionDetails sup
			{
				font-size:0.6em;
				position:relative;
				top:-5px;
			}