@charset "utf-8";
/* CSS Document */

.menu > ul:after {
  content: "";
  display: table;
  clear: both;
}

body {
  -webkit-animation: bugfix infinite 1s;
}

@-webkit-keyframes bugfix {
  from {
    padding: 0;
  }

  to {
    padding: 0;
  }
}


.menu * {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.menu-link {display:none;}

.menu { 
	float: left; /*max-width: 60em;*/
	-webkit-transition: all 0.3s ease-out;  
	-moz-transition: all 0.3s ease-out;
	-ms-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out; 
}
.menu ul { 
	padding: 0px;
	margin: 0px;
	list-style: none;
	position: relative;
	display: inline-table;
	background-color: #097189;
	background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(255, 255, 255, 0.2)), color-stop(100%, rgba(255, 255, 255, 0)));
  	background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0));
  	background-image: -moz-linear-gradient(rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0));
  	background-image: -o-linear-gradient(rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0));
  	background-image: linear-gradient(rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0));
  	-webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2) inset;
  	-moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2) inset;
  	box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2) inset;
}

.menu > ul > li {
  	 border-right: 1px solid #097189;
  	-webkit-box-shadow: 1px 0 0 #3C899D;
  	-moz-box-shadow: 1px 0 0 #3C899D;
 	 box-shadow: 1px 0 0 #3C899D;
}

.menu > ul > li:last-child {
  border-right: none;
  -webkit-box-shadow: 0px 0 0 #3C899D;
  -moz-box-shadow: 0px 0 0 #3C899D;
  box-shadow: 0px 0 0 #3C899D;
}

.menu > li > ul.sub-menu {
	min-width: 10em;
	padding: 4px 0;
	background-color: #097189;
	border: 1px solid #CCC;
	border: 1px solid rgba(0, 0, 0, 0.2);
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	border-radius:0px;
	-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
	-moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
	box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
	-webkit-background-clip: padding-box;
	-moz-background-clip: padding;
	background-clip: padding-box;
}
.menu ul:after {
	content: ""; clear: both; display: block;
}

.menu li:hover > a, .menu li.active, .menu li > a:focus {
  color: #fff;
  background-color: #3C899D;
  display:inline-block;
 
}

.menu > ul > li { 
	display: inline-block;
}

.menu ul li a { 
	display: block;
	text-decoration: none;
	color: #ffffff;
	font-size: 1em;
}

.menu ul li > a { 
	height:58px;
	padding: 20px 12px;	
}


/* segundo nível */

.menu ul ul { 
	display: none; 
	position: absolute; 
	top:100%;
	min-width: 160px;
	background-color: #097189;
	/*border: 1px solid #CCC;
	border: 1px solid rgba(0, 0, 0, 0.2);*/
	-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
	-moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
	box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
}
.menu ul li:hover > ul {
	display: block;
}

.menu ul ul > li {
	position: relative;
}

.menu ul ul > li a {
	padding: 1em;
	height: auto;
	background-color: #097189;
	border-bottom: 1px solid #3C899D;
	-webkit-transition: background-color 0.2s ease-out;  
	-moz-transition: background-color 0.2s ease-out;
	-ms-transition: background-color 0.2s ease-out;
	-o-transition: background-color 0.2s ease-out;
	transition: background-color 0.2s ease-out; 
        width:100%;
}

.menu ul ul > li a:hover, .menu ul ul > li.active {
	 background-color: #3C899D;
	color: #fff;
	display:block;
}

/* terceiro nível */

.menu ul ul ul {
	position: absolute; 
	left: 100%; 
	top:0;
}


@media screen and (max-width: 61.9375em ) {
    
	.menu-link:before {
		 content: "\2261";
   		 font-size: 2em;
		 font-weight:700;

		}
	
    a.menu-link {
		display: block;
		color: #fff;
		text-decoration: none;
		padding:.5em 1em;
		background-color: #097189;
  		background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(255, 255, 255, 0.2)), color-stop(100%, rgba(255, 255, 255, 0)));
 		background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0));
  		background-image: -moz-linear-gradient(rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0));
  		background-image: -o-linear-gradient(rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0));
  		background-image: linear-gradient(rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0));
  		-webkit-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2) inset;
  		-moz-box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2) inset;
  		box-shadow: 0 1px 0 rgba(255, 255, 255, 0.2) inset;
	}
	
	
	.menu {
		clear: both;
		min-width: inherit;
		float: none;	
	}
	
	.menu, .menu > ul ul {
		overflow: hidden;
		max-height: 0;
		background-color: #097189;
	}
	
	.menu > li > ul.sub-menu {
	padding: 0px;
	border: none;
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	border-radius: 0px;
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	-webkit-background-clip: padding-box;
	-moz-background-clip: padding;
	background-clip: padding-box;
	
	}
	
	.menu li:hover > a, .menu li.active   {
  		color: #fff;
 		background-color: #3C899D;
  		display:block;
	}
	
	.menu.active, .menu > ul ul.active {
		max-height: 123em; /*area vertical que abrange o menu aberto com todos os itens e subitens*/
	}
	
	.menu ul {
		display: inline;
	}

	.menu > ul {
		border-top:1px solid #3C899D;
	}
	
	.menu li, .menu > ul > li {
		display: block;
	}
	
	.menu li a {
		color: #fff;
		display: block;
		padding: 0.8em;
		border-bottom: 1px solid #3C899D;
		position: relative;
	}
	
	.menu li.has-submenu > a:after {
		content: '+';
		position: absolute;
		top: 0;
		right: 0;
		display: block;
		font-size: 1.5em;
		padding: 0.55em 0.5em;
		font-weight:bold;
	}
	
	.menu li.has-submenu > a.active:after {
		content: "-";
               
	}
        
         .menu li.has-submenu > a:focus, .menu li.has-submenu > a.active:focus {
		width:100%;
        } 
        
       .menu ul ul > li a, .menu ul ul > li a:hover {
		height:auto;
		padding: 1em;
                display:block;
                background-color:#52a3b8;
	}
	
	 .menu ul ul > li a:hover {
		background-color: #3C899D;
                display: block;
	}

/* terceiro nível */
	.menu ul ul, .menu ul ul ul {
		display: inherit;
		position: relative;
		left: auto; top:auto;
		box-shadow: none; 
		border:none;
	}	
}