

/* ================= DESKTOP ================= */
@media (min-width: 1280px) {

	.menu ul li { display: inline-block;  list-style: none; font-size: 14px; }
	.menu ul li:last-child { padding-right:0px; }
	.menu ul li a { font-size:14px; display:inline-block;  }       
	.menu ul .span3 ul li ul li a.bold { font-weight:bold; margin-left:20px; display:inline-block; }
	.menu ul li ul li, .menu ul li ul li a { font-size:15px; color:#000;}
	.menu ul li ul li a:hover { -webkit-transition: color 0.5s; transition: color 0.5s;}
	.menu ul li ul li a:hover { color:#000; opacity:1; }
	.menu ul li a.active { border-bottom:1px solid #000; padding: 30px 0 31px 0; }
	.menu ul li ul li a b { display:block;  font-size: 14px; }
	.menu .button { padding:5px!important; }
	.menu .grid-5-colums.bt1 { min-height:230px; }
	.menu ul li a.active:hover > .slider { width: 0; }
	.menu ul li a:hover > .slider { width: 100%; }
	.menu .menu-btn.title { padding:32px 0; }
	.menu ul li.menu-btn { margin-right:20px;}
	.menu ul { text-align: left;  }
	.menu ul .span3 ul li { width:100%; display:block; border:0px; }
	.menu ul .span3 ul li a { border-bottom:2px solid #F6F6F6; }
	.menu ul .span3 ul ul li a { border-color:#FFF; }
	.menu ul .span3 ul li a span { margin-top:15px; display: block; }
	.menu .section { width:100%; position:absolute; top:0px; right:0px; z-index:999; margin-top:20px; display:table; }
	.menu .nav-submenu { width:74.99%; }
	.menu .nav-submenu li { margin:0px; text-align:left;  }                                                              
	.menu .nav-submenu li a { font-size:14px; }
	.menu .nav-submenu li ul { margin-top:20px; }
	.menu .nav-submenu li ul li { width:100%; float:left; padding:0px; }
	.menu .nav-submenu li ul li a {font-weight:400; text-transform:none; }
	.menu .nav-submenu li ul ul { margin-top:0px; padding-left:10px;  }
	.menu .nav-submenu li ul li a.bold { font-weight:bold;  }
	.menu .nav-submenu li ul li.mb10 { margin-bottom:5px; }
	.menu a { border-bottom:1px solid transparent; }
	.menu-item div.hidden .sub2-section li a.bold { font-weight:500;}

  #hamburger, .overlay-backdrop {
    display: none; /* hamburger invisibile */
  }
  	.mobile-bottom-bar {
        display: none;
    }
}

@media (max-width: 1279px) {

	header { min-height:55px; background:#FFF; }
	header .ambigramma { margin-top:15px; }
	
	body.menu-open .topmenu {
		padding-bottom: 70px;
	}
	
	/* Contenitore hamburger */
	#hamburger {
	  position: absolute;
	  top: 20px;
	  left: 1	0px;
	  width: 24px;
	  height: 15px;
	  display: flex;
	  flex-direction: column;
	  justify-content: space-between;
	  cursor: pointer;
	  z-index: 10001;
	  transition: transform 0.3s ease;
	}
	
	.search-mobile {
	  position: absolute;
	  top: 15px;
	  left: 45px;
	  z-index: 10001;
	}
	
	/* Le linee */
	#hamburger span {
	  display: block;
	  height: 1px;
	  width: 100%;
	  background: #000;
	  transition: all 0.4s cubic-bezier(0.77, 0.2, 0.05, 1.0);
	  transform-origin: center;
	}
	
	/* Stato attivo: diventa X */
	#hamburger.active span:nth-child(1) {
	  transform: rotate(45deg) translateY(10px);
	}
	
	#hamburger.active span:nth-child(2) {
	  opacity: 0;
	  transform: scaleX(0);
	}
	
	#hamburger.active span:nth-child(3) {
	  transform: rotate(-45deg) translateY(-10px);
	}
	
	/* Piccola animazione al click */
	#hamburger:active {
	  transform: scale(0.95);
	}

	/*
    .topmenu {
    	padding:55px 0px 100px 0px;
		position: fixed;  
		top: 0;
		left: 0;
		width: 100vw;
		height: 100vh;
		display: none;     
		background: #fff;
		z-index: 9999;
		overflow-y: auto;  
    }
    */
	.topmenu {
        padding:55px 0px 100px 0px;
		position: fixed;
		top: 0;
		left: 0;
		width: 100vw;
		max-height: calc(100vh);
		min-height: calc(100vh);
		display: none;
		background: #fff;
		z-index: 9999;
		overflow-y: auto;
	}

    .topmenu.active {
       display: block;   /* mostra il menu */
       max-height: calc(100vh - 100px); /* altezza barra bottom */
       min-height: calc(100vh - 100px);
    }

    .overlay-backdrop {
        position: fixed;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
        background: rgba(0,0,0,0.3);
        display: none;
        z-index: 9999;
    }

    .overlay-backdrop.active {
        display: block;
    }

	.menu-item > a.menu-btn {  display: block; padding: 10px 0; font-weight: bold; cursor: pointer;  }
	.menu-item.open > .hidden { display: block; }
	.menu-item ul , .menu-item ul li, .menu-item .title2, .menu-item .title2 b, .menu-item .title2 b a { display:block; width:100%; float:left; }
	.menu-item .title2 b a { font-size:14px; }
	.grid-5-colums.bt1 { border:0px; padding-top:0px!important; }

	  .menu .menu-item.mr30 { margin:0px; }
	  .menu .menu-item .sub-section { position:relative; padding-left:20px;padding-right:20px; float:left; }
	  .menu .menu-item .sub-section .sub2-section { display:none; border-bottom: 3px solid rgb(238, 238, 238);padding-bottom: 10px;}
	  .menu .menu-item .grid-banner,.menu-item .close_menu { display:none; }
	  .menu .menu-btn.title { padding:10px 20px; font-size:16px; font-weight: bold; background-color: #F0EDEA; margin-bottom:2px; display:block; width:100%; float:left; }
	  
	  .menu ul li { margin: 0px; display: block; text-align: left; }
	  .menu .grid-5-colums { padding:0; grid-template-columns: repeat(1, 1fr); grid-column-gap: 0px; gap: 0px; }  
	  .menu .padding-main { padding:0px; }
	  .menu .menu-btn { display:block; }
	  .menu .grid-5-colums.bt1 { min-height:auto; } 
	  /* 
	  .menu .menu-item div ul { display:block!important; }
	  .menu .menu-item div ul ul { display:none!important; }
	  .menu .menu-item div ul li b.mb10 { margin-bottom:5px; }
	  */
	  .menu .grid-5-colums.bt1.padding-top20 { padding-top:0px; }
	  .menu .grid-5-colums.bt1.padding-top20 ul li b { font-size:16px; font-weight:bold; margin-bottom:0px; }
	  .menu .grid-5-colums.bt1.padding-top20 ul ul li b { font-size:14px; font-weight:bold; }
  
  .toggle-sub {
	  float: right;
	  font-size: 22px;
	  line-height: 1;
	  color: #CCC;
	  cursor: pointer;
	  user-select: none;
	  font-weight:300;
	}

	.menu-item div.hidden ul {
	  display: none;
	  margin: 5px 0;
	  float:left; background-color:#FFF;
	}

	.menu-item div.hidden ul li {
	  padding: 1px 0;
	}
	
	.menu-item div.hidden .sub2-section li a {
		display: block;
		padding:5px 0;
	}
	
	

}