/* AVERQION Global Navigation V1
   Shared navigation system. Brand colors are sampled from the existing homepage
   atmosphere in assets/styles.css; the existing logo and page layouts are retained. */
:root {
  --aq-nav-night: #10072E;
  --aq-nav-purple: #1B073B;
  --aq-nav-deep: #08082D;
  --aq-nav-magenta: #D83BFF;
  --aq-nav-violet: #A43BFF;
  --aq-nav-electric: #713BFF;
  --aq-nav-blue: #075BFF;
  --aq-nav-cyan: #00CFFF;
  --aq-nav-ice: #FFFFFF;
  --aq-nav-line: rgba(190, 151, 255, .25);
  --aq-nav-panel: rgba(16, 7, 46, .985);
}

html body header.aq-site-header {
  position: absolute !important;
  inset: 0 0 auto 0 !important;
  display: block !important;
  width: 100% !important;
  height: 78px !important;
  min-height: 78px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  z-index: 1000 !important;
  color: #FFFFFF !important;
  background:
    radial-gradient(ellipse 58% 230% at 0% 50%, rgba(216, 59, 255, .36) 0%, transparent 78%),
    radial-gradient(ellipse 58% 230% at 100% 50%, rgba(7, 91, 255, .40) 0%, transparent 80%),
    linear-gradient(112deg, rgba(27, 7, 59, .97) 0%, rgba(16, 7, 46, .975) 48%, rgba(8, 8, 45, .98) 100%) !important;
  border: 0 !important;
  border-bottom: 1px solid var(--aq-nav-line) !important;
  box-shadow: 0 8px 28px rgba(3, 7, 52, .12) !important;
  backdrop-filter: blur(15px) saturate(125%) !important;
  -webkit-backdrop-filter: blur(15px) saturate(125%) !important;
}

.aq-site-header,
.aq-site-header * {
  box-sizing: border-box;
}

.aq-header-inner {
  position: relative;
  width: min(1680px, calc(100% - 112px));
  height: 100%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(18px, 2vw, 34px);
}

.aq-brand {
  flex: 0 0 132px;
  width: 132px;
  min-width: 132px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 0;
  margin: 0;
  line-height: 0;
  text-decoration: none !important;
}

.aq-brand img.brand-logo {
  display: block !important;
  width: 132px !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 42px !important;
  object-fit: contain !important;
  object-position: left center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  filter: none !important;
}

.aq-primary-nav {
  flex: 1 1 auto;
  min-width: 0;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(20px, 2.15vw, 39px);
  margin: 0;
  padding: 0;
  background: transparent !important;
  border: 0;
  white-space: nowrap;
}

.aq-site-header .aq-nav-link,
.aq-site-header .aq-dropdown-toggle {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 78px;
  margin: 0;
  padding: 0;
  border: 0 !important;
  border-radius: 0;
  outline-offset: 5px;
  background: transparent !important;
  color: rgba(247, 249, 255, .94) !important;
  font-family: inherit;
  font-size: 11px !important;
  font-weight: 750 !important;
  line-height: 1.2 !important;
  letter-spacing: .075em !important;
  text-align: center;
  text-decoration: none !important;
  text-transform: uppercase;
  cursor: pointer;
  transition: color .18s ease, text-shadow .18s ease, opacity .18s ease;
}

.aq-site-header .aq-nav-link::before,
.aq-site-header .aq-nav-link::after,
.aq-site-header .aq-dropdown-toggle::before,
.aq-site-header .aq-dropdown-toggle::after {
  content: none !important;
  display: none !important;
}

.aq-site-header .aq-nav-link:hover,
.aq-site-header .aq-nav-link:focus-visible,
.aq-site-header .aq-nav-link.is-current,
.aq-site-header .aq-dropdown-toggle:hover,
.aq-site-header .aq-dropdown-toggle:focus-visible,
.aq-site-header .aq-dropdown-toggle.is-current {
  color: #FFFFFF !important;
  text-shadow: 0 0 15px rgba(177, 208, 255, .34);
}

.aq-nav-dropdown {
  position: relative;
  flex: 0 0 auto;
  align-self: stretch;
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0;
}

.aq-chevron {
  display: block;
  flex: 0 0 11px;
  width: 11px;
  height: 8px;
  margin-top: 1px;
  transition: transform .18s ease;
}

.aq-nav-dropdown:hover .aq-chevron,
.aq-nav-dropdown:focus-within .aq-chevron,
.aq-nav-dropdown.is-open .aq-chevron {
  transform: rotate(180deg);
}

.aq-dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1002;
  display: block;
  width: 180px;
  min-width: 180px;
  margin: 0;
  padding: 7px 14px 8px;
  overflow: visible;
  border: 1px solid rgba(151, 204, 255, .17);
  border-top: 0;
  border-radius: 0 0 7px 7px;
  background: linear-gradient(180deg, rgba(32, 16, 91, .99) 0%, rgba(16, 7, 46, .99) 62%, rgba(8, 8, 45, .995) 100%);
  box-shadow: 0 18px 42px rgba(2, 5, 42, .34), inset 0 1px 0 rgba(255, 255, 255, .035);
  backdrop-filter: blur(16px) saturate(125%);
  -webkit-backdrop-filter: blur(16px) saturate(125%);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(7px);
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}

.aq-nav-dropdown:hover > .aq-dropdown-menu,
.aq-nav-dropdown:focus-within > .aq-dropdown-menu,
.aq-nav-dropdown.is-open > .aq-dropdown-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}

.aq-dropdown-link {
  display: flex;
  align-items: center;
  min-height: 52px;
  width: 100%;
  margin: 0;
  padding: 12px 0;
  border: 0;
  border-bottom: 1px solid rgba(198, 211, 255, .13);
  background: transparent;
  color: rgba(248, 250, 255, .94) !important;
  font-family: inherit;
  font-size: 10.5px;
  font-weight: 750;
  line-height: 1.35;
  letter-spacing: .055em;
  text-align: left;
  text-decoration: none !important;
  text-transform: uppercase;
  white-space: normal;
  transition: color .18s ease, padding-left .18s ease, background .18s ease;
}

.aq-dropdown-link:last-child { border-bottom: 0; }
.aq-dropdown-link:hover,
.aq-dropdown-link:focus-visible,
.aq-dropdown-link.is-current {
  color: #FFFFFF !important;
  padding-left: 5px;
  background: linear-gradient(90deg, rgba(216, 59, 255, .14), rgba(113, 59, 255, .08) 48%, transparent 90%);
  outline-offset: 2px;
}

.aq-site-header .aq-contact-button {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 126px;
  min-height: 46px;
  margin: 0;
  padding: 0 20px;
  border: 1px solid rgba(222, 233, 255, .20) !important;
  border-radius: 7px;
  background: linear-gradient(105deg, #16DFFF 0%, #2875FF 48%, #9250FF 100%) !important;
  box-shadow: 0 7px 22px rgba(53, 89, 255, .23), 0 0 23px rgba(133, 57, 255, .12);
  color: #FFFFFF !important;
  font-family: inherit;
  font-size: 10.5px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: .105em !important;
  text-decoration: none !important;
  text-transform: uppercase;
  white-space: nowrap;
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}

.aq-site-header .aq-contact-button:hover,
.aq-site-header .aq-contact-button:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(74, 111, 255, .38), 0 0 31px rgba(157, 73, 255, .20);
  filter: saturate(1.06);
}

.aq-mobile-contact,
.aq-mobile-toggle { display: none !important; }

.aq-site-header a:focus-visible,
.aq-site-header button:focus-visible {
  outline: 2px solid rgba(194, 222, 255, .95);
  outline-offset: 4px;
}

@media (max-width: 1120px) {
  .aq-header-inner { width: calc(100% - 56px); gap: 20px; }
  .aq-brand, .aq-brand img.brand-logo { width: 122px !important; }
  .aq-brand { flex-basis: 122px; min-width: 122px; }
  .aq-primary-nav { gap: clamp(15px, 1.65vw, 22px); }
  .aq-site-header .aq-nav-link,
  .aq-site-header .aq-dropdown-toggle { font-size: 10px !important; letter-spacing: .06em !important; }
  .aq-site-header .aq-contact-button { min-width: 112px; padding-inline: 15px; }
}

@media (max-width: 980px) {
  html body header.aq-site-header {
    height: 72px !important;
    min-height: 72px !important;
  }
  .aq-header-inner { width: calc(100% - 40px); gap: 14px; }
  .aq-brand, .aq-brand img.brand-logo { width: 124px !important; }
  .aq-brand { flex-basis: 124px; min-width: 124px; }
  .aq-primary-nav {
    position: absolute;
    top: 100%;
    left: -1px;
    right: -1px;
    z-index: 1001;
    display: none;
    width: auto;
    height: auto;
    max-height: calc(100vh - 84px);
    overflow-y: auto;
    flex: none;
    flex-direction: column;
    align-items: stretch;
    justify-content: flex-start;
    gap: 0;
    margin: 0;
    padding: 10px 17px 15px;
    border: 1px solid rgba(151, 204, 255, .22);
    border-top: 0;
    border-radius: 0 0 11px 11px;
    background:
      radial-gradient(ellipse 65% 100% at 0% 0%, rgba(216, 59, 255, .20), transparent 78%),
      radial-gradient(ellipse 65% 100% at 100% 100%, rgba(7, 91, 255, .22), transparent 80%),
      linear-gradient(145deg, rgba(27, 7, 59, .995), rgba(16, 7, 46, .995) 62%, rgba(8, 8, 45, .998));
    box-shadow: 0 22px 48px rgba(2, 5, 42, .34);
    white-space: normal;
  }
  .aq-site-header.is-mobile-open .aq-primary-nav { display: flex; }
  .aq-site-header .aq-nav-link,
  .aq-site-header .aq-dropdown-toggle {
    display: flex;
    justify-content: space-between;
    width: 100%;
    min-height: 49px;
    padding: 0 9px;
    border-bottom: 1px solid rgba(198, 211, 255, .13) !important;
    font-size: 11px !important;
    text-align: left;
  }
  .aq-nav-dropdown { display: block; width: 100%; height: auto; }
  .aq-dropdown-toggle { cursor: pointer; }
  .aq-dropdown-menu {
    position: static;
    display: none;
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 0 8px 8px 13px;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: none;
    transition: none;
  }
  .aq-nav-dropdown.is-open > .aq-dropdown-menu { display: block; }
  .aq-dropdown-link { min-height: 44px; padding: 10px 7px; font-size: 10px; }
  .aq-site-header .aq-contact-button { display: none !important; }
  .aq-site-header .aq-mobile-contact { display: flex !important; }
  .aq-site-header .aq-mobile-toggle {
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    margin: 0;
    padding: 0;
    border: 1px solid rgba(191, 211, 255, .28) !important;
    border-radius: 8px;
    background: rgba(32, 16, 91, .62) !important;
    color: #FFFFFF !important;
    cursor: pointer;
  }
  .aq-mobile-toggle span {
    display: block;
    width: 17px;
    height: 1.5px;
    border-radius: 2px;
    background: #FFFFFF;
    transition: transform .2s ease, opacity .2s ease;
  }
  .aq-site-header.is-mobile-open .aq-mobile-toggle span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
  .aq-site-header.is-mobile-open .aq-mobile-toggle span:nth-child(2) { opacity: 0; }
  .aq-site-header.is-mobile-open .aq-mobile-toggle span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }
}

@media (max-width: 480px) {
  .aq-header-inner { width: calc(100% - 32px); }
  .aq-brand, .aq-brand img.brand-logo { width: 116px !important; }
  .aq-brand { flex-basis: 116px; min-width: 116px; }
  .aq-primary-nav { left: -1px; right: -1px; }
}

@media (prefers-reduced-motion: reduce) {
  .aq-site-header *, .aq-site-header *::before, .aq-site-header *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}
