/* ============================================================
   nav-servizi.css — Navbar unificata per le pagine servizio
   (Consumer / B2B / SMT). Allineata allo stile di main.css.
   ============================================================ */
.nav{position:fixed;top:0;left:0;right:0;z-index:80;display:flex;align-items:center;justify-content:space-between;height:74px;padding:0 clamp(20px,4vw,48px);background:rgba(6,15,10,.6);backdrop-filter:blur(20px);border-bottom:1px solid transparent;transition:height .4s,background .4s,border-color .4s}
.nav.scrolled{height:58px;background:rgba(6,15,10,.92);border-bottom:1px solid rgba(44,232,165,.16)}
.nav .nav-logo{display:block;line-height:0}
.nav .nav-logo svg{height:40px;width:auto;display:block;transition:height .4s}
.nav.scrolled .nav-logo svg{height:32px}
.nav .nav-links{display:flex;gap:34px;align-items:center;flex-wrap:nowrap}
.nav .nav-links a{font-family:'Rajdhani',sans-serif;font-weight:600;font-size:.92rem;color:#9bb0a4;letter-spacing:1.6px;text-transform:uppercase;position:relative;padding:6px 0;transition:color .3s;white-space:nowrap}
.nav .nav-links a::after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background:#2CE8A5;transition:width .3s cubic-bezier(.22,1,.36,1)}
.nav .nav-links a:hover{color:#2CE8A5}
.nav .nav-links a:hover::after{width:100%}
.nav .nav-right{display:flex;align-items:center;gap:14px}
.nav .nav-cta{font-family:'Rajdhani',sans-serif;font-weight:700;font-size:.92rem;letter-spacing:1.6px;text-transform:uppercase;color:#2CE8A5;background:transparent;border:1px solid rgba(44,232,165,.16);padding:8px 18px;border-radius:8px;box-shadow:none;transition:background .3s,border-color .3s}
.nav .nav-cta:hover{background:rgba(44,232,165,.1);border-color:#2CE8A5;transform:none;box-shadow:none}
.nav .lang{font-family:'Share Tech Mono',monospace;font-size:.72rem;font-weight:700;letter-spacing:2px;color:#5a7066;border:1px solid rgba(44,232,165,.16);padding:5px 10px;border-radius:4px;text-transform:uppercase;transition:all .3s}
.nav .lang:hover{color:#2CE8A5;border-color:#2CE8A5;background:rgba(44,232,165,.06)}

/* voce di menu attiva = pagina corrente */
.nav .nav-links a.active{color:#2CE8A5}
.nav .nav-links a.active::after{width:100%}

/* ============================================================
   Hamburger + menu mobile — uniforme con main.css (homepage)
   ============================================================ */
.nav .hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;z-index:200;padding:6px}
.nav .hamburger span{width:28px;height:2px;background:#2CE8A5;transition:all .35s cubic-bezier(.22,1,.36,1);transform-origin:center}
.nav.menu-open .hamburger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav.menu-open .hamburger span:nth-child(2){opacity:0}
.nav.menu-open .hamburger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

@media(max-width:960px){
  body.menu-is-open{overflow:hidden}
  .nav .nav-links{display:none}
  .nav .hamburger{display:flex}
  .nav.menu-open{height:100vh;height:100dvh;background:rgba(6,15,10,.99);z-index:9999}
  .nav.menu-open .nav-links{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100dvh;gap:0;overflow-y:auto}
  .nav.menu-open .nav-links a{font-size:1.4rem;font-weight:700;letter-spacing:3px;padding:20px 0;color:#fff;border-bottom:1px solid rgba(255,255,255,.08);width:80%;text-align:center}
  .nav.menu-open .nav-links a:last-child{border-bottom:none}
  .nav.menu-open .nav-links a::after{display:none}
  .nav.menu-open .nav-logo{position:absolute;top:37px;left:clamp(20px,4vw,48px);transform:translateY(-50%);margin:0;z-index:2}
  .nav.menu-open .hamburger{position:absolute;top:37px;right:clamp(20px,4vw,48px);transform:translateY(-50%);z-index:2}
  .nav .lang{position:absolute;top:50%;right:74px;transform:translateY(-50%);z-index:201}
  .nav.menu-open .lang{top:37px;transform:translateY(-50%);z-index:3}
}






/* sotto-menu Servizi (accordion) — solo nel menu mobile */
.nav-sub{display:none}
.nav-parent .chev{display:none}
@media(max-width:960px){
  .nav.menu-open .nav-parent{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px}
  .nav.menu-open .nav-parent .chev{display:inline-block;width:11px;height:11px;border-right:2px solid #2CE8A5;border-bottom:2px solid #2CE8A5;transform:rotate(45deg);transition:transform .35s cubic-bezier(.22,1,.36,1)}
  .nav.menu-open .nav-parent.open{color:#2CE8A5}
  .nav.menu-open .nav-parent.open .chev{transform:rotate(-135deg)}
  .nav.menu-open .nav-sub{display:flex;flex-direction:column;width:84%;max-height:0;opacity:0;overflow:hidden;margin:0 auto;border-radius:16px;background:linear-gradient(180deg,rgba(44,232,165,.08),rgba(8,18,14,.35));border:1px solid rgba(44,232,165,.20);box-shadow:0 18px 40px -22px rgba(0,0,0,.75);transition:max-height .45s cubic-bezier(.22,1,.36,1),opacity .35s ease,margin .35s ease}
  .nav.menu-open .nav-parent.open ~ .nav-sub{max-height:300px;opacity:1;margin:6px auto 16px}
  .nav.menu-open .nav-sub a{display:block;width:100%;text-align:center;padding:17px 12px;font-size:1rem;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.92);opacity:0;transform:translateY(8px);transition:opacity .35s ease,transform .4s cubic-bezier(.22,1,.36,1),color .25s,background .25s}
  .nav.menu-open .nav-sub a + a{border-top:1px solid rgba(44,232,165,.12)}
  .nav.menu-open .nav-sub a:hover,.nav.menu-open .nav-sub a:active{color:#2CE8A5;background:rgba(44,232,165,.08)}
  .nav.menu-open .nav-parent.open ~ .nav-sub a{opacity:1;transform:none}
  .nav.menu-open .nav-parent.open ~ .nav-sub a:nth-child(1){transition-delay:.10s}
  .nav.menu-open .nav-parent.open ~ .nav-sub a:nth-child(2){transition-delay:.16s}
  .nav.menu-open .nav-parent.open ~ .nav-sub a:nth-child(3){transition-delay:.22s}
}
