:root {
  --cu-navy: #11275f;
  --cu-green: #65b32e;
  --cu-teal: #00a5b5;
  --cu-bg: #f5f7fb;
  --cu-soft-border: rgba(17,39,95,0.06);
  --cu-radius-lg: 22px;
  --cu-shadow-soft: 0 22px 60px rgba(15,23,42,0.06);
}

/* ---------- Shared header + nav ---------- */

/* Top logo/title band */
.cu-header-band {
  background: #ffffff;
  border-bottom: 1px solid rgba(17,39,95,0.06);
}

.cu-header-logo {
  max-width: 240px;
  height: auto;
}

.cu-header-page-title {
  font-size: 0.95rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--cu-navy);
  margin: 0;
}

/* Nav strip */
.cu-header-nav {
  background: #ffffff !important;
  border-bottom: 1px solid rgba(17,39,95,0.06);
}

/* Make sticky nav sit on top of content */
.cu-header-nav.sticky-top {
  z-index: 1030;
  box-shadow: 0 6px 20px rgba(15,23,42,0.08);
}

/* Global nav link look */
.navbar-nav .nav-link {
  color: var(--cu-navy) !important;
  font-weight: 500;
  font-size: 0.95rem;
}

.navbar-nav .nav-link.active {
  position: relative;
}

.navbar-nav .nav-link.active::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.35rem;
  width: 100%;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--cu-green), var(--cu-navy));
}

.navbar-nav .nav-link:hover {
  color: #243ea3 !important;
}

/* Mobile toggle look (same as you had) */
.navbar-toggler {
  border-color: rgba(0,0,0,0.15);
}
.navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.6%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
