/* === NorthPath human craft P0 (2026-09-20) === */
@import url("https://fonts.googleapis.com/css2?family=Instrument+Sans:wght@400;500;600&family=Instrument+Serif:ital@0;1&display=swap");

#nps-enterprise {
  --cream: #F5F0E8;
  --navy: #0B1F30;
  --dusk: #C4A484;
  --dusk-deep: #9A7B5C;
  --ink: #0B1F30;
  --muted: #5C6B76;
  --line-on-navy: rgba(245, 240, 232, 0.14);
  --line-on-cream: rgba(11, 31, 48, 0.12);
  --fog: #F5F0E8;
  --parchment: #F5F0E8;
  --ember: #C4A484 !important;
  --ember-deep: #9A7B5C !important;
  --ash: #8FA0AB;
  --tide: #A8C8D8;
  --display: "Instrument Serif", "Newsreader", Georgia, "Times New Roman", serif !important;
  --sans: "Instrument Sans", "Figtree", "Segoe UI", system-ui, sans-serif !important;
  font-family: var(--sans) !important;
  /* no blanket cream color on whole tree */
}

#nps-enterprise.nps-enterprise {
  background-image: none !important;
  background-color: #0B1F30 !important;
}
#nps-enterprise.nps-enterprise::before { opacity: 0.08 !important; }

/* Soft mist on dark only */
#nps-enterprise .nps-hero,
#nps-enterprise .nps-hero p,
#nps-enterprise .nps-bills,
#nps-enterprise .nps-bills p,
#nps-enterprise #nps-partner,
#nps-enterprise #nps-partner p,
#nps-enterprise .nps-founder,
#nps-enterprise .nps-founder p,
#nps-enterprise .nps-talk > :not(.nps-card),
#nps-enterprise #nps-contact > :not(.nps-card),
#nps-enterprise footer,
#nps-enterprise .nps-foot {
  color: #F5F0E8 !important;
  font-weight: 400 !important;
}

/* Typography — sentence case, no billboards */
#nps-enterprise h1,
#nps-enterprise h2,
#nps-enterprise h3,
#nps-enterprise .nps-display,
#nps-enterprise .nps-giant,
#nps-enterprise .nps-bill h2,
#nps-enterprise .nps-bill strong,
#nps-enterprise .nps-switch-label h3 {
  font-family: var(--display) !important;
  text-transform: none !important;
  font-weight: 400 !important;
  letter-spacing: -0.02em !important;
  line-height: 1.12 !important;
}
#nps-enterprise h1,
#nps-enterprise .nps-hero h1 {
  font-size: clamp(2rem, 4.5vw, 3.25rem) !important;
  max-width: 18ch !important;
  color: #F5F0E8 !important;
}
#nps-enterprise h2 {
  font-size: clamp(1.5rem, 3vw, 2.35rem) !important;
}
#nps-enterprise h3 {
  font-size: clamp(1.15rem, 1.8vw, 1.45rem) !important;
  font-weight: 400 !important;
}
#nps-enterprise p,
#nps-enterprise li,
#nps-enterprise .nps-lede,
#nps-enterprise .nps-copy {
  font-family: var(--sans) !important;
  max-width: 40rem;
  line-height: 1.65 !important;
}
#nps-enterprise .nps-kicker,
#nps-enterprise .nps-live,
#nps-enterprise small {
  font-family: var(--sans) !important;
  font-size: 0.72rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: #C4A484 !important;
}

/* Hero */
#nps-enterprise .nps-hero {
  background-color: #0B1F30;
  background-image:
    linear-gradient(180deg, rgba(11,31,48,.25) 0%, rgba(11,31,48,.4) 50%, rgba(11,31,48,.82) 100%),
    url("https://northpathstrategies.org/wp-content/uploads/2026/09/harbor-sunset-hero.webp") !important;
  background-size: cover !important;
  background-position: center 40% !important;
  min-height: auto !important;
  padding: clamp(4rem, 12vw, 7rem) 7vw clamp(2.5rem, 6vw, 4rem) !important;
}
/* Kill badge pile / chips under hero */
#nps-enterprise .nps-hero .nps-chips,
#nps-enterprise .nps-hero .nps-badges,
#nps-enterprise .nps-proof,
#nps-enterprise .nps-tags-row,
#nps-enterprise .nps-live + .nps-chips { display: none !important; }
/* Demote metric strip */
#nps-enterprise .nps-stat,
#nps-enterprise dl.nps-stats,
#nps-enterprise .nps-stats { display: none !important; }

/* Practice: compact rule-separated, not viewport posters */
#nps-enterprise .nps-bills {
  padding: clamp(2.5rem, 6vw, 4.5rem) 7vw !important;
  border-top: 1px solid var(--line-on-navy) !important;
}
#nps-enterprise .nps-bill {
  min-height: 0 !important;
  padding: 1.5rem 0 !important;
  grid-template-columns: 3rem 1fr auto !important;
  gap: 1rem !important;
  align-items: start !important;
  border-bottom: 1px solid var(--line-on-navy) !important;
  overflow: visible !important;
}
#nps-enterprise .nps-bill h2,
#nps-enterprise .nps-bill strong {
  font-size: clamp(1.5rem, 3vw, 2.15rem) !important;
  font-weight: 400 !important;
  text-transform: none !important;
  color: #F5F0E8 !important;
}
#nps-enterprise .nps-bill i {
  font-size: 0.85rem !important;
  color: #C4A484 !important;
  font-family: var(--sans) !important;
  font-style: normal !important;
  letter-spacing: 0.06em !important;
}
#nps-enterprise .nps-bill p {
  color: rgba(245,240,232,.78) !important;
  font-size: 1rem !important;
  max-width: 36rem !important;
}

/* CTAs — navy/cream, no orange candy */
#nps-enterprise .nps-btn-fill,
#nps-enterprise a.nps-btn-fill {
  background: #F5F0E8 !important;
  color: #0B1F30 !important;
  border: 1px solid #F5F0E8 !important;
  border-radius: 2px !important;
  font-family: var(--sans) !important;
  font-weight: 500 !important;
  text-transform: none !important;
  letter-spacing: 0.01em !important;
  padding: 0.8rem 1.25rem !important;
  font-size: 0.95rem !important;
  box-shadow: none !important;
}
#nps-enterprise .nps-btn-fill:hover,
#nps-enterprise a.nps-btn-fill:hover {
  background: #E8E0D0 !important;
  border-color: #E8E0D0 !important;
}
#nps-enterprise .nps-btn-ghost,
#nps-enterprise a.nps-btn-ghost {
  background: transparent !important;
  color: #F5F0E8 !important;
  border: 1px solid rgba(245,240,232,.28) !important;
  border-radius: 2px !important;
  font-weight: 500 !important;
  text-transform: none !important;
  padding: 0.8rem 1.25rem !important;
  box-shadow: none !important;
}
#nps-enterprise .nps-btn-ghost:hover {
  border-color: rgba(196,164,132,.7) !important;
  color: #F5F0E8 !important;
  background: rgba(196,164,132,.08) !important;
}
#nps-enterprise ::selection {
  background: #C4A484 !important;
  color: #0B1F30 !important;
}

/* Hide dense AI/template chrome from home */
#nps-enterprise #nps-work,
#nps-enterprise .nps-work,
#nps-enterprise #nps-approach,
#nps-enterprise #nps-faq,
#nps-enterprise .nps-faq,
#nps-enterprise .nps-third,
#nps-enterprise #nps-private-ai,
#nps-enterprise .nps-private,
#nps-enterprise .nps-river-wrap,
#nps-enterprise .nps-track-wrap,
#nps-enterprise .nps-mods,
#nps-enterprise .nps-meridian,
#nps-enterprise .nps-field,
#nps-enterprise .nps-blob,
#nps-enterprise .nps-lamp {
  display: none !important;
}

/* Partnership band */
#nps-enterprise #nps-partner {
  padding: clamp(2.5rem, 6vw, 4.5rem) 12vw clamp(2.5rem, 6vw, 4.5rem) 7vw !important;
  border-top: 1px solid var(--line-on-navy) !important;
}

/* SteadyHarbor cream panel — lean */
#nps-enterprise #nps-platform.nps-invert {
  background: #F5F0E8 !important;
  color: #0B1F30 !important;
  padding: clamp(2.5rem, 6vw, 4.5rem) 7vw !important;
  min-height: 0 !important;
  border-radius: 0 !important;
}
#nps-enterprise #nps-platform .nps-harbor-top {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 1rem !important;
  align-items: start !important;
  min-height: 0 !important;
}
#nps-enterprise #nps-platform .nps-giant,
#nps-enterprise #nps-platform h2 {
  font-family: var(--display) !important;
  font-size: clamp(2rem, 5vw, 3rem) !important;
  font-weight: 400 !important;
  text-transform: none !important;
  color: #0B1F30 !important;
  letter-spacing: -0.02em !important;
  margin: 0.25rem 0 0.75rem !important;
}
#nps-enterprise #nps-platform .nps-copy,
#nps-enterprise #nps-platform p {
  color: #5C6B76 !important;
  max-width: 40rem !important;
}
#nps-enterprise #nps-platform .nps-kicker { color: #7D6146 !important; }
#nps-enterprise #nps-platform .nps-btn-fill {
  background: #0B1F30 !important;
  color: #F5F0E8 !important;
  border-color: #0B1F30 !important;
}
#nps-enterprise #nps-platform .nps-btn-ghost {
  color: #0B1F30 !important;
  border-color: rgba(11,31,48,.28) !important;
}

/* Founder / contact */
#nps-enterprise #nps-about,
#nps-enterprise .nps-founder,
#nps-enterprise #nps-contact,
#nps-enterprise .nps-talk {
  padding: clamp(2.5rem, 6vw, 4.5rem) 7vw !important;
  border-top: 1px solid var(--line-on-navy) !important;
}

/* Cream consultation card — never cream-on-cream */
#nps-enterprise .nps-card {
  background: #F5F0E8 !important;
  color: #3C4F5E !important;
  overflow: visible !important;
  max-height: none !important;
  border-radius: 2px !important;
  box-shadow: none !important;
  border: 1px solid rgba(11,31,48,.12) !important;
}
#nps-enterprise .nps-card,
#nps-enterprise .nps-card h3,
#nps-enterprise .nps-card p,
#nps-enterprise .nps-card li,
#nps-enterprise .nps-card li span,
#nps-enterprise .nps-card .nps-note {
  color: #3C4F5E !important;
  opacity: 1 !important;
  visibility: visible !important;
}
#nps-enterprise .nps-card h3 {
  color: #13202B !important;
  font-family: var(--display) !important;
  font-weight: 400 !important;
  display: block !important;
}
#nps-enterprise .nps-card li b { color: #7D6146 !important; }
#nps-enterprise .nps-card .nps-kicker { color: #7D6146 !important; }
#nps-enterprise .nps-card ol {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.85rem !important;
  list-style: none !important;
  margin: 1rem 0 1.25rem !important;
  padding: 0 !important;
}
#nps-enterprise .nps-card li {
  display: flex !important;
  align-items: flex-start !important;
  gap: 0.75rem !important;
}
#nps-enterprise .nps-card li span {
  display: inline !important;
  flex: 1 1 auto !important;
  font-size: 0.95rem !important;
  line-height: 1.5 !important;
}
#nps-enterprise .nps-card .nps-btn-fill {
  background: #0B1F30 !important;
  color: #F5F0E8 !important;
  border-color: #0B1F30 !important;
}
#nps-enterprise .nps-card a:not(.nps-btn) { color: #7D6146 !important; }

/* Brandbar / logo / skip */
#nps-enterprise .nps-brandbar,
#nps-enterprise .nps-rail {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  filter: none !important;
  background: #0B1F30 !important;
  border-bottom: 1px solid var(--line-on-navy) !important;
}
#nps-enterprise .nps-logo img,
#nps-enterprise .nps-foot-logo img {
  filter: none !important;
  -webkit-filter: none !important;
  animation: none !important;
  height: 44px !important;
  width: auto !important;
  max-height: 44px !important;
}
@media (min-width: 960px) {
  #nps-enterprise .nps-logo img { height: 48px !important; max-height: 48px !important; }
}
#nps-enterprise a.nps-skip,
#nps-enterprise .nps-skip {
  position: absolute !important;
  width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important;
  overflow: hidden !important; clip: rect(0,0,0,0) !important; clip-path: inset(50%) !important;
  white-space: nowrap !important; border: 0 !important; transform: none !important;
  color: transparent !important; background: transparent !important; pointer-events: none !important;
  z-index: 5000 !important;
}
#nps-enterprise a.nps-skip:focus,
#nps-enterprise a.nps-skip:focus-visible,
#nps-enterprise .nps-skip:focus,
#nps-enterprise .nps-skip:focus-visible {
  position: fixed !important; top: 12px !important; left: 12px !important;
  width: auto !important; height: auto !important; padding: 12px 16px !important;
  margin: 0 !important; overflow: visible !important; clip: auto !important; clip-path: none !important;
  white-space: normal !important; background: #F5F0E8 !important; color: #0B1F30 !important;
  border-radius: 2px !important; pointer-events: auto !important; z-index: 5000 !important;
}

/* Chapter dots — dusk not ember */
#nps-enterprise .nps-chapters a.is-here,
#nps-enterprise .nps-chapters a:hover {
  background: #C4A484 !important;
  border-color: #C4A484 !important;
}

:is(.home,.page-id-24,.page-id-38,.page-id-383,.page-id-91,.page-id-495)
  :is(.nv-page-title-wrap,.neve-breadcrumbs-wrapper){display:none!important}
:is(.home,.page-id-24,.page-id-38,.page-id-383,.page-id-91,.page-id-495),
:is(.home,.page-id-24,.page-id-38,.page-id-383,.page-id-91,.page-id-495)
  :is(.neve-main,.nv-content-wrap,.elementor){background:#0B1F30!important}
.nps-page{
  --ember:#C4A484!important;
  --display:"Instrument Serif",Georgia,serif!important;
  --sans:"Instrument Sans",system-ui,sans-serif!important;
  background:#0B1F30!important;color:#F5F0E8!important;
  font-family:var(--sans)!important;
}
.nps-page h1,.nps-page h2,.nps-page h3{
  font-family:var(--display)!important;font-weight:400!important;text-transform:none!important;
}
.nps-page .btn-fill, .nps-page button[type=submit]{
background:#F5F0E8!important;color:#0B1F30!important;border:1px solid #F5F0E8!important;border-radius:2px!important;
}
.nps-page .btn-fill:hover, .nps-page button[type=submit]:hover{background:#E8E0D0!important;border-color:#E8E0D0!important;}
.nps-page .acts .btn:not(.btn-fill){background:transparent!important;color:#F5F0E8!important;border:1px solid rgba(245,240,232,.4)!important;border-radius:2px!important;}
.nps-page .acts .btn:not(.btn-fill):hover{border-color:#C4A484!important;}

/* P0 craft extras — hero chrome + portfolio wall */
#nps-enterprise .nps-hero-meta,
#nps-enterprise .nps-stats,
#nps-enterprise dl.nps-stats,
#nps-enterprise .nps-stat,
#nps-enterprise .nps-work,
#nps-enterprise section.nps-work,
#nps-enterprise .nps-switch,
#nps-enterprise #nps-advise,
#nps-enterprise #nps-build,
#nps-enterprise #nps-operate,
#nps-enterprise .nps-field { display: none !important; }

/* Sentence-case bill titles already OK; soft number scale */
#nps-enterprise .nps-bill > i {
  font-size: 0.75rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.1em !important;
  padding-top: 0.35rem !important;
}

/* Soft motion kill */
#nps-enterprise *,
#nps-enterprise *::before,
#nps-enterprise *::after {
  animation: none !important;
  transition: color .2s ease, border-color .2s ease, background .2s ease, opacity .2s ease !important;
}


/* === 2026-09-23: AA contrast on cream (#7D6146 = 5.0:1 on #F5F0E8); hide theme footer on home (custom footer present) === */
body.home #site-footer { display: none !important; }
/* Heading hierarchy: card + platform titles were smaller than body text */
#nps-enterprise .nps-card h3 { font-size: clamp(1.5rem, 3vw, 1.85rem) !important; line-height: 1.15 !important; margin: .35rem 0 .6rem !important; }
#nps-enterprise .nps-work-card h3 { font-size: clamp(1.35rem, 2.4vw, 1.6rem) !important; line-height: 1.2 !important; }
