html{overflow-x:hidden}
nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:0 clamp(20px,5vw,60px);height:70px;
  display:flex;align-items:center;justify-content:space-between;
  background:var(--nav-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  border-bottom:1px solid var(--blue-corp-15);transition:background var(--transition),box-shadow var(--transition)}
nav.scrolled{background:var(--nav-bg-scrolled);box-shadow:0 2px 20px var(--blue-corp-10);border-bottom:1px solid var(--gray-border)}
.nav-logo{display:flex;align-items:center}
.nav-logo .logo-img{height:44px;width:auto;flex-shrink:0;border-radius:5px}
.nav-links{display:flex;align-items:center;gap:4px;list-style:none}
.nav-links a{color:var(--white-85);font-size:14px;font-weight:500;padding:6px 14px;border-radius:6px;transition:all var(--transition)}
nav.scrolled .nav-links a{color:var(--text-mid)}
.nav-links a:hover,.nav-links a.active{color:#fff;background:var(--blue-corp-20)}
nav.scrolled .nav-links a:hover,nav.scrolled .nav-links a.active{color:var(--blue-corp);background:var(--blue-corp-07)}

.nav-dropdown{position:relative}
.nav-dropdown>a{display:flex;align-items:center;gap:5px}
.nav-dropdown>a::after{content:'▾';font-size:10px;opacity:.7;transition:transform var(--transition)}
.nav-dropdown:hover>a::after,.nav-dropdown.is-open>a::after{transform:rotate(180deg)}
.nav-dropdown::before{content:'';position:absolute;top:100%;left:-10px;right:-10px;height:12px}
.dropdown-menu{
  position:absolute;top:calc(100% + 8px);left:50%;
  transform:translateX(-50%) translateY(-6px);
  background:#fff;border:1px solid var(--gray-border);
  border-radius:var(--radius-md);box-shadow:0 8px 32px var(--blue-corp-12);
  padding:8px;min-width:210px;list-style:none;
  opacity:0;pointer-events:none;
  transition:opacity .18s ease,transform .18s ease}
.nav-dropdown:hover .dropdown-menu,.nav-dropdown.is-open .dropdown-menu{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.dropdown-menu a{
  display:block!important;color:var(--text-dark)!important;background:transparent!important;
  padding:10px 14px!important;font-size:13px!important;border-radius:6px;
  transition:background var(--transition)!important;white-space:nowrap}
.dropdown-menu a:visited{color:var(--text-dark)!important}
.dropdown-menu a:hover,.dropdown-menu a.active{background:var(--gray-bg)!important;color:var(--blue-corp)!important}

/* ── Language buttons (nav bar, dark background) ── */
.lang-selector{display:flex;gap:4px;margin-left:8px}
.lang-btn{font-size:11px;font-weight:600;font-family:var(--font-mono);padding:4px 9px;border-radius:20px;
  border:1px solid var(--white-30);color:var(--white-70);background:transparent;
  transition:all var(--transition);letter-spacing:.05em;cursor:pointer}
.lang-btn:hover,.lang-btn.active{background:var(--blue-corp);border-color:var(--blue-corp);color:#fff}
nav.scrolled .lang-btn{border-color:var(--gray-border);color:var(--text-mid)}
nav.scrolled .lang-btn:hover,nav.scrolled .lang-btn.active{background:var(--blue-corp);border-color:var(--blue-corp);color:#fff}

.nav-cta{font-size:13px;font-weight:600;padding:8px 18px;border-radius:6px;
  border:1.5px solid var(--white-70);color:var(--white-85);background:transparent;
  transition:all var(--transition);margin-left:8px;white-space:nowrap}
.nav-cta:hover{background:var(--white-10);border-color:#fff;color:#fff}
nav.scrolled .nav-cta{border-color:var(--blue-corp);color:var(--blue-corp)}
nav.scrolled .nav-cta:hover{background:var(--blue-corp);color:#fff}

.nav-desktop-actions{display:flex;align-items:center;gap:6px}
.hamburger{display:none;flex-direction:column;gap:5px;padding:8px;cursor:pointer;border-radius:6px;background:transparent;border:none}
.hamburger span{display:block;width:22px;height:2px;background:#fff;border-radius:2px;transition:all var(--transition)}
nav.scrolled .hamburger span{background:var(--blue-corp)}

/* ── Mobile overlay ── */
.mobile-overlay{position:fixed;inset:0;background:var(--overlay);z-index:1999;opacity:0;pointer-events:none;transition:opacity var(--transition)}
.mobile-overlay.open{opacity:1;pointer-events:auto}

/* ── Mobile menu (light background) ── */
.mobile-menu{position:fixed;top:0;right:0;width:min(320px,85vw);height:100vh;
  background:#fff;box-shadow:-8px 0 40px rgba(26,58,107,.15);z-index:2000;
  transform:translateX(100%);visibility:hidden;
  transition:transform var(--transition),visibility 0s .28s;
  padding:80px 20px 32px;display:flex;flex-direction:column;gap:4px;overflow-y:auto}
.mobile-menu.open{transform:translateX(0);visibility:visible;transition:transform var(--transition),visibility 0s}

/* Main nav links – dark text, blue on hover/active */
.mobile-menu>a{display:block;padding:11px 14px;color:var(--text-dark);font-size:15px;
  font-weight:600;border-radius:var(--radius-sm);transition:background var(--transition);text-decoration:none}
.mobile-menu>a:visited{color:var(--text-dark)}
.mobile-menu>a:hover{background:var(--gray-bg);color:var(--blue-corp)}
.mobile-menu>a.active{color:var(--blue-corp);background:var(--blue-corp-07)}

/* Software group header */
.mobile-menu>.mobile-software-label{padding:14px 14px 4px;font-size:11px;font-weight:700;
  color:var(--text-light);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em}

/* Sub-links */
.mobile-sub{display:flex;flex-direction:column;gap:2px;padding-left:8px;
  border-left:2px solid var(--blue-corp-12);margin-left:14px;margin-bottom:4px}
.mobile-sub a{display:block!important;padding:9px 14px 9px 16px!important;font-size:14px!important;
  color:var(--text-mid)!important;font-weight:500;border-radius:var(--radius-sm);text-decoration:none}
.mobile-sub a:visited{color:var(--text-mid)!important}
.mobile-sub a:hover{color:var(--blue-corp)!important;background:var(--gray-bg)!important}

.mobile-divider{height:1px;background:var(--gray-border);margin:8px 0}
.mobile-close{position:absolute;top:18px;right:18px;font-size:22px;color:var(--text-mid);
  padding:6px 10px;border-radius:var(--radius-sm);transition:background var(--transition)}
.mobile-close:hover{background:var(--gray-bg)}

/* Language buttons inside mobile menu – dark scheme */
.mobile-menu .lang-btn{border-color:var(--gray-border);color:var(--text-mid);background:var(--gray-bg)}
.mobile-menu .lang-btn:hover,.mobile-menu .lang-btn.active{background:var(--blue-corp);border-color:var(--blue-corp);color:#fff}
.mobile-menu .mobile-lang-row{display:flex;gap:8px;padding:8px 14px}

@media(max-width:1024px){
  .nav-links,.nav-desktop-actions{display:none}
  .hamburger{display:flex}
  nav{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
}
@media(max-width:480px){
  nav{height:60px;padding:0 16px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
  .nav-logo .logo-img{height:36px}
  .mobile-menu{padding:68px 16px 28px}
  .mobile-menu>a{font-size:14px;padding:10px 12px}
  .mobile-sub a{font-size:13px!important}
}
