/* menu, font size e color, padding */
nav { background: transparent; float: right; font-size: 90%; height: 56px; text-decoration: none; position: absolute; z-index: 999; }
nav > ul > li > a {color: var(--menufont); padding: 22px 5px; font: 700 14px/17px "Roboto"; text-decoration: none}
nav > ul > li:hover > a, nav ul li.active a, nav > ul > li > a:hover {color: var(--menufonthov)}
nav > ul > li:hover {background: var(--menuhover); -webkit-transition: background .3s ease; -ms-transition: background .3s ease; transition: background .3s ease}

/* menu divisor */
nav > ul > li { float: left; border-left: 0px solid #FFF; border-right: 0px solid #FFF; }
nav > ul > li:last-child { border-right: 0px solid #FFF; }

/* submenu - inicialmente oculto */
nav ul ul { position: absolute; right: auto; left: 0; display: none; }
nav > ul > li:hover > ul { display: block; }
nav > ul > li:last-child:hover > ul {
    left: auto; /* Último submenu abre à esquerda */
    right: 0;
}

/* submenu +/- */
nav ul ul li.has-sub > a:after { background: #fff; top: 16px; right: 11px; width: 8px; height: 2px; display: block; position: absolute; content: ''; }
nav ul ul li.has-sub > a:before { background: #fff; top: 13px; right: 14px; width: 2px; height: 8px; display: block; position: absolute; content: ''; -webkit-transition: all .25s ease; -ms-transition: all .25s ease; transition: all .25s ease; }
nav ul ul > li.has-sub:hover > a:before { top: 17px; height: 0; }

/* submenu bg, height e linha horizontal */
nav li:hover > ul > li { height: 32px; }
nav ul ul li { background: var(--submenu); height: 0; border-top: 0px solid #5c8dcc; border-bottom: 0px solid #081526; }
nav ul ul li:hover { background: var(--submenuhov); }
nav ul ul li a { font: 700 13px/13px 'Tahoma'; color: var(--submenufont); padding: 10px 0 12px 10px; width: 160px; text-decoration: none; }
nav ul ul li:hover > a, nav ul ul li a:hover { color: var(--submenufont); }
nav ul ul li:last-child > a, nav ul ul li.last-item > a { border-bottom: 0; }

/* sub submenu */
nav ul ul ul { margin-left: 100%; top: 0; }
nav ul ul ul li.active a { border-left: 1px solid #333; }
nav ul ul li a i { color: var(--menufont); font-size: 15px; }

/* config */
nav, nav ul, nav ul li, nav ul li a, nav #head-mobile { border: 0; list-style: none; line-height: 1; display: block; position: relative; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
nav:after, nav > ul:after { content: "."; display: block; clear: both; visibility: hidden; line-height: 0; height: 0; }
nav .only-desktop { display: block; }
