/* ============================================================
   header.css — Sticky header, primary nav, dropdowns, mobile menu
   ============================================================ */
header{
  position:sticky;top:0;z-index:var(--z-header);
  background:var(--wine);
  border-bottom:1px solid var(--line-on-wine);
transition:box-shadow .25s ease;}
header.is-scrolled{box-shadow:0 10px 28px rgba(0,0,0,.22);}

nav{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 32px;max-width:var(--container-width);margin:0 auto;
}
.brand img{height:52px;width:auto;}
.nav-links{display:flex;gap:34px;font-size:14px;font-weight:500;color:var(--white);}
.nav-item{position:relative;}
.nav-links a{position:relative;padding:4px 0;}
.nav-links > .nav-item > a::after{
  content:"";position:absolute;left:0;bottom:0;width:0;height:1px;
  background:var(--white);transition:width .25s ease;
}
.nav-links > .nav-item > a:hover::after{width:100%;}

/* dropdown (Web Development / SEO menus) */
.nav-dropdown{
  position:absolute;top:100%;left:0;margin-top:14px;min-width:220px;
  background:var(--white);border-radius:var(--radius-md);box-shadow:var(--shadow-lifted);
  padding:8px;opacity:0;visibility:hidden;transform:translateY(6px);
  transition:opacity .2s ease, transform .2s ease, visibility .2s ease;
  z-index:var(--z-dropdown);
}
.nav-item.has-children:hover .nav-dropdown,
.nav-item.has-children:focus-within .nav-dropdown{opacity:1;visibility:visible;transform:translateY(0);}
.nav-dropdown a{
  display:block;padding:10px 14px;font-size:13.5px;color:var(--ink);border-radius:var(--radius-sm);
}
.nav-dropdown a:hover{background:var(--paper);color:var(--wine);}
.nav-dropdown a::after{display:none;}

.btn-cta{
  background:var(--white);color:var(--wine);
  padding:11px 20px;border-radius:var(--radius-sm);font-size:13.5px;font-weight:700;
  display:inline-flex;align-items:center;gap:8px;
  transition:transform var(--duration-fast) ease, background var(--duration-fast) ease;
}
.btn-cta:hover{transform:translateY(-1px);background:var(--mauve-soft);}

.nav-toggle{
  display:none;background:none;border:1px solid rgba(255,255,255,0.32);
  width:40px;height:40px;border-radius:3px;cursor:pointer;
  align-items:center;justify-content:center;flex-direction:column;gap:4px;
  transition:background .2s ease;
}
.nav-toggle:hover{background:rgba(255,255,255,0.1);}
.nav-toggle span{display:block;width:17px;height:1.5px;background:var(--white);border-radius:2px;transition:transform .3s ease, opacity .2s ease;}
.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(5.5px) rotate(45deg);}
.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;}
.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-5.5px) rotate(-45deg);}

.mobile-menu{
  display:none;background:var(--wine);border-top:1px solid var(--line-on-wine);
  max-height:0;overflow:hidden;transition:max-height .35s var(--ease-standard);
}
.mobile-menu.open{max-height:560px;overflow-y:auto;}
.mobile-menu ul{list-style:none;padding:8px 32px 22px;}
.mobile-menu li{border-bottom:1px solid rgba(255,255,255,0.1);}
.mobile-menu li.sub a{padding-left:16px;font-size:14px;opacity:.85;}
.mobile-menu li:last-child{border-bottom:none;}
.mobile-menu a{display:flex;align-items:center;justify-content:space-between;padding:15px 2px;color:var(--white);font-size:15.5px;font-weight:500;}

@media (max-width:980px){
  .nav-links{display:none;}
  .nav-toggle{display:flex;}
  .mobile-menu{display:block;}
  .btn-cta span.cta-text{display:none;}
  .btn-cta{padding:11px 14px;}
  .brand img{height:44px;}
  nav{padding:12px 20px;}
}

/* Language switcher (Weglot header switcher, single-button dropdown, updated 2026-09-13) */
.ng-language-switcher{position:relative;display:flex;align-items:center;margin-inline:18px;}
.ng-lang-toggle{display:inline-flex;align-items:center;justify-content:center;background:none;border:none;padding:4px;cursor:pointer;color:var(--white);line-height:0;}
.ng-globe-icon{width:19px;height:19px;flex:0 0 19px;}
.ng-lang-dropdown{position:absolute;top:calc(100% + 14px);right:0;display:none;flex-direction:column;min-width:130px;background:var(--wine);border-radius:8px;padding:6px;box-shadow:0 10px 30px rgba(0,0,0,.3);z-index:80;}
.ng-language-switcher.open .ng-lang-dropdown{display:flex;}
.ng-language-link{display:block;padding:8px 12px;font-size:14px;font-weight:500;color:var(--white);text-decoration:none;border-radius:6px;white-space:nowrap;text-align:left;}
.ng-language-link:hover{background:rgba(255,255,255,.1);}
.ng-language-switcher-mobile{border-bottom:none!important;padding:15px 32px!important;}
.ng-language-switcher-mobile .ng-language-switcher{margin-inline:0;}
.ng-language-switcher-mobile .ng-lang-dropdown{position:static;box-shadow:none;background:rgba(255,255,255,.06);margin-top:10px;width:100%;}
@media (max-width:980px){
	.ng-language-switcher{display:none;}
	.ng-language-switcher-mobile .ng-language-switcher{display:flex;}
}
