/** ******* */
/* ! Header */
/** ******* */
/** *************************************************************************************************************** */

.header-container{
  background-color:var(--color-bg-header);
  /*box-shadow: 0 2px 10px rgba(0, 0, 0, 1);*/
  box-shadow: 0px 1px 10px 2px #808080;
  z-index:80;
}
.header{
    background-color: var(--color-bg-header);
    display:flex;
    justify-content: space-between;
    /*max-width: 1250px;*/
    margin:0 auto;
    height:80px;
}
.header__logo{  
  margin:10px;
  width:40%;
  display: flex;  
  align-items: center;
  justify-content: flex-start;
  text-decoration: none;
  color:var(--color-link);
}
.header__logo a{text-decoration:none;}
.header__logo h2{
  font-weight:700;
  font-size:2.4rem;
  letter-spacing: 1px;
  margin:0;
}

.header__menu{
  margin:10px;
  width: 100%;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(---color-bg-header);  
}
.header__menu li{display: inline-block;margin:0px 10px;}

.header__menu_item a {
  color:var(--color-link-menu);
  position: relative;
  display: block;
  text-decoration: none;
  padding: 10px 15px;
  text-transform: capitalize;
  letter-spacing: 1px;    
  overflow: hidden;
  z-index: 1;
}


.header__menu_item a::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 0;
  /*border-radius:20px;*/
  border-radius:50px 0 50px 0;
  background-color: var(--color-link-menu-hover);
  z-index: -1;
  transition: width 0.4s ease;
}

.header__menu_item a:hover::before {
  width: 100%;
}

.header__menu_item a:hover {
  color:var(--color-link-menu);
}
.nav-link.active {
  background-color: #0077cc;
  color: white;
  border-radius: 50px 0 50px 0;
}

/* Effetto hover */
.call_to_action_header:hover::before {
  left: 0; /* L'ombra si espande da sinistra verso destra */
}

/* Cambia il colore del testo */
.call_to_action_header:hover {
  color:#fff; /* Testo bianco sopra il rosso */  
}
/** */
.header__icons{
  display: flex;
  flex-flow: row;
  justify-content: flex-end;
  align-items: center;
  width:30%;    
  margin:10px;
  padding:0;
}
.header__icons a{
  font-size:1.5rem;
  margin:0 10px;
}

.header__hamburger{display: none;}

@media (max-width: 998px){
  .header-container{
    background-color:var(--color-bg);
    box-shadow: 0 2px 10px rgba(0, 0, 0, 1);
    z-index:80;
  }
  .header{
      display:flex;
      flex-direction: column;
      justify-content:center;
      align-items: center;
      max-width: 1250px;
      margin:0 auto;
      height:140px;
  }
  .header__logo{
    display: flex;
    flex-flow: row;
    justify-content: center;
    margin-top:20px;
    margin-bottom:10px;
  }
  
  .header__logo a{text-decoration:none;}
  .header__logo h2{font-weight:700;font-size:2.6rem;letter-spacing: 1px;margin:0;}
  
  .header__menu{
    margin:10px;
    padding:0;
  }
  .header__menu li{display: inline-block; }
  .header__menu li a{
    color:var(--color-link-menu);
    display: block;
    padding:10px 15px;
    letter-spacing: 1px;
    font-size:0.9rem;
    text-transform: capitalize;
    text-decoration: none;
  }
  
  .header__icons{
    display: none;
  }
  
  .header__hamburger{display: none;} 
}


@media(max-width:760px){
    body{padding-top:80px;}

    .header{
      background-color: var(--color-bg);
      flex-flow: row;
      display:flex;
      justify-content: space-between;
      align-items: center;
      max-width: 1250px;
      margin:0 auto;
      height:80px;
    }

    .header-container{
      position: fixed;
      top:0;
      left:0; 
      width:100%; 
      z-index:99;
    }
    /** */
    .header{align-items: center;}
    /** */

    .header__logo{  
      margin:10px;
      width:60%;
      display: flex;  
      align-items: center;
      justify-content: flex-start;
      text-decoration: none;
      color:var(--color-link);
    }


    .header__menu{
      background-color: var(--color-bg);
      position: absolute;
      top:80px; left:-100%;
      margin:0;
      display: block;
      z-index:99;
      padding:10px;
      height:100vh;
      transition: all 1s cubic-bezier(.215, .61, .355, 1);
    }
    .menu-open .header__menu{
      left:0;
      padding:20px;
    }

    .header__menu li{display: block;}
    .header__menu li a{
      text-align: left;
      padding:5%; 
      border-top:#c4dff6 solid 2px;
    }
    .header__menu li a:nth-last-child(){
      border-bottom:#c4dff6 solid 2px;
    }
    .header__icons{display: none;}
    .header__hamburger{
      margin:10px;
      display: block;
      /*width:30%; */
      height:40px;
    }                       
    .header__hamburger span{
      height:2px; 
      width:32px; 
      margin-top:10px;
      background:#1263b4;
      display:block;
      transition: all 1s cubic-bezier(.215, .61, .355, 1);
    }
    /**  ruotiamo di 45° gli span dell'hamburgher */
  .menu-open .header__hamburger span:nth-child(1){transform: rotate(45deg) translateY(8px);}
  .menu-open .header__hamburger span:nth-child(2){transform: rotate(-45deg) translateY(-8px);}

  .no-scroll {overflow: hidden;height: 100vh;}
}

/** *************************************************************************************************************** */