:root {
  --header-height-unified: 84px;
  --header-logo-size-unified: clamp(60px, 6vw, 88px);
  --header-link-size-unified: 0.75rem;
  --header-link-letter-unified: 0.13em;
  --header-button-size-unified: 0.95rem;
}

.site-header {
  min-height: var(--header-height-unified) !important;
  background: rgba(255, 255, 255, 0.96) !important;
  border-bottom: 1px solid rgba(9, 126, 216, 0.18) !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 6 !important;
  backdrop-filter: blur(12px) !important;
  width: 100% !important;
}

.site-header .header-inner,
.header-inner {
  width: min(1240px, 94vw) !important;
  margin: 0 auto !important;
  height: var(--header-height-unified) !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 1.4rem !important;
  padding: 0 !important;
}

.logo-mark,
.site-header .logo-mark {
  width: var(--header-logo-size-unified) !important;
  height: auto !important;
}

.nav-links {
  align-items: center !important;
  gap: 1.2rem !important;
}

.nav-links a,
.site-header .nav-links a {
  font-size: var(--header-link-size-unified) !important;
  letter-spacing: var(--header-link-letter-unified) !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  line-height: 1.2 !important;
  color: #0f213a !important;
  white-space: nowrap !important;
  text-decoration: underline !important;
  text-underline-offset: 4px !important;
  text-decoration-thickness: 1.5px !important;
}

.nav-links a:hover,
.site-header .nav-links a:hover {
  color: #000000 !important;
}

.header-actions {
  margin-left: auto !important;
  display: flex !important;
  align-items: center !important;
  gap: 1.4rem !important;
  justify-content: center !important;
  flex-wrap: nowrap !important;
}

.header-cta,
.header-portal-cta,
.site-header .header-cta,
.site-header .header-portal-cta {
  font-size: var(--header-button-size-unified) !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
  color: #fff !important;
  text-decoration: none !important;
  border: none !important;
  border-radius: 999px !important;
}

.header-cta,
.site-header .header-cta {
  padding: 0.65rem 1.85rem !important;
  background: linear-gradient(120deg, #44c7ff 15%, #0b4fb5 100%) !important;
  box-shadow: 0 14px 34px rgba(7, 63, 116, 0.25) !important;
}

.header-portal-cta,
.site-header .header-portal-cta {
  padding: 0.8rem 2.2rem !important;
  letter-spacing: 0.12em !important;
  background: #000000 !important;
  box-shadow: 0 20px 52px rgba(0, 0, 0, 0.35) !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease, opacity 0.2s ease !important;
}

.header-portal-cta:hover,
.site-header .header-portal-cta:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 26px 60px rgba(0, 0, 0, 0.45) !important;
}

@media (max-width: 960px) {
  .site-header .header-inner,
  .header-inner {
    height: auto !important;
    min-height: 84px !important;
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }

  .header-actions {
    gap: 0.9rem !important;
  }

  .nav-links {
    gap: 0.9rem !important;
  }
}
