/* Generale    ----------- */
nav {
    border: 0;
    margin: 0 auto;
}
nav ul {
    width: 100%;
    margin: 0;
    padding: 0;
    z-index: 10;
    position: relative;
    display: flex;
    display: -webkit-flex;
    flex-flow: row wrap;
    -webkit-flex-flow: row wrap;
    align-content: flex-start;
    justify-content: flex-end;
    -webkit-align-content: flex-start;
    -webkit-justify-content: flex-end;
}
nav li {
    margin: 0;
    padding: 0;
    list-style: none;
    white-space: nowrap;
    display: flex;
    display: -webkit-flex;
    flex-flow: row wrap;
    -webkit-flex-flow: row wrap;
    align-content: stretch;
    -webkit-align-content: stretch;
}
nav li a {
    margin: 0;
    padding: 0;
    text-decoration: none;
}
nav li#cerca {
    order: 9;
    -webkit-order: 9;
}
nav li#cerca input {
    font-family: 'Oxygen', sans-serif;
    text-transform: uppercase;
    font-size: .8rem !important;
    font-weight: 300 !important;
}

::-webkit-input-placeholder {
 color: #AAA;
}

:-moz-placeholder {
 color: #AAA;
}

::-moz-placeholder {
 color: #AAA;
}

:-ms-input-placeholder {
 color: #AAA;
}
nav li#a77, nav li#a554, nav li#a887, nav li#a1054, nav li#a1242, nav li.capsule {
	display: none;
}

/* Smartphones ----------- */
@media only screen and (max-width : 1200px) {
nav {
    width: 94%;
    position: absolute;
    right: -100%;
    top: 0rem;
    transition: all 300ms ease-in-out;
    padding: 8rem 3% 1rem 3%;
    min-height: -moz-calc(100% - 6rem); /* Firefox */
    min-height: -webkit-calc(100% - 6rem);/* WebKit */
    min-height: -o-calc(100% - 6rem); /* Opera */
    min-height: calc(100% - 6rem); /* Standard */
    transition: all ease-in-out 400ms;
    z-index: 3000;
}
nav.estratto {
    right: 0;
    background: url(../../../images/pubblico/logo.svg) no-repeat top left #FFF;
    background-size: 11.623rem 3rem;
    background-position: center 0.5rem;
}
nav ul {
    width: 100%;
    padding: 0 0 0 0;
    margin: 0 0;
    float: right;
}
nav ul ul {
    width: 100%;
    padding: 0 0 0 0;
    margin: 0 0;
    float: right;
}
nav ul li {
    width: 100%;
    text-align: center;
    margin: 0;
    padding: 0 0;
    overflow: hidden;
    text-overflow: ellipsis;
}
nav ul li a {
    text-align: left;
    line-height: 2.5rem;
    color: #000!important;
}
nav a.estrai_menu {
    background: url(../../../images/pubblico/open.svg) no-repeat center center;
    width: 4rem;
    height: 4rem;
    float: left;
    margin: 0;
    padding: 0;
    border: 0;
    position: absolute;
    top: 0rem;
    left: -4rem;
}
nav.estratto a.estrai_menu {
    background: url(../../../images/pubblico/close.svg) no-repeat center center;
    width: 4rem;
    height: 4rem;
    float: left;
    margin: 0;
    padding: 0;
    border: 0;
    position: absolute;
    top: 0rem;
    left: -moz-calc(100% - 4rem); /* Firefox */
    left: -webkit-calc(100% - 4rem);/* WebKit */
    left: -o-calc(100% - 4rem); /* Opera */
    left: calc(100% - 4rem); /* Standard */
}
nav ul ul {
    display: none;
}
nav ul li:hover > ul {
    display: block;
}
nav ul {
}
nav ul li {
    border-bottom: 0.0625rem solid #DDD;
}
nav ul li ul li {
    border-top: 0.0625rem dotted #DDD;
    border-bottom: none;
    background: url(../../../images/pubblico/smartLi.svg) no-repeat top left;
    padding: 0 0 0 1.25rem;
    background-size: 1.25rem 2.5rem;
}
nav ul li ul li:hover {
    background: url(../../../images/pubblico/smartLi.svg) no-repeat top left;
    background-size: 1.25rem 2.5rem;
}
nav li, nav li a {
    color: #FFF;
    background: none;
    text-transform: uppercase;
}
nav li.figli {
    background: url(../../../images/pubblico/figli.svg) no-repeat top right;
    background-size: 2.5rem 2.5rem;
}
nav li:hover {
    color: #FFF;
    background: none;
}
nav li.figli:hover {
    background: url(../../../images/pubblico/figli.svg) no-repeat top right;
    background-size: 2.5rem 2.5rem;
}
nav li:hover a {
    color: #FFF;
    background: none;
}
nav a.selected {
    color: #AAA;
    background: none;
}
nav li#carrello {
    margin: 0;
    padding: 0;
}
nav li#cerca {
    display: none;
}
nav ul.topmenu {
    max-height: 0;
    transition: max-height 0.10s ease-out;
    overflow: hidden;
}
nav ul li.aperto > ul.topmenu {
    max-height: 5000px;
    transition: max-height 1s ease-in;
}
nav li#carrello a span {
    background: url(../../../images/pubblico/cartNav.svg) no-repeat center left;
    background-size: contain;
    padding: 0 0rem 0 2.7rem;
    float: left;
    font-weight: 500;
    color: #4A5860;
}
    
nav ul.service {
    order: 1;
    -webkit-order: 1;
}
    

nav ul.service li.lingue ul li, nav ul.service li.lingue ul li a {
    line-height: 2.5rem;
    width: 100%!important;
    display: block!important;
}
    
}

/* ipad desktop ----------- */
@media only screen and (min-width : 1201px) {
nav {
    width: 100%;
    right: 0 !important;
    z-index: 3000;
    background: none;
    padding: 3.2014rem 0 0.7014rem 0;
    height: 2.5rem;
    margin-top: -6.4028rem;
}
#head.scroll nav {
    padding: 0.4384rem 0;
    height: 2.5rem;
    margin-top: -3.3768rem;
}
nav ul {
    margin: 0 auto;
    max-width: 94%;
    padding: 0;
    z-index: 10;
    position: relative;
    display: flex;
    display: -webkit-flex;
    flex-flow: row wrap;
    -webkit-flex-flow: row wrap;
    align-content: flex-end;
    justify-content: flex-end;
    -webkit-align-content: flex-end;
    -webkit-justify-content: flex-end;
}
nav ul {
    background-repeat: repeat-x;
    background-size: contain;
}
nav ul li {
    height: 2.5rem;
    position: relative;
    padding: 0 0;
    margin: 0 0 0 0;
}
nav ul li a {
    width: 100%;
    text-align: center;
    padding: 0 0.625rem;
    margin: 0;
    line-height: 2.5rem;
    font-size: 0.9rem!important;
    font-weight: 400!important;
    text-transform: uppercase;
}
nav ul li a:hover {
}
nav ul li a.selected {
}
a.estrai_menu {
    display: none;
}
	
	
	
	
	
/* Tendine ----------- */
nav ul ul {
	display: none;
}
nav ul li:hover ul {
	display: block;
	position: absolute;
	top:2.5rem;
	left: 0rem;
	background:none;
}

nav li a {
	display: block;
	text-decoration: none;
}
nav ul.topmenu li a:hover {
	background:none;
}
nav li.sub > a {
	font-weight: bold;
}
nav ul.topmenu {
}
nav ul.topmenu > li:hover > ul {
	top: 2.0125rem;
	left: 0rem;
}
nav ul ul {
}
nav ul li ul li {
	padding:0 0 0 0;
	width:100%;
	height: auto;
	width: 12rem;
}
nav ul li ul li:hover {
}


nav ul li ul li a {
	margin:0 0 0 0;
	padding:0.725rem 0.625rem;
	border-radius:0px;
	text-align:left;
	line-height:1.05rem;
	width: calc(100% - 1.25rem);
	white-space:nowrap!important;
	overflow: hidden;
	text-overflow: ellipsis;
	height: auto;
    font-size: 0.8rem!important;
}
/* Colori ----------- */
nav ul {
}
nav ul.service {
    position: absolute;
    top: 0;
    right: 3%;
    z-index:100!important;
}
nav li#cerca {
    height: 2.5rem;
    width: 5.5rem;
    padding: 0 1.8rem 0 0.625rem !important;
    background: url(../../../images/pubblico/cerca.svg) no-repeat center right;
    background-size: 1.4rem 1.4rem;
    margin-left: 1rem;
    margin-right: 0 !important;
}
nav li#cerca input {
    width:100%;
    height: 1.875rem;
    padding: 0 0 0 0rem;
    margin:0.25rem 0 0rem 0;
    border:none;
    font-family: 'Montserrat', sans-serif;
    font-size: .9rem;
    line-height: 1.875rem;
    font-weight: 500;
    color: #000;
    text-align: center;
}
nav li#entra {
    margin-left: 4rem;
    order: 9;
    -webkit-order: 9;
    padding-left: 1.8rem;
    background: url(../../../images/pubblico/utente.svg) no-repeat center left;
    background-size: 1.4rem 1.4rem;
}

nav li a {
    color: #000;
	background: url(../../../images/pubblico/bgLi.gif) no-repeat;
	background-position: -510px 37px;
	background-size: 500px 1px;
	transition: all ease-in-out 400ms;
}
nav li:hover a {
    color: #EA1D2C;
	background-position: 0px 37px;
}
nav ul ul li, nav ul ul li a, nav li:hover ul li a {
    color: #000!important;
    background: #F5F5F5!important;
    transition: all ease-in-out 100ms;
}
nav ul ul li:hover, nav ul ul li:hover a {
    color: #FFF!important;
    background: #D7252E!important;
}
nav ul li ul.topmenu li {
    animation-duration: 400ms;
    position: absolute;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
}
nav ul li ul.topmenu li:nth-child(1) {
    animation-name: prima;
    z-index: 20;
}
nav ul li ul.topmenu li:nth-child(2) {
    animation-name: seconda;
    z-index: 19;
}
nav ul li ul.topmenu li:nth-child(3) {
    animation-name: terza;
    z-index: 18;
}
nav ul li ul.topmenu li:nth-child(4) {
    animation-name: quarta;
    z-index: 17;
}
nav ul li ul.topmenu li:nth-child(5) {
    animation-name: quinta;
    z-index: 16;
}
nav ul li ul.topmenu li:nth-child(6) {
    animation-name: sesta;
    z-index: 15;
}
nav ul li ul.topmenu li:nth-child(7) {
    animation-name: settima;
    z-index: 14;
}
nav ul li ul.topmenu li:nth-child(8) {
    animation-name: ottava;
    z-index: 13;
}
nav ul li ul.topmenu li:nth-child(9) {
    animation-name: nona;
    z-index: 12;
}
nav ul li ul.topmenu li:nth-child(10) {
    animation-name: decima;
    z-index: 11;
}
nav ul li ul.topmenu li:nth-child(11) {
    animation-name: undicesima;
    z-index: 10;
}
nav ul li ul.topmenu li:nth-child(12) {
    animation-name: dodicesima;
    z-index: 9;
}
nav ul li ul.topmenu li:nth-child(13) {
    animation-name: tredicesima;
    z-index: 8;
}
nav ul li ul.topmenu li:nth-child(14) {
    animation-name: quattordicesima;
    z-index: 7;
}
nav ul li ul.topmenu li:nth-child(15) {
    animation-name: quindicesima;
    z-index: 6;
}
nav ul li ul.topmenu li:nth-child(16) {
    animation-name: sedicesima;
    z-index: 5;
}
nav ul li ul.topmenu li:nth-child(17) {
    animation-name: diciassettesima;
    z-index: 4;
}
nav ul li ul.topmenu li:nth-child(18) {
    animation-name: diciottesima;
    z-index: 3;
}
nav ul li ul.topmenu li:nth-child(19) {
    animation-name: diciannovesima;
    z-index: 2;
}
nav ul li ul.topmenu li:nth-child(20) {
    animation-name: ventesima;
    z-index: 1;
}
	
nav li#cerca input {
	color: #FFF;
	background: #222;
	border: 1px solid #444;
}	
	
@keyframes prima {from {top: 0px;} to {top: 0px;}}
@keyframes seconda {from {top: 0px;} to {top: 40px;}}
@keyframes terza {from {top: 0px;} to {top: 80px;}}
@keyframes quarta {from {top: 0px;} to {top: 120px;}}
@keyframes quinta {from {top: 0px;} to {top: 160px;}}
@keyframes sesta {from {top: 0px;} to {top: 200px;}}
@keyframes settima {from {top: 0px;} to {top: 240px;}}
@keyframes ottava {from {top: 0px;} to {top: 280px;}}
@keyframes nona {from {top: 0px;} to {top: 320px;}}
@keyframes decima {from {top: 0px;} to {top: 360px;}}
@keyframes undicesima {from {top: 0px;} to {top: 400px;}}
@keyframes dodicesima {from {top: 0px;} to {top: 440px;}}
@keyframes tredicesima {from {top: 0px;} to {top: 480px;}}
@keyframes quattordicesima {from {top: 0px;} to {top: 520px;}}
@keyframes quindicesima {from {top: 0px;} to {top: 560px;}}
@keyframes sedicesima {from {top: 0px;} to {top: 600px;}}
@keyframes diciassettesima {from {top: 0px;} to {top: 640px;}}
@keyframes diciottesima {from {top: 0px;} to {top: 680px;}}
@keyframes diciannovesima {from {top: 0px;} to {top: 720px;}}
@keyframes ventesima {from {top: 0px;} to {top: 760px;}}
}
nav li.lingue {
    padding-left: 1.8rem;
    margin-left: 1rem;
    background: url(../../../images/pubblico/global.svg) no-repeat;
    background-size: 1.4rem 1.4rem!important;
    background-position: 0.3125rem center!important;
    z-index: 10000;
}
nav li.lingue ul {
    max-width: 7rem;
}
nav li.lingue ul li, nav li.lingue ul li a {
    line-height: 2.5rem;
    height: 2.5rem;
    transition: none!important;
}
nav ul li ul li a.it {
    padding:0 0 0 2rem;
    background: url(../../../images/pubblico/it.png) no-repeat #EEEEEE !important;
    background-size: 1.4rem auto !important;
    background-position: 0.3125rem center!important;
}
nav ul li ul li a.it:hover {
    padding:0 0 0 2rem;
    background: url(../../../images/pubblico/it.png) no-repeat #EA1D2C !important;
    background-size: 1.4rem auto !important;
    background-position: 0.3125rem center!important;
}
nav ul li ul li a.en {
    padding:0 0 0 2rem;
    background: url(../../../images/pubblico/en.png) no-repeat #EEEEEE !important;
    background-size: 1.4rem auto !important;
    background-position: 0.3125rem center!important;
}
nav ul li ul li a.en:hover {
    padding:0 0 0 2rem;
    background: url(../../../images/pubblico/en.png) no-repeat #EA1D2C !important;
    background-size: 1.4rem auto !important;
    background-position: 0.3125rem center!important;
}
nav ul li ul li a.fr {
    padding:0 0 0 2rem;
    background: url(../../../images/pubblico/fr.png) no-repeat #EEEEEE !important;
    background-size: 1.4rem auto !important;
    background-position: 0.3125rem center!important;
}
nav ul li ul li a.fr:hover {
    padding:0 0 0 2rem;
    background: url(../../../images/pubblico/fr.png) no-repeat #EA1D2C !important;
    background-size: 1.4rem auto !important;
    background-position: 0.3125rem center!important;
}
nav ul li ul li a.es {
    padding:0 0 0 2rem;
    background: url(../../../images/pubblico/es.png) no-repeat #EEEEEE !important;
    background-size: 1.4rem auto !important;
    background-position: 0.3125rem center!important;
}
nav ul li ul li a.es:hover {
    padding:0 0 0 2rem;
    background: url(../../../images/pubblico/es.png) no-repeat #EA1D2C !important;
    background-size: 1.4rem auto !important;
    background-position: 0.3125rem center!important;
}

nav ul li ul li a.pt {
    padding:0 0 0 2rem;
    background: url(../../../images/pubblico/pt.png) no-repeat #EEEEEE !important;
    background-size: 1.4rem auto !important;
    background-position: 0.3125rem center!important;
}
nav ul li ul li a.pt:hover {
    padding:0 0 0 2rem;
    background: url(../../../images/pubblico/pt.png) no-repeat #EA1D2C !important;
    background-size: 1.4rem auto !important;
    background-position: 0.3125rem center!important;
}
nav ul li ul li a.sa {
    padding:0 0 0 2rem;
    background: url(../../../images/pubblico/sa.png) no-repeat #EEEEEE !important;
    background-size: 1.4rem auto !important;
    background-position: 0.3125rem center!important;
}
nav ul li ul li a.sa:hover {
    padding:0 0 0 2rem;
    background: url(../../../images/pubblico/sa.png) no-repeat #EA1D2C !important;
    background-size: 1.4rem auto !important;
    background-position: 0.3125rem center!important;
}
nav li.lingue ul li a {
    background: none!important;
}
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
nav ul li ul.topmenu li {
    position: relative!important;
}
}

