:root {
  --wealth-green: #1f5b4b;
  --wealth-green-dark: #123d34;
  --wealth-mint: #dfece5;
  --wealth-blush: #f0ddd9;
}

.wealth-page h1,
.wealth-page h2,
.wealth-page h3 { color: var(--navy-950); }

.wealth-hero {
  min-height: 720px;
  display: grid;
  grid-template-columns: minmax(560px, 1.04fr) minmax(480px, .96fr);
  color: white;
  background:
    radial-gradient(circle at 22% 88%, rgba(31,91,75,.42), transparent 32%),
    var(--navy-900);
  overflow: hidden;
}

.wealth-hero-copy {
  padding: clamp(5rem, 9vw, 9rem) clamp(2rem, 7vw, 8rem);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.wealth-hero .eyebrow { color: var(--gold); }
.wealth-hero h1 { max-width: 820px; color: white; }
.wealth-hero h1 em { color: var(--gold); font-style: normal; }
.wealth-hero .hero-lead { max-width: 760px; color: #d5e0e6; font-size: clamp(1.04rem, 1.45vw, 1.25rem); line-height: 1.75; }
.hero-quote { max-width: 660px; margin: 1rem 0 0; padding: 1.2rem 1.35rem; color: white; background: rgba(255,255,255,.06); border-left: 4px solid var(--gold); font-family: var(--serif); font-size: 1.25rem; }

.wealth-hero-art { min-height: 720px; margin: 0; position: relative; overflow: hidden; background: var(--cream); }
.wealth-hero-art img { width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; object-position: 50% 46%; transform: scale(1.02); }
.wealth-hero-art::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(6,29,50,.26), transparent 24%); }
.wealth-hero-art figcaption { position: absolute; z-index: 2; left: 2rem; right: 2rem; bottom: 1.65rem; color: white; font-family: var(--serif); font-size: 1.12rem; text-align: center; }

.jump-nav { min-height: 64px; padding: .7rem 1.2rem; display: flex; align-items: center; justify-content: center; gap: clamp(.8rem, 3vw, 3.2rem); position: sticky; z-index: 10; top: 0; background: rgba(251,250,246,.96); border-bottom: 1px solid var(--line); box-shadow: 0 6px 20px rgba(4,22,37,.06); }
.jump-nav a { color: var(--navy-800); font-size: .68rem; font-weight: 800; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }

.wealth-truth { padding: 1rem clamp(1.5rem, 7vw, 8rem); display: grid; grid-template-columns: repeat(3, 1fr); align-items: center; color: var(--navy-950); background: var(--gold); font-size: .84rem; font-weight: 700; }
.wealth-truth > * { padding: .45rem 1rem; text-align: center; }
.wealth-truth strong { border-left: 1px solid rgba(4,22,37,.28); border-right: 1px solid rgba(4,22,37,.28); font-family: var(--serif); font-size: 1.1rem; }

.wealth-intro,
.trajectory-section,
.account-section,
.how-section,
.ownership-section,
.foundation-section,
.model-section,
.review-section,
.documents-section { padding: clamp(5rem, 9vw, 9rem) clamp(1.5rem, 7vw, 8rem); }

.wealth-intro { display: grid; grid-template-columns: minmax(430px, .92fr) minmax(520px, 1.08fr); gap: clamp(3rem, 8vw, 9rem); background: var(--cream); }
.wealth-intro h2 { max-width: 720px; }
.intro-copy > p { color: var(--muted); font-size: 1.03rem; }
.intro-copy blockquote { margin: 2rem 0 0; padding: 1.4rem 0 1.4rem 1.6rem; color: var(--navy-800); border-left: 4px solid var(--gold); font-family: var(--serif); font-size: clamp(1.45rem, 2.2vw, 2rem); line-height: 1.25; }

.trajectory-section { background: white; }
.trajectory-heading { display: grid; grid-template-columns: minmax(460px, .9fr) minmax(500px, 1.1fr); gap: clamp(3rem, 8vw, 8rem); align-items: end; }
.trajectory-frame { max-width: 1230px; margin: auto; background: white; border: 1px solid var(--line); box-shadow: var(--shadow); }
.trajectory-frame a, .trajectory-frame img { display: block; width: 100%; }
.trajectory-frame figcaption { padding: 1.2rem 1.4rem; display: flex; justify-content: space-between; gap: 1rem; align-items: center; border-top: 1px solid var(--line); }
.trajectory-frame figcaption strong { font-family: var(--serif); font-size: 1.1rem; }
.trajectory-frame figcaption span { color: var(--muted); font-size: .72rem; }

.numbers-band { display: grid; grid-template-columns: repeat(4, 1fr); color: white; background: var(--wealth-green-dark); border-top: 1px solid rgba(255,255,255,.15); }
.numbers-band article { min-height: 220px; padding: clamp(2rem, 4vw, 4rem); display: flex; flex-direction: column; justify-content: center; border-right: 1px solid rgba(255,255,255,.15); }
.numbers-band article:last-child { border-right: 0; }
.numbers-band strong { color: var(--gold-light); font-family: var(--serif); font-size: clamp(2.2rem, 4vw, 4rem); line-height: 1; }
.numbers-band span { margin-top: 1.1rem; color: #dce8e3; font-size: .78rem; }

.account-section { display: grid; grid-template-columns: minmax(420px, .86fr) minmax(560px, 1.14fr); gap: clamp(3rem, 8vw, 8rem); align-items: center; background: var(--paper); }
.account-copy > p:not(.eyebrow) { max-width: 700px; color: var(--muted); }
.model-note { padding-left: 1.1rem; border-left: 3px solid var(--gold); font-size: .86rem; }
.growth-tool { padding: clamp(2rem, 4vw, 3.5rem); color: white; background: var(--navy-900); box-shadow: var(--shadow); }
.growth-tool-top { display: flex; justify-content: space-between; gap: 1rem; align-items: flex-end; }
.growth-tool label { color: #d7e1e8; font-size: .82rem; font-weight: 700; }
.growth-tool output { color: var(--gold); font-family: var(--serif); font-size: 2.2rem; font-weight: 700; }
.growth-tool input[type="range"] { width: 100%; margin: 1.4rem 0 .4rem; accent-color: var(--gold); }
.growth-scale { display: flex; justify-content: space-between; color: #91a4b2; font-size: .65rem; }
.balance-result { margin-top: 2.6rem; padding-top: 2rem; display: grid; border-top: 1px solid rgba(255,255,255,.16); }
.balance-result span { color: #afbfca; font-size: .74rem; text-transform: uppercase; letter-spacing: .1em; }
.balance-result strong { margin-top: .35rem; color: white; font-family: var(--serif); font-size: clamp(3rem, 5vw, 5rem); line-height: 1; }
.balance-breakdown { margin: 2rem 0 1rem; display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; }
.balance-breakdown div { padding: 1rem; background: rgba(255,255,255,.055); }
.balance-breakdown span, .balance-breakdown strong { display: block; }
.balance-breakdown span { color: #9eb0bd; font-size: .68rem; }
.balance-breakdown strong { margin-top: .3rem; color: var(--gold-light); font-family: var(--serif); font-size: 1.45rem; }
.growth-bar { height: 12px; display: flex; overflow: hidden; background: rgba(255,255,255,.1); }
.growth-bar span:first-child { background: var(--gold); }
.growth-bar span:last-child { background: var(--wealth-green); }
.growth-tool > p { margin: 1rem 0 0; color: #9eb0bd; font-size: .68rem; }

.how-section { background: var(--cream); }
.wealth-heading { max-width: 1230px; margin: 0 auto clamp(3rem, 6vw, 5rem); }
.wealth-heading > p, .wealth-heading > div:last-child > p { color: var(--muted); }
.how-grid { max-width: 1230px; margin: 0 auto; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); list-style: none; border-top: 1px solid #cbc9c0; border-left: 1px solid #cbc9c0; }
.how-grid li { min-height: 330px; padding: clamp(1.7rem, 3.2vw, 3rem); background: rgba(255,255,255,.55); border-right: 1px solid #cbc9c0; border-bottom: 1px solid #cbc9c0; }
.how-grid li > span { color: #96670a; font-size: .7rem; font-weight: 800; letter-spacing: .18em; }
.how-grid h3 { margin: 3.6rem 0 1rem; font-size: clamp(1.7rem, 2.4vw, 2.25rem); }
.how-grid p { color: var(--muted); font-size: .84rem; }

.ownership-section { display: grid; grid-template-columns: minmax(500px, 1fr) minmax(460px, .9fr); gap: clamp(3rem, 8vw, 8rem); background: var(--paper); }
.ownership-copy > p:not(.eyebrow) { color: var(--muted); }
.use-list { margin: 2rem 0 0; padding: 0; display: grid; grid-template-columns: repeat(2, 1fr); gap: .8rem; list-style: none; }
.use-list li { padding: 1rem 1.1rem 1rem 2.3rem; position: relative; color: var(--navy-800); background: var(--wealth-mint); font-size: .82rem; font-weight: 700; }
.use-list li::before { content: "✓"; position: absolute; left: 1rem; color: var(--wealth-green); }
.transfer-card { padding: clamp(2rem, 4.5vw, 4rem); color: white; background: var(--navy-900); box-shadow: var(--shadow); }
.transfer-card .eyebrow { color: var(--gold); }
.transfer-card h3 { color: white; }
.transfer-card > p:not(.eyebrow) { color: #c9d7df; }
.transfer-flow { margin-top: 2rem; display: grid; grid-template-columns: 1fr auto 1fr auto 1fr; gap: .6rem; align-items: center; }
.transfer-flow span { min-height: 86px; padding: .7rem; display: grid; place-items: center; color: var(--navy-950); background: var(--gold); font-size: .68rem; font-weight: 800; text-align: center; }
.transfer-flow b { color: var(--gold-light); }

.foundation-section { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: clamp(3rem, 7vw, 7rem); align-items: center; color: white; background: var(--wealth-green-dark); }
.foundation-mark { width: 230px; height: 230px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; box-shadow: 0 0 0 28px rgba(229,182,68,.07), 0 0 0 56px rgba(229,182,68,.035); color: var(--gold); font-family: var(--serif); font-size: 4rem; font-weight: 700; }
.foundation-section .eyebrow { color: var(--gold); }
.foundation-section h2 { color: white; }
.foundation-section p { max-width: 900px; color: #d4e1dc; }
.foundation-section .text-link { margin: 0; padding: .9rem 0; color: white; border: 0; }

.model-section { background: var(--paper); }
.model-section .wealth-heading > div:last-child { align-self: end; }
.model-section .wealth-heading .button { margin-top: 1rem; }
.milestone-table-wrap { max-width: 1230px; margin: 0 auto; overflow-x: auto; box-shadow: 0 10px 30px rgba(4,22,37,.06); }
.milestone-table { width: 100%; min-width: 840px; border-collapse: collapse; background: white; }
.milestone-table caption { padding: 1.1rem 1.3rem; color: white; background: var(--navy-900); font-family: var(--serif); font-size: 1.3rem; text-align: left; }
.milestone-table th, .milestone-table td { padding: 1.1rem 1.2rem; border: 1px solid var(--line); font-size: .78rem; text-align: center; }
.milestone-table thead th { color: var(--navy-800); background: var(--cream); font-size: .67rem; letter-spacing: .06em; text-transform: uppercase; }
.milestone-table tbody th { text-align: left; }
.milestone-table tr.featured { color: white; background: var(--wealth-green); }
.milestone-table tr.featured th, .milestone-table tr.featured td { border-color: rgba(255,255,255,.18); }
.table-note { max-width: 1230px; margin: 1rem auto 3.5rem; color: var(--muted); font-size: .72rem; }
.chart-gallery { max-width: 1230px; margin: auto; }
.chart-tabs { display: flex; flex-wrap: wrap; gap: .5rem; }
.chart-tabs button { min-height: 44px; padding: .7rem 1rem; color: var(--navy-800); background: var(--cream); border: 1px solid var(--line); font: 700 .68rem var(--sans); cursor: pointer; }
.chart-tabs button.is-active { color: var(--navy-950); background: var(--gold); border-color: var(--gold); }
.chart-stage { margin: .8rem 0 0; background: white; border: 1px solid var(--line); box-shadow: var(--shadow); }
.chart-stage > a { display: block; padding: 1.1rem; }
.chart-stage img { width: 100%; }
.chart-stage figcaption { padding: 1.3rem 1.5rem; display: grid; grid-template-columns: minmax(220px, .4fr) minmax(420px, 1fr) auto; gap: 1.2rem; align-items: center; border-top: 1px solid var(--line); }
.chart-stage figcaption strong { font-family: var(--serif); font-size: 1.25rem; }
.chart-stage figcaption span { color: var(--muted); font-size: .75rem; }
.chart-stage figcaption small { color: #96670a; font-size: .63rem; font-weight: 800; }

.review-section { display: grid; grid-template-columns: minmax(420px, .9fr) minmax(520px, 1.1fr); gap: clamp(3rem, 8vw, 9rem); background: var(--wealth-blush); }
.review-section > div:last-child > p { color: #4e5e69; }
.review-section .text-link { display: inline-block; margin-top: 1rem; border-color: rgba(16,36,52,.18); }

.documents-section { background: var(--cream); }
.download-grid { max-width: 1230px; margin: 0 auto 4rem; display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid #c9c7bf; border-left: 1px solid #c9c7bf; }
.download-grid a { min-height: 260px; padding: 2rem; display: flex; flex-direction: column; text-decoration: none; background: rgba(255,255,255,.55); border-right: 1px solid #c9c7bf; border-bottom: 1px solid #c9c7bf; }
.download-grid span { color: #96670a; font-size: .64rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.download-grid strong { margin-top: auto; font-family: var(--serif); font-size: 1.45rem; line-height: 1.12; }
.download-grid small { margin-top: .7rem; color: var(--muted); }
.proposal-preview { max-width: 1230px; margin: auto; display: grid; grid-template-columns: minmax(260px, .32fr) minmax(650px, 1fr); gap: 2rem; align-items: start; }
.proposal-cover { display: block; color: inherit; background: white; border: 1px solid #d1d1cb; box-shadow: var(--shadow); text-decoration: none; transform: rotate(-1deg); }
.proposal-cover img { width: 100%; }
.proposal-cover > span { padding: 1rem 1.1rem; display: flex; justify-content: space-between; gap: .8rem; align-items: center; }
.proposal-cover strong { font-family: var(--serif); line-height: 1.1; }
.proposal-cover small { color: var(--muted); white-space: nowrap; }
.pdf-frame { height: min(900px, 78vh); overflow: hidden; background: #d5d8da; border: 1px solid #c3c5c6; box-shadow: var(--shadow); }
.pdf-frame object { width: 100%; height: 100%; }
.pdf-frame p { padding: 2rem; }

.wealth-closing { background: linear-gradient(135deg, var(--navy-950), var(--wealth-green-dark)); }
.wealth-closing h2 { color: white; }

@media (max-width: 1120px) {
  .wealth-hero { grid-template-columns: 1fr; }
  .wealth-hero-art { min-height: 680px; }
  .wealth-hero-art img { transform: none; object-position: 50% 45%; }
  .wealth-intro, .trajectory-heading, .account-section, .ownership-section, .review-section { grid-template-columns: 1fr; }
  .numbers-band, .how-grid, .download-grid { grid-template-columns: repeat(2, 1fr); }
  .foundation-section { grid-template-columns: 190px 1fr; }
  .foundation-mark { width: 170px; height: 170px; }
  .proposal-preview { grid-template-columns: minmax(240px, .4fr) minmax(520px, 1fr); }
}

@media (max-width: 720px) {
  .wealth-hero { min-height: 0; }
  .wealth-hero-copy { padding: 4.6rem 1.4rem 4rem; }
  .wealth-hero-art { min-height: 510px; }
  .wealth-hero-art img { transform: none; object-position: 50% 45%; }
  .jump-nav { min-height: 58px; padding: .55rem .8rem; justify-content: flex-start; overflow-x: auto; }
  .jump-nav a { flex: 0 0 auto; padding: .4rem .5rem; }
  .wealth-truth { grid-template-columns: 1fr; padding: .9rem 1.4rem; }
  .wealth-truth strong { border: 0; border-top: 1px solid rgba(4,22,37,.25); border-bottom: 1px solid rgba(4,22,37,.25); }
  .wealth-intro, .trajectory-section, .account-section, .how-section, .ownership-section, .foundation-section, .model-section, .review-section, .documents-section { padding-left: 1.4rem; padding-right: 1.4rem; }
  .numbers-band, .how-grid, .download-grid { grid-template-columns: 1fr; }
  .numbers-band article { min-height: 165px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.15); }
  .balance-result strong { font-size: 3.3rem; }
  .balance-breakdown { grid-template-columns: 1fr; }
  .how-grid li { min-height: 0; }
  .how-grid h3 { margin-top: 2rem; }
  .use-list { grid-template-columns: 1fr; }
  .transfer-flow { grid-template-columns: 1fr; }
  .transfer-flow b { transform: rotate(90deg); text-align: center; }
  .foundation-section { grid-template-columns: 1fr; }
  .foundation-mark { margin: 1rem auto; }
  .model-section .wealth-heading .button { width: 100%; }
  .chart-tabs { display: grid; grid-template-columns: repeat(2, 1fr); }
  .chart-tabs button:last-child { grid-column: 1 / -1; }
  .chart-stage > a { padding: .3rem; overflow-x: auto; }
  .chart-stage img { min-width: 620px; }
  .chart-stage figcaption { grid-template-columns: 1fr; }
  .milestone-table-wrap { margin-left: -1.4rem; margin-right: -1.4rem; padding: 0 1.4rem; }
  .download-grid a { min-height: 190px; }
  .trajectory-frame figcaption { display: grid; }
  .proposal-preview { grid-template-columns: 1fr; }
  .proposal-cover { max-width: 390px; margin: auto; }
  .pdf-frame { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .wealth-hero-art img { transform: none; }
}
