/* ===========================================================
   Script Solutions Italy – HEADER STICKY • SHRINK • MOBILE MENU
   =========================================================== */
:root{
  --brand-green:#008F4A;
  --brand-green-hover:#006b37;
  --header-bg:#454444;
  --link-color:#f2f2f2;
}

/* ---------- BAR PRINCIPALE (sticky) ---------- */
.menuprincipale{
  position:fixed !important;
  top:0; left:0; width:100%;
  background:var(--header-bg);
  display:flex; align-items:center;
  padding:14px 20px;
  z-index:1030;
  transition:padding .25s ease, box-shadow .25s ease;
}

.menuprincipale.shrink{
  padding:6px 20px;
  box-shadow:0 2px 6px rgba(0,0,0,.25);
}

/* ---------- LOGO ---------- */
#big_top_logo{ width:100px; transition:width .25s ease; }
.menuprincipale.shrink #big_top_logo{ width:70px; }

/* ---------- LINK DESKTOP ---------- */
.menu-links{
  display:flex;
  gap:1.5rem;
  margin-left:auto;
}

.menu-links a{
  color:var(--link-color);
  text-decoration:none;
}
.menu-links a:hover{ color:var(--brand-green); }

/* ---------- HAMBURGER (hub style) ---------- */
.hub-icon{ display:none; margin-left:1rem; cursor:pointer; position:relative; z-index:1031; }
.hub-burger{ width:26px; height:18px; position:relative; }
.hub-burger span{
  position:absolute; left:0; width:100%; height:3px; border-radius:2px;
  background:#fff; transition:transform .3s, opacity .3s;
}
.hub-burger span:nth-child(1){ top:0; }
.hub-burger span:nth-child(2){ top:7px; }
.hub-burger span:nth-child(3){ top:14px; }
.hub-icon.open span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.hub-icon.open span:nth-child(2){ opacity:0; }
.hub-icon.open span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

/* switch lingua */
.lang-switch button{
  background:none; border:none; margin-left:.8rem;
  color:var(--link-color); font-weight:600; cursor:pointer;
}
.lang-switch button:disabled{ opacity:.4; cursor:default; }

/* ---------- MOBILE MENU (<1025 px) ---------- */
@media(max-width:1025px){

  .menuprincipale{ padding:18px 20px; }
  .menuprincipale.shrink{ padding:10px 20px; }

  /* hamburger visibile */
  .hub-icon{ display:block; margin-left:auto; }

  /* menu links nascosti fuori canvas, pointer-events none */
  .menu-links{
    position:fixed;               /* fisso sotto header */
    left:0;
    top:0;                        /* sovrapposto ma fuori viewport via translate */
    width:100%;
    flex-direction:column;
    background:var(--header-bg);
    padding:3.5rem 0 1rem;        /* spazio per header */
    gap:1rem;
    text-align:center;
    transform:translateY(-100%);
    transition:transform .45s ease;
    pointer-events:none;          /* evita click quando chiuso */
    z-index:1029;
  }
  .menu-links a{ padding:0.6rem 0; }

  /* stato aperto */
  .menu-links.active{
    transform:translateY(0);
    pointer-events:auto;
    margin-top:85px;
  }
}
