/* Shared site header (website/src/partials/header.html). Standalone: works on
   pages that do not load site.css. All selectors are scoped under .nav-wrap. */
.nav-wrap {
  --navy: #07164c;
  --blue: #0B7CFF;
  --shadow: 0 22px 70px rgba(36, 92, 160, .12), 0 2px 10px rgba(18, 49, 100, .05);
  font-family: "Segoe UI Variable", "Segoe UI", "Aptos", Arial, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: normal;
  letter-spacing: normal;
  color: #0d1d55;
  -webkit-font-smoothing: antialiased;
}

.nav-wrap *,
.nav-wrap *::before,
.nav-wrap *::after {
  box-sizing: border-box;
}

.nav-wrap a {
  color: inherit;
  text-decoration: none;
}

.nav-wrap .container {
  width: min(1480px, 92vw);
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

.nav-wrap .btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 58px;
  padding: 0 30px;
  border-radius: 18px;
  font-weight: 750;
  border: 0;
  cursor: pointer;
  transition: .2s ease;
}

.nav-wrap .btn.primary {
  color: #fff;
  background: linear-gradient(135deg, #0B7CFF 0%, #1769ff 55%, #005fe7 100%);
  box-shadow: 0 16px 32px rgba(11, 124, 255, .24);
}

.nav-wrap .btn.primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 20px 38px rgba(11, 124, 255, .30);
}

.nav-wrap {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      z-index: 20
    }

    .nav-wrap .nav {
      height: 104px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 26px
    }

    .nav-wrap .brand {
      display: flex;
      align-items: center;
      gap: 14px;
      min-width: 260px
    }

    .nav-wrap .brand-icon {
      width: 64px;
      height: 64px;
      object-fit: contain;
      border-radius: 12px
    }

    .nav-wrap .brand-copy strong {
      display: block;
      font-size: 34px;
      line-height: .92;
      color: var(--navy);
      letter-spacing: -.035em
    }

    .nav-wrap .brand-copy span {
      display: block;
      text-transform: uppercase;
      letter-spacing: .28em;
      font-size: 11px;
      color: #61749c;
      margin-top: 8px
    }

    .nav-wrap .nav-links {
      display: flex;
      align-items: center;
      gap: 42px;
      color: #22365e;
      font-size: 15px
    }

    .nav-wrap .nav-links a {
      opacity: .9
    }

    .nav-wrap .nav-links a:hover {
      color: var(--blue)
    }

    .nav-wrap .nav-cta {
      min-height: 52px;
      padding: 0 28px;
      border-radius: 18px
    }

    .nav-wrap .mobile-toggle {
      display: none;
      background: none;
      border: 0;
      color: var(--navy);
      font-size: 28px;
      padding: 8px
    }

    @media (max-width:1100px) {
      .nav-wrap .nav-links {
        gap: 22px
      }

      .nav-wrap .brand {
        min-width: auto
      }

      .nav-wrap .brand-copy strong {
        font-size: 28px
      }
}

    @media (max-width:820px) {

      .nav-wrap .nav {
        height: 82px
      }

      .nav-wrap .nav-links {
        display: none;
        position: absolute;
        top: 76px;
        left: 4vw;
        right: 4vw;
        background: #fff;
        border: 1px solid #e4edf8;
        border-radius: 18px;
        padding: 18px;
        box-shadow: var(--shadow);
        flex-direction: column;
        align-items: stretch;
        gap: 0
      }

      .nav-wrap .nav-links.open {
        display: flex
      }

      .nav-wrap .nav-links a {
        padding: 12px 8px;
        border-bottom: 1px solid #eef3f9
      }

      .nav-wrap .nav-links a:last-child {
        border: 0
      }

      .nav-wrap .mobile-toggle {
        display: block
      }

      .nav-wrap .nav .nav-cta {
        display: none
      }

      .nav-wrap .brand-icon {
        width: 46px;
        height: 46px
      }

      .nav-wrap .brand-copy strong {
        font-size: 24px
      }

      .nav-wrap .brand-copy span {
        font-size: 8px
      }
}
    .nav-wrap .nav-links {
      gap: 28px;
      font-size: 14px
    }

    .nav-wrap .nav-links .assessment-nav {
      color: #0B7CFF;
      font-weight: 700;
      position: relative
    }

    .nav-wrap .nav-links .assessment-nav::after {
      content: "";
      position: absolute;
      left: 0;
      right: 0;
      bottom: -7px;
      height: 2px;
      background: #0B7CFF;
      border-radius: 2px;
      transform: scaleX(.55);
      opacity: .55
    }

    @media (max-width:1050px) {
      .nav-wrap .nav-links {
        gap: 18px;
        font-size: 13px
      }
}

    @media (max-width:760px) {

      .nav-wrap .nav-links a {
        min-height: 44px
      }
}

    @media (max-width:820px) {
  .nav-wrap .nav-links .assessment-nav::after {
    display: none
  }
}
.nav-wrap .nav-actions {
  display: flex;
  align-items: center;
  flex: 0 0 auto;
  gap: clamp(12px, 1.5vw, 22px);
}
.nav-wrap .nav-actions .nav-signin {
  color: #173f70;
  font-size: 14px;
  font-weight: 700;
  white-space: nowrap;
  text-decoration: none;
  text-underline-offset: 4px;
  text-decoration-thickness: 1.5px;
}
.nav-wrap .nav-actions .nav-signin:hover,
.nav-wrap .nav-actions .nav-signin:focus-visible {
  color: #0868d7;
  text-decoration: underline;
}
.nav-wrap .nav-links .mobile-nav-signin { display: none; }
@media (min-width: 821px) and (max-width: 1180px) {
  .nav-wrap .nav { gap: 15px; }
  .nav-wrap .brand { min-width: 190px; }
  .nav-wrap .nav-links { gap: 13px; font-size: 12px; }
  .nav-wrap .nav-actions { gap: 12px; }
  .nav-wrap .nav-actions .nav-signin { font-size: 12px; }
  .nav-wrap .nav-cta { padding: 0 16px; font-size: 13px; }
}
@media (max-width: 820px) {
  .nav-wrap .nav-actions { display: none; }
  .nav-wrap .nav-links .mobile-nav-signin {
    display: block;
    margin-top: 10px;
    padding-top: 16px;
    font-weight: 700;
    color: #173f70;
    border-top: 1px solid #e1eaf7;
  }
  .nav-wrap .nav-links .mobile-nav-signin:hover,
  .nav-wrap .nav-links .mobile-nav-signin:focus-visible {
    text-decoration: underline;
    text-underline-offset: 4px;
    color: #0868d7;
  }
}
.nav-wrap .nav-links .assessment-nav { color: inherit; font-weight: 700; }
.nav-wrap .nav-links .assessment-nav::after { display: none !important; content: none !important; }
.nav-wrap .nav-links .mobile-nav-demo { display: none; }
@media (max-width:820px) {
  .nav-wrap .nav-links .mobile-nav-demo { display: block; font-weight: 800; color: #0B7CFF; border-bottom: 0; }
}

/* Static variant: header takes its own height in the page flow (transparent). */
.nav-wrap.nav-wrap-static {
  position: relative;
}

/* Primary nav links: one look for every item (Economics, Assess Your Hospice,
   Insights), on every page, including the current one. */
.nav-wrap .nav-links a,
.nav-wrap .nav-links .assessment-nav,
.nav-wrap .nav-links [aria-current="page"] {
  color: inherit;
  font-size: inherit;
  font-weight: 600;
  line-height: inherit;
  letter-spacing: normal;
  opacity: 1;
  text-decoration: none;
}
