:root {
  --nav-height: 60px;
  --nav-icon-size: 20px;
  --nav-logo-size: 2.1em;
  --nav-inner-pad: 24px;
  --nav-link-size: 1em;
  --nav-link-weight: 400;
  --nav-link-gap: 28px;
}

.navbar {
  width: 100% !important;
}

.navbar-inner {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  padding-inline: var(--nav-inner-pad) !important;
  position: relative !important;
}

.tc-header--saaS {
  min-height: var(--nav-height) !important;
  margin-bottom: 12px !important;
  background: transparent !important;
  border-bottom: 1px solid rgba(0,0,0,0.06) !important;
  box-shadow: none !important;
  position: relative !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

.logo,
.tc-header--saaS .logo {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: var(--nav-logo-size) !important;
  letter-spacing: 1px !important;
  margin: 0 !important;
  padding: 12px 0 !important;
  line-height: 1.1 !important;
  flex: 1 !important;
  text-decoration: none !important;
  color: #111 !important;
  cursor: pointer !important;
}

.menu-toggle {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  min-height: 36px !important;
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  cursor: pointer !important;
  background: transparent !important;
  border: 1px solid rgba(0,0,0,0.1) !important;
  border-radius: 4px !important;
  padding: 0 !important;
  box-shadow: none !important;
  margin-right: 0 !important;
  margin-left: auto !important;
  flex-shrink: 0 !important;
}

.menu-toggle span {
  width: var(--nav-icon-size) !important;
  height: 2px !important;
  min-height: 2px !important;
  background: #111 !important;
  display: block !important;
  transition: all 0.3s !important;
}

.menu-toggle:hover {
  background: rgba(0,0,0,0.05) !important;
}

.nav-icon {
  width: var(--nav-icon-size) !important;
  height: var(--nav-icon-size) !important;
  min-width: var(--nav-icon-size) !important;
  min-height: var(--nav-icon-size) !important;
  display: inline-block !important;
  vertical-align: middle !important;
  object-fit: contain !important;
  flex: 0 0 auto !important;
}

.menu-toggle span.nav-icon {
  width: var(--nav-icon-size) !important;
  height: 2px !important;
  min-height: 2px !important;
  display: block !important;
}

.menu-dropdown {
  position: absolute !important;
  top: 70px !important;
  right: 0 !important;
  background: #fff !important;
  border: 1px solid #ddd !important;
  border-radius: 8px !important;
  box-shadow: none !important;
  min-width: 200px !important;
  display: none !important;
  z-index: 999 !important;
  overflow: hidden !important;
}

.menu-dropdown.open {
  display: block !important;
}

.menu-item {
  display: flex !important;
  align-items: center !important;
  min-height: 44px !important;
  padding: 12px 20px !important;
  color: #111 !important;
  text-decoration: none !important;
  font-size: 0.9em !important;
  border-bottom: 1px solid #f0f0f0 !important;
  transition: background 0.2s !important;
  text-align: left !important;
}

.menu-item:last-child {
  border-bottom: none !important;
}

.menu-item:hover {
  background: #f5f3f0 !important;
}

.menu-item--mobile-primary {
  display: none !important;
}

.tc-header--saaS:has(#topHeaderLinks) .logo {
  flex: 0 0 auto !important;
}

.top-header-links {
  position: absolute !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: var(--nav-link-gap) !important;
  white-space: nowrap !important;
}

.top-header-links .top-link {
  font-family: 'Inter', -apple-system, sans-serif !important;
  color: #111 !important;
  text-decoration: none !important;
  font-size: var(--nav-link-size) !important;
  font-weight: var(--nav-link-weight) !important;
  letter-spacing: 0.5px !important;
  padding: 8px 4px 3px !important;
  border-bottom: 1px solid transparent !important;
  transition: border-color 140ms ease, opacity 140ms ease !important;
  opacity: 0.88 !important;
}

.top-header-links .top-link:hover {
  border-bottom-color: rgba(17,17,17,0.45) !important;
  opacity: 1 !important;
}

.top-header-links .top-link.is-active {
  border-bottom-color: #111 !important;
  opacity: 1 !important;
}

@media (max-width: 1200px) {
  .top-header-links { gap: 20px !important; }
  .top-header-links .top-link { font-size: 0.95em !important; }
}

@media (max-width: 900px) {
  .top-header-links { display: none !important; }
  .menu-item--mobile-primary { display: flex !important; }
}

@media (max-width: 768px) {
  .menu-dropdown {
    left: var(--nav-inner-pad) !important;
    right: var(--nav-inner-pad) !important;
    min-width: 0 !important;
    max-height: calc(100vh - 110px) !important;
    overflow-y: auto !important;
  }
}

@media (max-width: 768px) {
  :root { --nav-inner-pad: 16px; }
}
