.menu
{
	width: auto;
	height: 32px;
	position: relative;
	z-index: 1000;
}
/* remove all the bullets, borders and padding from the default list styling */
.menu ul
{
	padding: 0;
	margin: 0;
	list-style-type: none;
}
.menu ul ul
{
	width: 149px;
	z-index: 1000;
}
/* float the list to make it horizontal and a relative position so that you can control the dropdown menu position */
.menu li
{
	float: left;
	width: auto;
	position: relative;
	z-index: 1000;
}
/* style the links for the top level */
.menu a, .menu a:visited
{
	display: block;
	text-decoration: none;
	color: #638CBB;
	width: auto;
	height: 32px;
	padding-left: 10px;
	padding-right: 10px;
	line-height: 29px;
	z-index: 1000;
	-moz-transition: background-color 0.25s, color 0.25s;
	-webkit-transition: background-color 0.25s, color 0.25s;
	-o-transition: background-color 0.25s, color 0.25s;
	transition: background-color 0.25s, color 0.25s;
	-ms-transition: background-color 0.25s, color 0.25s;
}

/* style the second level background */
.menu ul ul a.drop, .menu ul ul a.drop:visited
{
	background: #638CBB url(http://www.cssplay.co.uk/graphics/drop.gif) bottom right no-repeat;
	color: #ffffff;
	-moz-transition: background-color 0.25s, color 0.25s;
	-webkit-transition: background-color 0.25s, color 0.25s;
	-o-transition: background-color 0.25s, color 0.25s;
	transition: background-color 0.25s, color 0.25s;
	-ms-transition: background-color 0.25s, color 0.25s;
}
/* style the second level hover */
.menu ul ul a.drop:hover
{
	background: #c9ba65 url(http://www.cssplay.co.uk/graphics/drop.gif) bottom right no-repeat;
	-moz-transition: background-color 0.25s, color 0.25s;
	-webkit-transition: background-color 0.25s, color 0.25s;
	-o-transition: background-color 0.25s, color 0.25s;
	transition: background-color 0.25s, color 0.25s;
	-ms-transition: background-color 0.25s, color 0.25s;
}
.menu ul ul :hover > a.drop
{
	background: #c9ba65 url(http://www.cssplay.co.uk/graphics/drop.gif) bottom right no-repeat;
	-moz-transition: background-color 0.25s, color 0.25s;
	-webkit-transition: background-color 0.25s, color 0.25s;
	-o-transition: background-color 0.25s, color 0.25s;
	transition: background-color 0.25s, color 0.25s;
	-ms-transition: background-color 0.25s, color 0.25s;
}
/* style the third level background */
.menu ul ul ul a, .menu ul ul ul a:visited
{
	background: #638CBB;
	color: #ffffff;
	-moz-transition: background-color 0.25s, color 0.25s;
	-webkit-transition: background-color 0.25s, color 0.25s;
	-o-transition: background-color 0.25s, color 0.25s;
	transition: background-color 0.25s, color 0.25s;
	-ms-transition: background-color 0.25s, color 0.25s;
}
/* style the third level hover */
.menu ul ul ul a:hover
{
	background: #b2ab9b;
	-moz-transition: background-color 0.25s, color 0.25s;
	-webkit-transition: background-color 0.25s, color 0.25s;
	-o-transition: background-color 0.25s, color 0.25s;
	transition: background-color 0.25s, color 0.25s;
	-ms-transition: background-color 0.25s, color 0.25s;
}


/* hide the sub levels and give them a positon absolute so that they take up no room */
.menu ul ul
{
	opacity: 0;
	visibility: hidden;
	position: absolute;
	z-index: 1000;
	height: 0;
	top: 32px;
	left: 0;
	width: 149px;
	-moz-transition: opacity 0.25s, visibility 0.25s;
	-webkit-transition: opacity 0.25s, visibility 0.25s;
	-o-transition: opacity 0.25s, visibility 0.25s;
	transition: opacity 0.25s, visibility 0.25s;
	-ms-transition: opacity 0.25s, visibility 0.25s;
}

/* position the third level flyout menu */
.menu ul ul ul
{
	left: 149px;
	top: -1px;
	width: 149px;
}

/* position the third level flyout menu for a left flyout */
.menu ul ul ul.left
{
	left: -149px;
}

/* style the table so that it takes no ppart in the layout - required for IE to work */
.menu table
{
	position: absolute;
	z-index: 1000;
	top: 0;
	left: 0;
	border-collapse: collapse;
}

/* style the second level links */
.menu ul ul a, .menu ul ul a:visited
{
	color: #638CBB;
	background-color: #ddd;
	height: auto;
	line-height: 1em;
	padding: 5px 10px;
	width: 128px;
	-moz-transition: background-color 0.25s, color 0.25s;
	-webkit-transition: background-color 0.25s, color 0.25s;
	-o-transition: background-color 0.25s, color 0.25s;
	transition: background-color 0.25s, color 0.25s;
	-ms-transition: background-color 0.25s, color 0.25s;
}

/* style the top level hover */
.menu a:hover, .menu ul ul a:hover, .menu li:hover
{
	color: #ffffff;
	background: #284E98;
	-moz-transition: background-color 0.25s, color 0.25s;
	-webkit-transition: background-color 0.25s, color 0.25s;
	-o-transition: background-color 0.25s, color 0.25s;
	transition: background-color 0.25s, color 0.25s;
	-ms-transition: background-color 0.25s, color 0.25s;
}
.menu :hover > a, .menu ul ul :hover > a
{
	color: #ffffff;
	background: #284E98;
	-moz-transition: background-color 0.25s, color 0.25s;
	-webkit-transition: background-color 0.25s, color 0.25s;
	-o-transition: background-color 0.25s, color 0.25s;
	transition: background-color 0.25s, color 0.25s;
	-ms-transition: background-color 0.25s, color 0.25s;
}

/* make the second level visible when hover on first level list OR link */
.menu ul li:hover ul, .menu ul a:hover ul, .menu ul a:hover ul a
{
	visibility: visible;
	opacity: 1;
	-moz-transition: opacity 0.25s, visibility 0.25s;
	-webkit-transition: opacity 0.25s, visibility 0.25s;
	-o-transition: opacity 0.25s, visibility 0.25s;
	transition: opacity 0.25s, visibility 0.25s;
	-ms-transition: opacity 0.25s, visibility 0.25s;
}
/* keep the third level hidden when you hover on first level list OR link */
.menu ul :hover ul ul
{
	visibility: hidden;
	opacity: 0;
	-moz-transition: opacity 0.25s, visibility 0.25s;
	-webkit-transition: opacity 0.25s, visibility 0.25s;
	-o-transition: opacity 0.25s, visibility 0.25s;
	transition: opacity 0.25s, visibility 0.25s;
	-ms-transition: opacity 0.25s, visibility 0.25s;
}
/* make the third level visible when you hover over second level list OR link */
.menu ul :hover ul :hover ul
{
	visibility: visible;
	opacity: 1;
	-moz-transition: opacity 0.25s, visibility 0.25s;
	-webkit-transition: opacity 0.25s, visibility 0.25s;
	-o-transition: opacity 0.25s, visibility 0.25s;
	transition: opacity 0.25s, visibility 0.25s;
	-ms-transition: opacity 0.25s, visibility 0.25s;
}

