:root {
  --navy: #0b1f3a;
  --orange: #f39a3f;
  --cream: #f7f3ec;
  --ink: #101828;
}

html { scroll-behavior: smooth; }
body.wealth-theme { margin: 0; }
.wealth-home,
.wealth-home * { box-sizing: border-box; }
.wealth-home {
  background: #fff;
  color: var(--ink);
  font-family: Arial, Helvetica, sans-serif;
  line-height: 1.4;
  overflow: hidden;
}
.wealth-home a { color: inherit; text-decoration: none; }
.wealth-home h1,
.wealth-home h2,
.wealth-home h3,
.wealth-home p,
.wealth-home blockquote { margin-top: 0; }
.wealth-home img { max-width: 100%; }
.wealth-home [id] { scroll-margin-top: 100px; }
.sr-only {
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.site-header {
  align-items: center;
  background: rgba(255,255,255,.97);
  border-bottom: 1px solid #dedbd5;
  display: grid;
  grid-template-columns: 210px 1fr auto;
  min-height: 90px;
  padding: 12px clamp(22px,5vw,76px);
  position: sticky;
  top: 0;
  z-index: 50;
}
.brand img {
  display: block;
  height: 62px;
  object-fit: contain;
  object-position: left center;
  width: 126px;
}
.site-header nav { display: flex; gap: 30px; justify-content: center; }
.site-header nav a,
.header-cta { font-size: 13px; font-weight: 800; }
.site-header nav a { color: #515966; }
.header-cta {
  align-items: center;
  background: var(--navy);
  border-radius: 999px;
  color: #fff !important;
  display: inline-flex;
  gap: 12px;
  padding: 14px 20px;
}
.menu-toggle {
  background: transparent;
  border: 0;
  cursor: pointer;
  display: none;
  height: 44px;
  padding: 10px;
  width: 44px;
}
.menu-toggle > span:not(.sr-only) {
  background: var(--navy);
  display: block;
  height: 2px;
  margin: 5px 0;
  width: 24px;
}

.hero {
  background: var(--navy);
  color: #fff;
  display: grid;
  gap: clamp(42px,7vw,100px);
  grid-template-columns: minmax(0,1.13fr) minmax(360px,.87fr);
  min-height: 720px;
  overflow: hidden;
  padding: clamp(72px,8vw,120px) clamp(24px,6vw,92px);
  position: relative;
}
.hero::before {
  background: radial-gradient(circle,rgba(243,154,63,.16),transparent 62%);
  content: "";
  height: 760px;
  position: absolute;
  right: -180px;
  top: -250px;
  width: 760px;
}
.hero-orbit {
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 50%;
  pointer-events: none;
  position: absolute;
}
.orbit-one { height: 520px; right: -70px; top: -70px; width: 520px; }
.orbit-two { height: 350px; right: 15px; top: 15px; width: 350px; }
.spark { color: var(--orange); display: inline-block; }
.hero > .spark { font-size: 18px; position: absolute; }
.spark-one { right: 11%; top: 13%; }
.spark-two { font-size: 10px !important; right: 31%; top: 27%; }
.spark-three { bottom: 16%; right: 5%; }
.hero-copy { align-self: center; max-width: 840px; position: relative; z-index: 2; }
.eyebrow {
  color: var(--orange);
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .17em;
  margin: 0 0 22px;
}
.eyebrow.dark { color: #c96d19; }
.hero h1 {
  color: #fff;
  font-size: clamp(58px,7vw,106px);
  font-weight: 500;
  letter-spacing: -.065em;
  line-height: .92;
  margin-bottom: 32px;
  max-width: 920px;
}
.hero h1 span { color: var(--orange); display: block; }
.hero-lede {
  color: #d6dce5;
  font-size: clamp(18px,1.55vw,23px);
  line-height: 1.6;
  max-width: 760px;
}
.hero-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 28px; margin-top: 38px; }
.button {
  align-items: center;
  border-radius: 999px;
  display: inline-flex;
  font-size: 14px;
  font-weight: 900;
  gap: 16px;
  justify-content: center;
  padding: 17px 24px;
}
.button-primary { background: var(--orange); color: var(--navy) !important; }
.text-link {
  border-bottom: 1px solid rgba(255,255,255,.35);
  color: #fff !important;
  font-size: 14px;
  font-weight: 800;
  padding-bottom: 5px;
}
.launch-note {
  align-items: center;
  color: #9faabd;
  display: flex;
  flex-wrap: wrap;
  font-size: 10px;
  font-weight: 800;
  gap: 12px;
  letter-spacing: .1em;
  margin: 40px 0 0;
  text-transform: uppercase;
}
.launch-note > span { background: var(--orange); border-radius: 50%; height: 5px; width: 5px; }
.manifesto-card {
  align-self: center;
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 32px;
  padding: clamp(32px,4vw,54px);
  position: relative;
  z-index: 2;
}
.card-kicker { color: var(--orange); font-size: 10px; font-weight: 900; letter-spacing: .16em; }
.manifesto-card blockquote {
  color: #fff;
  font-size: clamp(34px,4vw,56px);
  font-weight: 800;
  letter-spacing: -.045em;
  line-height: 1.06;
  margin: 48px 0;
}
.scripture-rule { background: var(--orange); height: 3px; margin-bottom: 24px; width: 46px; }
.manifesto-card .scripture { color: #c8d0db; font-family: Georgia,serif; font-size: 16px; line-height: 1.65; }
.manifesto-card cite { color: var(--orange); font-size: 10px; font-style: normal; font-weight: 900; letter-spacing: .13em; }

.origin-strip {
  align-items: center;
  background: var(--orange);
  display: flex;
  gap: 24px;
  justify-content: center;
  overflow: hidden;
  padding: 24px;
}
.origin-strip p { font-size: 11px; font-weight: 900; letter-spacing: .13em; margin: 0; white-space: nowrap; }
.origin-strip span { font-size: 10px; }

.story-section,
.onboarding-section { padding: clamp(82px,9vw,138px) clamp(24px,6vw,92px); }
.section-heading {
  align-items: end;
  display: grid;
  gap: 70px;
  grid-template-columns: minmax(0,1.4fr) minmax(310px,.6fr);
  margin-bottom: 64px;
}
.wealth-home h2 {
  color: var(--ink);
  font-size: clamp(43px,5.2vw,78px);
  font-weight: 500;
  letter-spacing: -.055em;
  line-height: 1;
  margin-bottom: 0;
}
.section-intro > p:first-child,
.onboarding-heading > p { color: #667085; font-size: 17px; line-height: 1.65; }
.verse-note {
  color: #c96d19;
  font-family: Georgia,serif;
  font-size: 14px;
  font-style: italic;
  line-height: 1.55;
  margin-bottom: 0;
}
.story-steps { border-top: 1px solid #dedbd5; list-style: none; margin: 0; padding: 0; }
.story-steps li {
  align-items: start;
  border-bottom: 1px solid #dedbd5;
  display: grid;
  gap: 44px;
  grid-template-columns: 90px 1fr;
  padding: 34px 0;
}
.story-number { color: #c96d19; font-size: 12px; font-weight: 900; padding-top: 8px; }
.story-steps li > div {
  align-items: start;
  display: grid;
  gap: 40px;
  grid-template-columns: minmax(180px,.45fr) minmax(300px,1fr);
}
.story-steps h3 {
  color: var(--ink);
  font-size: clamp(27px,2.5vw,40px);
  font-weight: 600;
  letter-spacing: -.035em;
  margin: 0;
}
.story-steps p { color: #667085; font-size: 15px; line-height: 1.65; margin: 0; max-width: 720px; }

.plan-section {
  background: var(--cream);
  display: grid;
  gap: clamp(60px,9vw,140px);
  grid-template-columns: minmax(320px,.88fr) minmax(520px,1.12fr);
  padding: clamp(82px,10vw,150px) clamp(24px,6vw,92px);
}
.plan-statement { align-self: start; position: sticky; top: 130px; }
.plan-statement h2 { font-size: clamp(42px,4.8vw,70px); }
.plan-statement > p:last-child { color: #667085; font-size: 17px; line-height: 1.7; margin-top: 30px; }
.plan-principles { border-top: 1px solid #d9d3ca; }
.plan-principles article {
  border-bottom: 1px solid #d9d3ca;
  display: grid;
  gap: 22px;
  grid-template-columns: 42px 160px 1fr;
  padding: 31px 0;
}
.plan-principles article > span { color: #c96d19; font-size: 11px; font-weight: 900; padding-top: 3px; }
.plan-principles h3 { color: var(--ink); font-size: 15px; letter-spacing: .08em; margin: 0; }
.plan-principles p { color: #667085; font-size: 14px; line-height: 1.6; margin: 0; }

.wealth-question {
  background: var(--orange);
  padding: clamp(70px,8vw,116px) clamp(24px,10vw,170px);
  text-align: center;
}
.wealth-question .eyebrow { color: var(--navy); }
.wealth-question h2 { margin: 0 auto; max-width: 1120px; }
.wealth-question > p:not(.eyebrow):not(.verse-note) {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
  margin: 28px auto 18px;
  max-width: 800px;
}
.wealth-question .verse-note { color: var(--navy); }

.ecosystem-section { background: #fff; padding: clamp(82px,10vw,150px) clamp(24px,6vw,92px); }
.ecosystem-intro { margin: 0 auto 80px; max-width: 900px; text-align: center; }
.ecosystem-intro p:last-child { color: #667085; font-size: 17px; line-height: 1.65; margin: 28px auto 0; max-width: 710px; }
.ecosystem-orbit { min-height: 720px; position: relative; }
.ecosystem-orbit::before,
.ecosystem-orbit::after {
  border: 1px solid #dedbd5;
  border-radius: 50%;
  content: "";
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%,-50%);
}
.ecosystem-orbit::before { height: 640px; width: 640px; }
.ecosystem-orbit::after { height: 420px; width: 420px; }
.ecosystem-center {
  align-items: center;
  background: var(--navy);
  border: 12px solid var(--cream);
  border-radius: 50%;
  color: #fff;
  display: flex;
  flex-direction: column;
  height: 280px;
  justify-content: center;
  left: 50%;
  position: absolute;
  text-align: center;
  top: 50%;
  transform: translate(-50%,-50%);
  width: 280px;
  z-index: 3;
}
.ecosystem-center .spark { font-size: 25px; margin-bottom: 4px; }
.ecosystem-center strong { color: var(--orange); font-size: 64px; letter-spacing: -.06em; line-height: 1; }
.ecosystem-center > span:last-child { font-size: 9px; font-weight: 900; letter-spacing: .14em; line-height: 1.5; margin-top: 10px; }
.ecosystem-card {
  background: #fff;
  border: 1px solid #dedbd5;
  border-radius: 22px;
  max-width: 330px;
  padding: 26px;
  position: absolute;
  width: 29%;
  z-index: 4;
}
.ecosystem-card > p { color: #c96d19; font-size: 9px; font-weight: 900; letter-spacing: .14em; margin-bottom: 18px; }
.ecosystem-card h3 { color: var(--ink); font-size: 24px; letter-spacing: -.03em; margin-bottom: 10px; }
.ecosystem-card > span { color: #667085; font-size: 13px; line-height: 1.55; }
.card-one { left: 4%; top: 8%; }
.card-two { right: 4%; top: 8%; }
.card-three { bottom: 8%; left: 4%; }
.card-four { bottom: 8%; right: 4%; }

.onboarding-section { background: var(--cream); }
.path-grid { display: grid; gap: 16px; grid-template-columns: repeat(3,1fr); }
.path-card {
  background: #fff;
  border: 1px solid #e2ddd5;
  border-radius: 24px;
  display: flex;
  flex-direction: column;
  min-height: 550px;
  padding: clamp(28px,3vw,42px);
}
.path-card.path-featured { background: var(--navy); color: #fff; }
.path-topline {
  align-items: center;
  border-bottom: 1px solid #dedbd5;
  display: flex;
  justify-content: space-between;
  padding-bottom: 22px;
}
.path-featured .path-topline { border-color: #344863; }
.path-topline span { color: #c96d19; font-size: 12px; font-weight: 900; }
.path-featured .path-topline span { color: var(--orange); }
.path-topline p { font-size: 10px; font-weight: 900; letter-spacing: .14em; margin: 0; }
.path-card h3 {
  color: var(--ink);
  font-size: clamp(29px,2.8vw,42px);
  font-weight: 500;
  letter-spacing: -.045em;
  line-height: 1.05;
  margin: 48px 0 22px;
}
.path-featured h3 { color: #fff; }
.path-copy { color: #667085; font-size: 14px; line-height: 1.65; }
.path-featured .path-copy { color: #bbc5d2; }
.path-tools {
  color: #c96d19;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .06em;
  line-height: 1.6;
  margin-top: auto;
  padding-top: 32px;
}
.path-featured .path-tools { color: var(--orange); }
.path-card > a {
  align-items: center;
  border-top: 1px solid #dedbd5;
  display: flex;
  font-size: 13px;
  font-weight: 900;
  justify-content: space-between;
  margin-top: 18px;
  padding-top: 19px;
}
.path-featured > a { border-color: #344863; color: #fff; }

.invitation-section {
  align-items: center;
  background: var(--navy);
  color: #fff;
  display: grid;
  gap: 70px;
  grid-template-columns: 1fr auto;
  padding: clamp(70px,9vw,126px) clamp(24px,6vw,92px);
}
.invitation-section > div { max-width: 940px; }
.invitation-section h2 { color: #fff; font-size: clamp(43px,5.3vw,78px); }
.invitation-section > div > p:not(.eyebrow):not(.verse-note) { color: #bcc6d3; font-size: 17px; line-height: 1.65; margin: 28px 0 20px; max-width: 730px; }
.verse-note.light { color: var(--orange); }

.wealth-home > footer {
  align-items: start;
  background: #fff;
  border-top: 1px solid #dedbd5;
  display: grid;
  gap: 55px;
  grid-template-columns: 220px 1fr 220px;
  padding: 52px clamp(24px,6vw,92px);
}
.footer-brand img { height: 72px; object-fit: contain; object-position: left center; width: 145px; }
.footer-brand p { font-size: 11px; font-weight: 900; margin: 10px 0 0; }
.footer-disclaimer { color: #667085; font-size: 11px; line-height: 1.65; }
.footer-links { display: flex; flex-direction: column; font-size: 12px; font-weight: 800; gap: 14px; }

.button,
.header-cta,
.text-link,
.site-header nav a,
.footer-links a,
.path-card > a { transition: opacity 150ms ease,transform 150ms ease; }
.button:hover,
.header-cta:hover { transform: translateY(-2px); }
.text-link:hover,
.site-header nav a:hover,
.footer-links a:hover,
.path-card > a:hover { opacity: .62; }
.wealth-home a:focus-visible,
.wealth-home button:focus-visible { outline: 3px solid #c96d19; outline-offset: 4px; }

@media (max-width:1080px) {
  .site-header { grid-template-columns: 1fr auto auto; gap: 14px; }
  .menu-toggle { display: block; grid-column: 2; }
  .site-header nav {
    background: #fff;
    border-bottom: 1px solid #dedbd5;
    display: none;
    flex-direction: column;
    gap: 0;
    left: 0;
    padding: 10px clamp(22px,5vw,76px) 22px;
    position: absolute;
    right: 0;
    top: 100%;
  }
  .site-header nav.is-open { display: flex; }
  .site-header nav a { border-top: 1px solid #eee; padding: 14px 0; }
  .hero,
  .plan-section { grid-template-columns: 1fr; }
  .manifesto-card { max-width: 740px; }
  .plan-statement { position: static; }
  .path-grid { grid-template-columns: 1fr; }
  .path-card { min-height: 0; }
  .ecosystem-orbit { min-height: 950px; }
  .ecosystem-card { max-width: none; width: 38%; }
  .card-one { left: 2%; top: 3%; }
  .card-two { right: 2%; top: 3%; }
  .card-three { bottom: 3%; left: 2%; }
  .card-four { bottom: 3%; right: 2%; }
}

@media (max-width:740px) {
  .site-header { min-height: 78px; padding-left: 18px; padding-right: 18px; }
  .brand img { height: 52px; width: 110px; }
  .header-cta { font-size: 0; height: 44px; padding: 0; width: 44px; }
  .header-cta span { font-size: 18px; margin: auto; }
  .hero { grid-template-columns: minmax(0,1fr); min-height: 0; padding-top: 68px; }
  .hero h1 { font-size: clamp(52px,15vw,75px); }
  .manifesto-card blockquote { margin: 36px 0; }
  .origin-strip { justify-content: flex-start; }
  .origin-strip p:nth-of-type(2),
  .origin-strip p:nth-of-type(3),
  .origin-strip span:nth-of-type(2) { display: none; }
  .section-heading,
  .story-steps li > div,
  .plan-principles article,
  .invitation-section,
  .wealth-home > footer { grid-template-columns: 1fr; }
  .section-heading { align-items: start; gap: 28px; }
  .story-steps li { gap: 20px; grid-template-columns: 38px 1fr; }
  .story-steps li > div { gap: 12px; }
  .plan-principles article { gap: 9px; }
  .ecosystem-orbit { display: grid; gap: 14px; min-height: 0; }
  .ecosystem-orbit::before,
  .ecosystem-orbit::after { display: none; }
  .ecosystem-center { height: 230px; margin: 0 auto 12px; position: static; transform: none; width: 230px; }
  .ecosystem-card { max-width: none; position: static; width: 100%; }
  .invitation-section { align-items: start; }
  .invitation-section .button { width: 100%; }
}

@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior: auto; }
  .wealth-home * { transition: none !important; }
}
