/* ============================================================
   VALOREM WEALTH — design tokens, taken from the client deck's
   base.html. Do not introduce new colors; extend via these vars.
   ============================================================ */
:root{
  --paper:#FBF9F4;
  --cream:#F3EFE5;
  --ink:#17140F;
  --ink-2:#4A463C;
  --ink-3:#7A7568;
  --gold:#A8790F;
  --gold-lt:#C89B2C;
  --rule:#E2DBCB;
  --hair:#EFEADE;
  --dark:#100E0A;
  --dark-ink:#F3EFE5;
  --dark-ink-2:#B8B1A0;
  --dark-rule:#33302A;
  --serif:'Outfit',Helvetica,Arial,sans-serif;
  --sans:'Outfit',Helvetica,Arial,sans-serif;
  --max:1180px;
  --nav-h:76px;
}
*{box-sizing:border-box}
html{scroll-behavior:auto}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:var(--sans);font-size:16px;line-height:1.6;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
  font-variant-numeric:lining-nums;font-feature-settings:"lnum" 1;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{font-family:var(--serif);font-weight:400;color:var(--ink);margin:0;font-variant-numeric:lining-nums;font-feature-settings:"lnum" 1}
h3,h4{font-weight:500}
h1{font-size:clamp(34px,4.2vw,56px);line-height:1.08;letter-spacing:-.01em;max-width:40ch}
h2{font-size:clamp(26px,2.8vw,38px);line-height:1.12;letter-spacing:-.005em}
.two-col h2{font-size:clamp(24px,2.2vw,30px);line-height:1.16}
h1,h2{text-wrap:balance}
.two-col h2 + .lede,.two-col h2 + p{margin-top:16px}
.two-col .lede{font-size:17px;line-height:1.62}
h3{font-size:24px;line-height:1.2;font-weight:400}
p{margin:0 0 16px}
p:last-child{margin-bottom:0}
.container{max-width:var(--max);margin:0 auto;padding:0 32px}
.container-wide{max-width:1320px;margin:0 auto;padding:0 32px}
@media(max-width:640px){.container,.container-wide{padding:0 20px}}

.eyebrow{
  font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--gold);margin:0 0 16px;
}
.lede{font-size:19px;line-height:1.65;color:var(--ink-2);max-width:66ch}
.rule{height:1px;background:var(--rule);border:0;margin:0}
.hairline{height:1px;background:var(--hair);border:0;margin:0}

/* ---------- buttons / links ---------- */
.btn{
  display:inline-flex;align-items:center;gap:8px;
  font-family:var(--sans);font-size:14px;font-weight:600;
  padding:14px 26px;border-radius:2px;border:1px solid var(--ink);
  color:var(--ink);cursor:pointer;background:transparent;
  transition:background .15s,color .15s,border-color .15s;
}
.btn-gold{background:var(--gold);border-color:var(--gold);color:#FBF9F4}
.btn-gold:hover{background:#8E6608}
.btn-dark{border-color:var(--dark-ink);color:var(--dark-ink)}
.btn-dark:hover{background:var(--dark-ink);color:var(--dark)}
.btn:hover{background:var(--ink);color:var(--paper)}
.textlink{
  font-size:14px;font-weight:600;color:var(--gold);border-bottom:1px solid rgba(168,121,15,.35);
  padding-bottom:2px;display:inline-flex;align-items:center;gap:6px;
}
.textlink:hover{border-color:var(--gold)}
.textlink svg{width:11px;height:11px}

/* ---------- nav ---------- */
.nav{
  position:fixed;top:0;left:0;right:0;z-index:100;height:var(--nav-h);
  display:flex;align-items:center;background:var(--paper);
  border-bottom:1px solid transparent;
  transition:border-color .2s,background .2s;
}
.nav.scrolled{border-bottom-color:var(--rule)}
.nav-inner{
  max-width:1320px;margin:0 auto;width:100%;padding:0 32px;
  display:flex;align-items:center;justify-content:space-between;
}
.nav-logo img{height:40px;width:auto}
.nav-links{list-style:none;display:flex;gap:34px;margin:0;padding:0;align-items:center}
.nav-links a{font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--ink-2)}
.nav-links a:hover,.nav-links a.active{color:var(--ink)}
.nav-links .nav-cta{
  border:1px solid var(--ink);padding:9px 18px;color:var(--ink);
}
.nav-links .nav-cta:hover{background:var(--ink);color:var(--paper)}
.nav-toggle{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:8px}
.nav-toggle span{width:22px;height:1.5px;background:var(--ink)}
@media(max-width:900px){
  .nav-links{display:none}
  .nav-toggle{display:flex}
}
.mobile-menu{
  position:fixed;inset:0;background:var(--paper);z-index:99;
  display:none;flex-direction:column;padding:110px 32px 40px;
}
.mobile-menu.open{display:flex}
.mobile-menu a{font-family:var(--serif);font-size:30px;font-weight:400;padding:14px 0;border-bottom:1px solid var(--rule);color:var(--ink)}
.mobile-menu .btn{margin-top:24px;align-self:flex-start}

/* ---------- sections ---------- */
section{padding:96px 0}
section.tight{padding:64px 0}
section.cream{background:var(--cream)}
section.dark{background:var(--dark);color:var(--dark-ink)}
section.dark h1,section.dark h2,section.dark h3{color:var(--dark-ink)}
section.dark .lede{color:var(--dark-ink-2)}
section.dark .rule{background:var(--dark-rule)}
section.dark .eyebrow{color:var(--gold-lt)}
@media(max-width:640px){section{padding:64px 0}}

.section-head{margin-bottom:56px}
.section-head h2{max-width:60ch}
.section-head .lede{margin-top:18px}
.two-col{display:grid;grid-template-columns:5fr 7fr;gap:64px;align-items:center}
.two-col.top{align-items:start}
.two-col.chart-right{grid-template-columns:4fr 8fr;gap:56px}
@media(max-width:900px){.two-col,.two-col.chart-right{grid-template-columns:1fr;gap:40px}}

/* ---------- hero ---------- */
.hero{
  min-height:min(100vh,880px);display:flex;flex-direction:column;justify-content:flex-end;
  position:relative;background:var(--dark);color:var(--dark-ink);
  padding:calc(var(--nav-h) + 40px) 0 72px;overflow:hidden;
}
.hero video,.hero .hero-still{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.72;
}
.hero::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(16,14,10,.35) 0%,rgba(16,14,10,.12) 38%,rgba(16,14,10,.88) 100%);
}
.hero .container{position:relative;z-index:2}
.hero .eyebrow{color:var(--gold-lt)}
.hero h1{color:#fff;max-width:40ch}
.hero .lede{color:var(--dark-ink-2);margin-top:22px;max-width:62ch;font-size:19px}
.hero .hero-actions{display:flex;gap:16px;margin-top:34px;flex-wrap:wrap}
/* title-slide composition on Home: centered block, vertically centered */
.hero:has(.hero-center){justify-content:center;padding-top:var(--nav-h);padding-bottom:0}
.hero .hero-center{text-align:center;display:flex;flex-direction:column;align-items:center}
.hero .hero-center h1{max-width:40ch;font-size:clamp(30px,3.4vw,50px)}

/* return-sources strip + deals row (home private markets chapter) */
.rs-strip{display:grid;grid-template-columns:2fr 48px 5fr;border:1px solid var(--rule);background:var(--paper)}
.rs-strip .rs-block{padding:18px 20px}
.rs-strip .rs-arrow{display:flex;align-items:center;justify-content:center;background:var(--cream);color:var(--gold);font-size:22px;border-left:1px solid var(--rule);border-right:1px solid var(--rule)}
.rs-strip .rs-h{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:12px}
.rs-items{display:grid;gap:16px}
.rs-items.two{grid-template-columns:1fr 1fr}
.rs-items.five{grid-template-columns:repeat(5,1fr)}
.rs-items h4{font-family:var(--serif);font-weight:500;font-size:17px;margin-bottom:4px}
.rs-items p{font-size:12px;color:var(--ink-2);line-height:1.4}
.deals-row{display:grid;grid-template-columns:1.4fr 1fr;gap:32px;align-items:center;margin-top:26px;padding-top:22px;border-top:1px solid var(--rule)}
.deals-line{font-family:var(--serif);font-size:19px;line-height:1.35;color:var(--ink);max-width:56ch}
@media(max-width:900px){.rs-strip{grid-template-columns:1fr}.rs-strip .rs-arrow{display:none}.rs-items.five{grid-template-columns:1fr 1fr}.deals-row{grid-template-columns:1fr}.deals-row .cta-row{justify-content:flex-start}}

.hero .hero-center .lede{max-width:52ch;text-align:center}
.hero .hero-center .hero-actions{justify-content:center}

/* one chapter per scroll: snap each section to the top, under the nav (desktop only) */
/* chapter paging is driven by site.js (wheel → next chapter); CSS snap stays off so the two never fight */
.hero.inner{min-height:min(52vh,440px);padding-bottom:56px}
.hero.inner h1{font-size:clamp(30px,3.6vw,48px);max-width:44ch}
.hero.inner .lede{font-size:17px}

/* ---------- three pillars ---------- */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:48px}
@media(max-width:800px){.pillars{grid-template-columns:1fr;gap:40px}}
.pillar{text-align:left;border-top:1px solid var(--rule);padding-top:24px}
.pillar .pnum{font-family:var(--serif);color:var(--gold);font-size:20px;margin-bottom:14px;display:block}
.pillar h3{margin-bottom:12px}
.pillar p{color:var(--ink-2);font-size:15px}
.pillar .textlink{margin-top:16px}

/* ---------- landscape / positioning chart ---------- */
.landscape{position:relative;background:var(--cream);border:1px solid var(--rule);padding:28px 28px 44px;margin-top:8px}
.landscape svg{display:block;width:100%;height:auto}
.landscape-axis-x,.landscape-axis-y{font-family:var(--sans);font-size:10px;letter-spacing:.12em;fill:var(--ink-3);text-transform:uppercase}

/* ---------- stat row ---------- */
.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule)}
.stat-row .stat{background:var(--paper);padding:28px 24px}
section.dark .stat-row{background:var(--dark-rule)}
section.dark .stat-row .stat{background:var(--dark)}
.stat .fig{font-family:var(--serif);font-size:44px;color:var(--gold);line-height:1;margin-bottom:8px}
.stat .lbl{font-size:13px;color:var(--ink-2)}
section.dark .stat .lbl{color:var(--dark-ink-2)}
@media(max-width:700px){.stat-row{grid-template-columns:1fr}}

/* ---------- fee bar comparison ---------- */
.feebars{border:1px solid var(--rule);background:var(--paper);padding:32px}
.feebars .legend{display:flex;gap:24px;margin-bottom:28px;flex-wrap:wrap}
.feebars .legend span{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-2)}
.feebars .legend i{width:12px;height:12px;display:inline-block}
.feebars .legend i.trad{background:var(--ink-2)}
.feebars .legend i.val{background:var(--gold)}
.feebars .cols{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;align-items:end}
@media(max-width:640px){.feebars .cols{grid-template-columns:repeat(2,1fr);row-gap:36px}}
.feebars .yrcol{text-align:center}
.feebars .bars{display:flex;align-items:flex-end;justify-content:center;gap:10px;height:clamp(140px,22vh,200px)}
.feebars{padding:24px 28px}
.feebars .foot-row{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:start;margin-top:18px;padding-top:16px;border-top:1px solid var(--rule)}
.feebars .foot-row .assumptions{margin-top:0}
.feebars .foot-row .slider-block{margin-top:0;padding-top:0;border-top:0}
.feebars .foot-row .slider-block .sv{margin-top:8px;font-size:18px}
@media(max-width:800px){.feebars .foot-row{grid-template-columns:1fr}}
.pg-title{font-size:clamp(28px,2.9vw,40px);max-width:none;line-height:1.1}
.qcore-h{display:flex;justify-content:space-between;align-items:baseline;gap:16px}
.qcore-h .qcount{font-size:12px;color:var(--ink-3)}
.qcore{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px}
.qcore div{background:#F3E9CE;padding:8px 12px;font-size:13px;display:flex;gap:8px;line-height:1.4}
.qcore .qn{font-family:var(--serif);color:var(--gold);min-width:14px}
@media(max-width:800px){.qcore{grid-template-columns:repeat(2,1fr)}}
.qlist.three{columns:3;column-gap:32px;margin-top:8px}
.qlist.three li{font-size:13px;padding:6px 0}
#fee-bars-card .bars{height:clamp(130px,20vh,180px)}
.ds-chips{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.ds-chips .ds-chip{text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:9px 10px}
@media(max-width:900px){.ds-chips{grid-template-columns:repeat(2,1fr)}.ds-chips .ds-chip{white-space:normal}}
@media(max-width:900px){.qlist.three{columns:2}}
@media(max-width:600px){.qlist.three{columns:1}}
.ds-chip{padding:8px 14px;font-size:13px}
.rs.stack{grid-template-columns:1fr}
.rs.stack .rs-col + .rs-col{border-left:0}
.rs.stack .rs-join{border-left:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);height:40px;font-size:20px;transform:none}
.rs.stack .rs-join::before{content:"\2193"}
.rs.stack .rs-join span{display:none}
.rs .rs-row{padding:8px 0}
.rs .rs-row h4{font-size:17px}
.lh-tile{min-height:100px;padding:14px 16px}
.lh-txt{font-size:13px}
.doc{padding:20px 22px 22px}
.doc .dbody{font-size:15px;line-height:1.45}
.doc .dlabel{font-size:14px;padding-bottom:12px;margin-bottom:14px}
.feebars .bar{width:clamp(34px,4.2vw,60px);background:var(--ink-2);position:relative}
.feebars .bar.val{background:var(--gold)}
.feebars .bar .amt{position:absolute;top:-28px;left:-60px;right:-60px;text-align:center;font-family:var(--serif);font-size:19px;white-space:nowrap;color:var(--ink)}
.feebars .yrlbl{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-top:16px}
.feebars .pflbl{font-size:13px;color:var(--ink-2);margin-top:4px}
.two-col .feebars .bars{height:210px}
.two-col .feebars .bar{width:clamp(28px,2.6vw,40px)}
.two-col .feebars .bar .amt{font-size:15px;top:-24px}
.two-col .feebars .pflbl{font-size:12px;white-space:nowrap}
.two-col .feebars .cols{gap:4px}
.feebars .callout{margin-top:28px;padding-top:20px;border-top:1px solid var(--rule);font-size:16px}
.feebars .foot{margin-top:16px;font-size:12px;color:var(--ink-3);line-height:1.6}
.feebars .assumptions{display:flex;gap:28px;flex-wrap:wrap;margin-top:18px;font-size:13px;color:var(--ink-2)}
.feebars .assumptions span{display:inline-flex;align-items:center;gap:8px}
.feebars .assumptions span::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--gold)}
details.notes{margin-top:12px}
details.notes summary{font-size:12px;color:var(--ink-3);cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:6px}
details.notes summary::-webkit-details-marker{display:none}
details.notes summary::before{content:"+";font-family:var(--serif);font-size:15px;color:var(--gold);line-height:1}
details.notes[open] summary::before{content:"\2212"}
details.notes p{font-size:12px;color:var(--ink-3);line-height:1.6;margin:8px 0 0;max-width:80ch}
sup.fn{font-family:var(--sans);font-size:10px;color:var(--gold);margin-left:3px}

.slider-block{margin-top:28px;padding-top:24px;border-top:1px solid var(--rule)}
.slider-block label{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);display:block;margin-bottom:10px}
.slider-block input[type=range]{width:100%;accent-color:var(--gold)}
.slider-block .sv{display:flex;justify-content:space-between;margin-top:14px;font-family:var(--serif);font-size:22px}
.slider-block .sv .val-out{color:var(--gold)}

/* ---------- line/area chart (cumulative fees, ending value) ---------- */
.linechart{border:1px solid var(--rule);background:var(--paper);padding:28px}
.linechart .lc-title{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:20px}
.linechart svg{width:100%;height:auto}
.linechart .axislabel{font-size:14px;fill:var(--ink-3);font-family:var(--sans)}
.linechart .endlabel{font-family:var(--serif);font-size:22px;fill:var(--ink)}

/* ---------- ledger (decisions that shrink pay) ---------- */
.ledger{border:1px solid var(--rule);background:var(--paper)}
.ledger-head{display:grid;grid-template-columns:1.6fr 1fr 2fr .8fr;gap:16px;padding:14px 24px;
  font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);border-bottom:1px solid var(--rule)}
.ledger-row{display:grid;grid-template-columns:1.6fr 1fr 2fr .8fr;gap:16px;padding:20px 24px;
  border-bottom:1px solid var(--hair);align-items:center}
.ledger-row:last-child{border-bottom:0}
.ledger-row .decision{font-family:var(--serif);font-size:19px}
.ledger-row .assets{font-family:var(--serif);font-size:17px;color:var(--ink-2)}
.ledger-row .barwrap{display:flex;align-items:center;gap:10px}
.ledger-row .bartrack{flex:1;height:9px;background:var(--hair)}
.ledger-row .barfill{height:100%;background:var(--ink-2)}
.ledger-row .barval{font-family:var(--serif);font-size:15px;white-space:nowrap;min-width:64px}
.ledger-row .atval{font-family:var(--serif);font-size:17px;color:var(--gold);text-align:right}
@media(max-width:700px){
  .ledger-head{display:none}
  .ledger-row{grid-template-columns:1fr;gap:8px;padding:20px}
  .ledger-row .assets::before{content:"Assets leaving the account: ";font-size:12px;color:var(--ink-3);font-family:var(--sans)}
  .ledger-row .atval::before{content:"At Valorem: ";font-size:12px;color:var(--ink-3);font-family:var(--sans)}
  .ledger-row .atval{text-align:left}
}

/* ---------- document exhibits (deck .doc treatment) ---------- */
.exhibits{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;align-items:stretch}
.exhibits.three{grid-template-columns:repeat(3,1fr)}
@media(max-width:980px){.exhibits,.exhibits.three{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.exhibits,.exhibits.three{grid-template-columns:1fr}}
.doc{background:#fff;border:1px solid #E7E1D3;padding:22px 24px 24px;
  box-shadow:0 16px 34px rgba(23,20,16,.10),0 2px 6px rgba(23,20,16,.05);display:flex;flex-direction:column}
.doc .dlabel{font-size:15px;line-height:1.4;color:#12100C;font-weight:500;padding-bottom:14px;margin-bottom:16px;border-bottom:2px solid var(--gold)}
.doc .dlogo{display:block;height:20px;width:auto;max-width:100%;margin-bottom:12px;align-self:flex-start;object-fit:contain}
.doc .dlogo[src*="merrill"]{height:26px}
.doc .dlogo[src*="morganstanley"]{height:17px}
.doc .dlogo[src*="wellsfargo"]{height:15px}
.doc .dlogo[src*="ubs"]{height:23px}
.doc .dmeta{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:#9A917F;line-height:1.5;padding-bottom:12px;margin-bottom:16px;border-bottom:1px solid #EFEADE}
.doc .dbody{font-family:var(--serif);font-size:16px;line-height:1.48;color:#2A2620}
.doc mark{background:rgba(200,155,44,.34);color:#12100C;padding:1px 0;box-decoration-break:clone;-webkit-box-decoration-break:clone}

/* ---------- chapters: one narrative section per viewport on desktop ---------- */
@media(min-width:901px){
  section:not(.tight):not(.cta){min-height:calc(100vh - var(--nav-h));display:flex;align-items:center;padding:32px 0}
  section:not(.tight):not(.cta) > .container{width:100%}
  .section-head{margin-bottom:20px}
  .section-head .lede{margin-top:10px}
  h2{font-size:clamp(24px,2.5vw,34px)}
  .pg-title{font-size:clamp(26px,2.6vw,36px)}
  .lede{font-size:16px;line-height:1.55}
  .two-col .lede{font-size:16px}
  .cta-row{margin-top:18px}
  .btn{padding:12px 22px;font-size:13px}
  .matrix-row{padding:10px 24px}
  .matrix-row .mtask{font-size:14px}
  .capacity-scale{height:46px;margin-bottom:18px}
  .fund-bar{margin-bottom:14px}
  .fund-bar h4{margin-bottom:6px;font-size:17px}
  .fund-bar .fb-track{height:28px}
  .lh-tile{min-height:76px;padding:11px 14px}
  .lh-txt{font-size:13px;line-height:1.42}
  .lh-grid{gap:14px}
  .lh-chips,.ds-chips{margin-bottom:16px}
  .rs .rs-row p{font-size:12px;line-height:1.4}
  .rs .rs-row h4{font-size:16px}
  .rs .rs-h{margin-bottom:10px}
  .theme-chips{display:flex;flex-wrap:wrap;gap:6px}
  .theme-chips span{border:1px solid var(--rule);padding:6px 10px;font-size:13px;background:var(--paper)}
  .waterfall svg{max-height:min(42vh,360px)}
  .waterfall{padding:20px}
  .waterfall .wf-caption{margin-top:12px}
  .waterfall .wf-caption h4{font-size:17px}
  .capacity-scale{height:44px;margin-bottom:14px}
  .fund-bar .fb-track{height:26px}
  .fund-bar p{font-size:13px;margin-top:6px}
  .fund-bar{margin-bottom:12px}
  .lh-pill{font-size:19px;padding:12px 20px}
  .doc .dbody{font-size:13px;line-height:1.42}
  .doc{padding:18px 20px 20px}
  .ledger-row{padding:14px 24px}
  .ledger-row .decision{font-size:17px}
  .ds{padding:22px 24px}
  .ds-panel{padding:18px 20px}
  .ds-delta{font-size:24px}
  .ds-note{margin-bottom:14px;font-size:13px}
  .rs .rs-row{padding:6px 0}
  .rs .rs-col{padding:16px 20px}
  .qlist.three li{font-size:13px;padding:4px 0}
  .advice-compare{padding:22px 26px}
  .plaingrid .pg-item p{font-size:13px}
  .plaingrid .pg-item h4{font-size:18px}
  .rail-steps p{font-size:13px}
  .lanes td{padding:11px 12px;font-size:13px}
  .lanes th{padding:12px}
  .hbar-rows{gap:16px}
  .tile{height:34px}
  .redemption-rows{gap:14px}
  .f-note{font-size:12px}
  .core-tilts svg{max-height:min(48vh,420px);margin:0 auto}
  .waterfall svg{max-height:min(46vh,380px)}
  .linechart svg{max-height:min(52vh,440px)}
  .hero{min-height:min(100vh,1000px)}
  .hero.inner{min-height:0;padding:calc(var(--nav-h) + 56px) 0 44px}
  .hero.inner h1{font-size:clamp(28px,3.1vw,42px)}
  .hero.inner .lede{font-size:16px;margin-top:14px}
  .hero.inner + section:not(.tight){min-height:calc(100vh - var(--nav-h) - 300px)}
}
section.cta{padding:96px 0}

/* ---------- return sources diagram (home private markets) ---------- */
.rs{display:grid;grid-template-columns:1fr 64px 1.25fr;align-items:stretch;border:1px solid var(--rule);background:var(--paper)}
.rs .rs-col{padding:22px 24px}
.rs .rs-col + .rs-col{border-left:1px solid var(--rule)}
.rs .rs-h{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);font-weight:600;margin-bottom:14px}
.rs .rs-row{padding:10px 0;border-top:1px solid var(--hair)}
.rs .rs-row h4{font-family:var(--serif);font-weight:400;font-size:18px;margin-bottom:2px}
.rs .rs-row p{font-size:13px;color:var(--ink-2);line-height:1.45}
.rs .rs-join{display:flex;align-items:center;justify-content:center;background:var(--cream);color:var(--gold);font-size:22px;border-left:1px solid var(--rule)}
@media(max-width:800px){.rs{grid-template-columns:1fr}.rs .rs-join{display:none}.rs .rs-col + .rs-col{border-left:0;border-top:1px solid var(--rule)}}

/* ---------- comprehensive advice comparison ---------- */
.advice-compare{border:1px solid var(--rule);background:var(--paper);padding:32px}
.advice-toggle{display:flex;gap:20px;margin-bottom:24px;font-size:13px}
.advice-toggle span{display:inline-flex;align-items:center;gap:8px;color:var(--ink-2)}
.advice-toggle i{width:10px;height:10px;display:inline-block}
.advice-toggle i.a{background:var(--gold)}
.advice-toggle i.b{border:1px solid var(--ink-3)}
.qlist{list-style:none;margin:0;padding:0;columns:2;column-gap:40px}
@media(max-width:700px){.qlist{columns:1}}
.qlist li{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--hair);break-inside:avoid;font-size:14px}
.qlist li.core{background:#F3E9CE}
.qlist li .qn{font-family:var(--serif);color:var(--ink-3);min-width:20px}
.qlist li.core .qn{color:var(--gold)}
.advice-summary{margin-top:24px;padding-top:20px;border-top:1px solid var(--rule);font-size:15px;color:var(--ink-2)}

/* ---------- responsibility matrix ---------- */
.matrix{border:1px solid var(--rule);background:var(--paper)}
.matrix-head{display:grid;grid-template-columns:1.6fr 1fr 1fr;padding:14px 24px;border-bottom:1px solid var(--rule)}
.matrix-head .mh{text-align:center;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}
.matrix-head .mh span{display:block;font-size:11px;color:var(--ink-3);text-transform:none;letter-spacing:0;margin-top:4px}
.matrix-row{display:grid;grid-template-columns:1.6fr 1fr 1fr;padding:16px 24px;border-bottom:1px solid var(--hair);align-items:center}
.matrix-row:last-child{border-bottom:0}
.matrix-row .mtask{font-size:15px}
.matrix-row .mmark{text-align:center;font-family:var(--serif);font-size:20px}
.matrix-row .mmark.on{color:var(--ink)}
.matrix-row .mmark.on.gold{color:var(--gold)}
.matrix-row .mmark.off{color:var(--rule)}
@media(max-width:640px){
  .matrix-head{display:none}
  .matrix-row{grid-template-columns:1fr;gap:6px;padding:16px 4px}
  .matrix-row .mtask{font-weight:600}
  .matrix-row .mmark{text-align:left;font-size:14px}
  .matrix-row .mmark::before{content:attr(data-label) ": ";font-size:12px;color:var(--ink-3);font-family:var(--sans)}
}

/* ---------- life event selector ---------- */
.event-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}
.event-tab{padding:11px 18px;border:1px solid var(--rule);font-size:13px;font-weight:600;color:var(--ink-2);cursor:pointer;background:var(--paper)}
.event-tab.active{border-color:var(--ink);color:var(--ink);background:var(--cream)}
.event-panel{display:none;border:1px solid var(--rule);background:var(--paper);padding:32px}
.event-panel.active{display:block}
.event-panel ol{list-style:none;margin:0;padding:0;counter-reset:ev}
.event-panel li{counter-increment:ev;padding:14px 0 14px 40px;position:relative;border-bottom:1px solid var(--hair);font-size:15px}
.event-panel li:last-child{border-bottom:0}
.event-panel li::before{content:counter(ev);position:absolute;left:0;top:14px;font-family:var(--serif);color:var(--gold);font-size:17px}

/* ---------- process rail (5 steps) ---------- */
.rail{position:relative;padding-top:24px}
.rail-line{position:absolute;top:6px;left:0;right:0;height:1px;background:var(--rule)}
.rail-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;position:relative}
.rail-dot{width:11px;height:11px;border-radius:50%;background:var(--gold);margin-bottom:20px}
.rail-steps h4{font-family:var(--serif);font-weight:500;font-size:19px;margin-bottom:8px}
.rail-steps p{font-size:13px;color:var(--ink-2)}
@media(max-width:900px){
  .rail-line{display:none}
  .rail-steps{grid-template-columns:1fr;gap:28px}
}

/* ---------- SPIVA / bar-with-label rows ---------- */
.hbar-rows{display:flex;flex-direction:column;gap:22px}
.hbar-row .hbar-top{display:flex;justify-content:space-between;font-size:14px;margin-bottom:8px}
.hbar-row .hbar-top .pct{font-family:var(--serif);font-size:20px;color:var(--ink)}
.hbar-track{height:10px;background:var(--hair)}
.hbar-fill{height:100%;background:var(--gold)}

/* ---------- thematic pie + theme grid ---------- */
.pie-wrap{display:flex;align-items:center;gap:32px;flex-wrap:wrap}
.pie-legend{display:flex;flex-direction:column;gap:14px}
.pie-legend .pl{display:flex;align-items:baseline;gap:10px}
.pie-legend .pl .pct{font-family:var(--serif);font-size:26px;color:var(--gold);min-width:56px}
.pie-legend .pl .lbl{font-size:14px;color:var(--ink-2)}
.theme-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);margin-top:24px}
.theme-grid div{background:var(--paper);padding:16px 18px;font-size:14px}
.theme-grid div.active{background:var(--cream);color:var(--gold);font-weight:600}
@media(max-width:640px){.theme-grid{grid-template-columns:1fr}}

/* ---------- news / press cards ---------- */
.press-cards{display:flex;flex-direction:column;gap:16px}
.press-card{background:#fff;border:1px solid var(--rule);padding:20px 24px}
.press-card .pubmark{font-family:var(--serif);font-weight:600;font-size:14px;color:var(--ink-3);margin-bottom:10px;letter-spacing:.02em}
.press-card h4{font-family:var(--serif);font-weight:500;font-size:19px;line-height:1.3;margin-bottom:8px}
.press-card .meta{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}

/* ---------- waterfall chart ---------- */
.waterfall{border:1px solid var(--rule);background:var(--paper);padding:28px}
.waterfall svg{width:100%;height:auto}
.waterfall .wf-caption{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:20px;text-align:center}
.waterfall .wf-caption h4{font-family:var(--serif);font-size:19px;margin-bottom:4px}
.waterfall .wf-caption p{font-size:13px;color:var(--ink-2)}
.waterfall .wf-caption .verdict{font-weight:600;font-size:13px;margin-top:6px}
.waterfall .wf-caption .verdict.pass{color:var(--ink-3)}
.waterfall .wf-caption .verdict.do{color:var(--gold)}
@media(max-width:700px){.waterfall .wf-caption{grid-template-columns:1fr;gap:32px}}

/* ---------- capacity bands ---------- */
.capacity-scale{display:flex;height:56px;margin-bottom:32px}
.capacity-scale div{display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:13px;text-align:center;padding:6px}
.capacity-scale .c1{background:var(--gold);color:#fff;flex:1}
.capacity-scale .c2{background:var(--gold-lt);color:#fff;flex:2}
.capacity-scale .c3{background:var(--hair);color:var(--ink-2);flex:4}
.fund-bar{margin-bottom:24px}
.fund-bar h4{font-family:var(--serif);font-size:19px;margin-bottom:10px}
.fund-bar .fb-track{display:flex;height:34px}
.fund-bar .fb-track div{border-right:2px solid var(--paper)}
.fund-bar .fb-track div:last-child{border-right:0}
.fund-bar p{font-size:13px;color:var(--ink-2);margin-top:8px}

/* ---------- redemption tiles ---------- */
.redemption-rows{display:flex;flex-direction:column;gap:18px}
.redemption-row .rr-label{font-size:14px;margin-bottom:8px;color:var(--ink-2)}
.redemption-row .rr-label b{color:var(--ink)}
.tiles{display:grid;grid-template-columns:repeat(8,1fr);gap:4px}
.tile{height:38px;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:13px;color:#fff;background:var(--hair);color:var(--ink-2)}
.tile.gone{background:transparent;border:1px dashed var(--rule);color:var(--rule)}
.tile.core{background:var(--gold);color:#fff}
@media(max-width:640px){.tiles{grid-template-columns:repeat(4,1fr)}}

/* ---------- sourcing rail ---------- */
.sourcing-rail{display:grid;grid-template-columns:repeat(7,1fr);gap:16px;position:relative;padding-top:20px}
.sourcing-rail::before{content:"";position:absolute;top:5px;left:0;right:0;height:1px;background:var(--rule)}
.sourcing-rail .sdot{width:9px;height:9px;border-radius:50%;background:var(--gold);margin-bottom:16px}
.sourcing-rail h4{font-family:var(--serif);font-size:16px;margin-bottom:6px}
.sourcing-rail p{font-size:12px;color:var(--ink-2)}
@media(max-width:900px){.sourcing-rail{grid-template-columns:1fr;gap:24px}.sourcing-rail::before{display:none}}
.handoff{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--rule);border:1px solid var(--rule);margin-top:32px}
.handoff div{background:var(--paper);padding:20px 24px}
.handoff .hh{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:16px}
.handoff-row{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--rule);border-left:1px solid var(--rule);border-right:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.handoff-row div{background:var(--paper);padding:14px 24px;font-size:13px}

/* ---------- forms ---------- */
.form-block{max-width:640px}
.f-group{margin-bottom:22px}
.f-group label{display:block;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);margin-bottom:8px}
.f-group input[type=text],.f-group input[type=email],.f-group input[type=tel],.f-group textarea,.f-group select{
  width:100%;border:0;border-bottom:1px solid var(--ink-3);background:transparent;padding:10px 2px;
  font-family:var(--sans);font-size:15px;color:var(--ink)
}
.f-group input:focus,.f-group textarea:focus,.f-group select:focus{outline:0;border-bottom-color:var(--gold)}
.f-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media(max-width:560px){.f-row{grid-template-columns:1fr}}
.f-options{display:flex;flex-wrap:wrap;gap:10px}
.f-chip{border:1px solid var(--rule);padding:10px 16px;font-size:13px;cursor:pointer;color:var(--ink-2)}
.f-chip input{display:none}
.f-chip:has(input:checked){border-color:var(--gold);background:var(--cream);color:var(--ink);font-weight:600}
.f-note{font-size:12px;color:var(--ink-3);margin-top:6px}

/* ---------- resources grid ---------- */
.res-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:36px}
.res-filters span{padding:9px 18px;border:1px solid var(--rule);font-size:13px;font-weight:600;color:var(--ink-2);cursor:pointer}
.res-filters span.active{border-color:var(--ink);color:var(--ink);background:var(--cream)}
.res-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule)}
@media(max-width:900px){.res-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.res-grid{grid-template-columns:1fr}}
.res-card{background:var(--paper);padding:28px}
.res-card .rtag{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:14px}
.res-card h3{font-size:21px;margin-bottom:10px}
.res-card p{font-size:14px;color:var(--ink-2);margin-bottom:16px}

/* ---------- bios ---------- */
.bio{display:grid;grid-template-columns:180px 1fr;gap:32px;padding:40px 0;border-bottom:1px solid var(--rule)}
.bio:last-child{border-bottom:0}
.bio-photo{width:180px;height:180px;background:var(--cream);border:1px solid var(--rule)}
.bio h3{margin-bottom:4px}
.bio .role{font-size:13px;color:var(--gold);font-weight:600;margin-bottom:16px}
.bio p{font-size:15px;color:var(--ink-2)}
@media(max-width:640px){.bio{grid-template-columns:1fr}.bio-photo{width:100%;height:220px}}

/* ---------- plain grid (payers, private sleeves, etc.) ---------- */
.plaingrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:28px 32px}
.plaingrid .pg-item{border-top:1px solid var(--rule);padding-top:20px}
.plaingrid .pg-item h4{font-family:var(--serif);font-weight:400;font-size:20px;margin-bottom:8px}
.plaingrid .pg-item p{font-size:13px;color:var(--ink-2)}
.plaingrid.cols2{grid-template-columns:1fr 1fr;max-width:560px}
@media(max-width:560px){.plaingrid.cols2{grid-template-columns:1fr}}

/* ---------- CTA rows ---------- */
.cta-row{display:flex;gap:18px;flex-wrap:wrap;align-items:center;margin-top:30px}
section.dark .cta-row .textlink{color:var(--gold-lt)}

/* ---------- fee bars grow in on entry ---------- */
.feebars .bar{height:0;transition:height .9s cubic-bezier(.2,.7,.2,1)}
.feebars.grown .bar{height:var(--h)}
.feebars .bar .amt{opacity:0;transition:opacity .4s .6s}
.feebars.grown .bar .amt{opacity:1}

/* ---------- decision simulator ---------- */
.ds{border:1px solid var(--rule);background:var(--paper);padding:28px}
.ds-chips,.lh-chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}
.ds-chip{padding:10px 16px;border:1px solid var(--rule);background:var(--paper);font:600 13px var(--sans);color:var(--ink-2);cursor:pointer}
.ds-chip:hover{border-color:var(--ink-3)}
.ds-chip.active{border-color:var(--ink);color:var(--ink);background:var(--cream)}
.ds-note{font-size:14px;color:var(--ink-2);margin-bottom:20px;max-width:72ch;line-height:1.55}
.ds-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.ds-panel{border:1px solid var(--rule);padding:22px 24px;background:#fff}
.ds-panel.val{border-color:rgba(168,121,15,.55)}
.ds-h{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:16px;font-weight:600}
.ds-row{display:flex;justify-content:space-between;gap:12px;font-size:13px;color:var(--ink-2);margin:10px 0 6px;align-items:baseline}
.ds-row b{font-family:var(--serif);font-size:19px;color:var(--ink);font-weight:500}
.ds-track{position:relative;height:12px;background:var(--hair);margin-bottom:14px}
.ds-fill{height:100%;background:var(--ink-2);transition:width .6s ease}
.ds-fill.gold{background:var(--gold)}
.ds-delta{font-family:var(--serif);font-size:28px;margin-top:6px;line-height:1}
.ds-delta.neg{color:var(--ink)}
.ds-delta.zero{color:var(--gold)}
@media(max-width:700px){.ds-grid{grid-template-columns:1fr}}

/* ---------- life event hub ---------- */
.lh-stage{position:relative}
.lh-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}
.lh-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;position:relative;z-index:1}
.lh-tile{background:#fff;border:1px solid var(--rule);padding:16px 18px;min-height:118px}
.lh-area{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:8px;font-weight:600}
.lh-txt{font-size:13px;color:var(--ink-2);line-height:1.5}
.lh-center{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:10px}
.lh-pill{background:var(--ink);color:var(--paper);font-family:var(--serif);font-size:21px;padding:14px 24px;border-radius:2px;line-height:1.2}
.lh-sub{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-top:12px}
@media(max-width:720px){.lh-grid{grid-template-columns:1fr}.lh-center{order:-1;margin-bottom:6px}}

/* ---------- core + tilts diagram ---------- */
.core-tilts svg{width:100%;height:auto;display:block}

/* ---------- process lanes (private markets) ---------- */
.lanes{border:1px solid var(--rule);background:var(--paper);overflow-x:auto}
.lanes table{width:100%;border-collapse:collapse;min-width:820px}
.lanes th{text-align:left;padding:16px 14px;border-bottom:1px solid var(--rule);vertical-align:bottom}
.lanes th.step{font-family:var(--serif);font-size:19px;color:var(--ink);font-weight:400}
.lanes th.step small{display:block;font-family:var(--sans);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-bottom:6px;font-weight:600}
.lanes td{font-size:13px;color:var(--ink-2);padding:14px;border-bottom:1px solid var(--hair);vertical-align:top;line-height:1.5}
.lanes td.lab{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);white-space:nowrap;font-weight:600;padding-top:17px}
.lanes tr.val td{color:var(--ink)}

/* ---------- routing (about / resources) ---------- */
.routing{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--rule);border:1px solid var(--rule)}
.routing>div{background:var(--paper);padding:36px}
.routing h3{margin-bottom:10px}
.routing p{font-size:14px;color:var(--ink-2)}
.routing ul{list-style:none;margin:14px 0 0;padding:0}
.routing li{font-family:var(--serif);font-size:18px;padding:8px 0;border-top:1px solid var(--hair)}
@media(max-width:700px){.routing{grid-template-columns:1fr}}

.exhibits.two{grid-template-columns:1fr 1fr}
@media(max-width:560px){.exhibits.two{grid-template-columns:1fr}}

/* ---------- reveal on scroll ---------- */
.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease}
.reveal.visible{opacity:1;transform:none}
.reveal.settled{transition:none;transform:none;will-change:auto}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}
b,strong{font-weight:600}
.hero video,.hero .hero-still{opacity:1}
.hero::after{background:linear-gradient(180deg,rgba(16,14,10,.48) 0%,rgba(16,14,10,.34) 38%,rgba(16,14,10,.9) 100%)}

/* ---------- footer ---------- */
footer{background:var(--dark);color:var(--dark-ink-2);padding:72px 0 28px}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;padding-bottom:48px;border-bottom:1px solid var(--dark-rule)}
@media(max-width:800px){.footer-grid{grid-template-columns:1fr 1fr;row-gap:36px}}
.footer-brand img{height:26px;margin-bottom:16px}
.footer-brand p{font-size:13px;line-height:1.7;max-width:32ch}
.footer-col h4{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--dark-ink);margin-bottom:16px;font-weight:600}
.footer-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.footer-col a{font-size:13px;color:var(--dark-ink-2)}
.footer-col a:hover{color:var(--dark-ink)}
.footer-bottom{display:flex;justify-content:space-between;padding-top:24px;font-size:12px;flex-wrap:wrap;gap:12px}
.footer-bottom a{color:var(--dark-ink-2)}

/* ---------- todo marker (dev only, visually quiet) ---------- */
.todo{border:1px dashed var(--gold);padding:14px 18px;font-size:13px;color:var(--ink-3);background:rgba(168,121,15,.05);margin-top:16px}
.todo b{color:var(--gold)}

/* ---- legibility floor: small text never below these on desktop ---- */
@media(min-width:901px){
  .doc .dbody{font-size:14px;line-height:1.45}
  .lh-txt{font-size:14px;line-height:1.45}
  .lh-area{font-size:11px}
  .lh-tile{min-height:112px}
  .two-col.even{grid-template-columns:1fr 1fr;gap:48px}
  .core-tilts svg{max-height:min(58vh,480px)}
  .reveal{transition:opacity .35s ease,transform .35s ease}
  .rs-items p,.rs .rs-row p{font-size:13px}
  .qlist.three li{font-size:13px}
  .qcore div{font-size:13px}
  .plaingrid .pg-item p,.rail-steps p,.fund-bar p{font-size:13px}
  .lanes td{font-size:13px}
  .f-note{font-size:12px}
  .ds-note{font-size:14px}
  .theme-chips span{font-size:13px}
}

/* ---- short-viewport fit: GEOMETRY ONLY (chart heights, paddings, gaps). Type sizes stay put. Kept LAST. ---- */
@media(min-width:901px) and (max-height:820px){
  section:not(.tight):not(.cta){padding:22px 0}
  .section-head{margin-bottom:14px}
  .section-head .lede{margin-top:8px}
  .cta-row{margin-top:14px}
  .btn{padding:11px 20px}
  /* home + fee bars */
  .feebars{padding:14px 22px}
  .feebars .legend{margin-bottom:12px}
  .feebars .bars{height:clamp(100px,17vh,150px)}
  #fee-bars-card .bars{height:clamp(96px,15vh,130px)}
  .feebars .yrlbl{margin-top:10px}
  .feebars .assumptions{margin-top:10px;padding-top:8px}
  .feebars .foot-row{margin-top:10px;padding-top:8px}
  details.notes{margin-top:4px}
  #cost{padding-top:calc(var(--nav-h) + 6px) !important}
  /* simulator */
  .ds{padding:14px 18px}
  .ds-panel{padding:12px 16px}
  .ds-note{margin-bottom:8px}
  .ds-track{margin-bottom:8px}
  .ds-row{margin:6px 0 4px}
  .ds-chips,.lh-chips{margin-bottom:10px}
  /* exhibits */
  .doc{padding:12px 14px 14px}
  .doc .dlabel{padding-bottom:8px;margin-bottom:8px}
  .doc .dmeta{padding-bottom:6px;margin-bottom:8px}
  .doc .dlogo{margin-bottom:6px}
  .exhibits{gap:12px}
  /* life-event hub */
  .lh-tile{min-height:104px;padding:10px 14px}
  .lh-area{margin-bottom:4px}
  .lh-grid{gap:10px}
  .lh-pill{padding:9px 16px}
  .lh-sub{display:none}
  /* ledger, matrix, questions */
  .ledger-row{padding:9px 24px}
  .ledger-head{padding:10px 24px}
  .matrix-row{padding:7px 24px}
  .matrix-head{padding:10px 24px}
  .advice-compare{padding:14px 20px}
  .qcore div{padding:5px 10px}
  .qcore{margin-top:6px;gap:6px}
  .qlist.three{columns:4;column-gap:22px;margin-top:4px}
  .qlist.three li{padding:3px 0}
  .qcore-h{margin-top:10px !important}
  .advice-summary{margin-top:8px !important;padding-top:6px !important}
  .plaingrid{gap:12px 28px}
  .plaingrid .pg-item{padding-top:10px}
  /* private markets exhibits */
  .rs-strip .rs-block{padding:12px 16px}
  .rs-items{gap:12px}
  .rs .rs-row{padding:4px 0}
  .rs .rs-col{padding:10px 16px}
  .deals-row{margin-top:12px;padding-top:12px}
  .theme-chips{gap:5px}
  .theme-chips span{padding:4px 9px}
  .capacity-scale{height:40px;margin-bottom:10px}
  .fund-bar .fb-track{height:22px}
  .fund-bar{margin-bottom:6px}
  .fund-bar h4{margin-bottom:3px}
  .fund-bar p{margin-top:3px}
  .tile{height:30px}
  .redemption-rows{gap:8px}
  .lanes td{padding:9px 12px}
  .lanes th{padding:10px 12px}
  .hbar-rows{gap:12px}
  .waterfall{padding:14px}
  .waterfall .wf-caption{margin-top:8px}
  .core-tilts svg{max-height:min(52vh,420px)}
  .waterfall svg{max-height:min(36vh,300px)}
  .linechart svg{max-height:min(46vh,360px)}
  .linechart{padding:16px}
  .linechart .lc-title{margin-bottom:10px}
}

/* ==================================================================
   ART DIRECTION PASS — hierarchy, scale, reveal. Kept after the fit
   blocks so it wins. Every rule here points the eye at the takeaway.
   ================================================================== */

/* ---- fee bars: the gap is the hero; it grows louder with the years ---- */
.feebars{border:0;padding:8px 0 0;background:transparent}
.feebars .legend{margin-bottom:22px}
.feebars .cols{align-items:end}
.feebars .bars{border-bottom:1px solid var(--rule)}
.feebars .bar.val .amt{color:var(--gold);font-size:14px;font-weight:500}
.feebars .bar.trad .amt{color:var(--ink);font-weight:500}
.feebars .e0 .bar.trad .amt{font-size:16px}
.feebars .e1 .bar.trad .amt{font-size:19px}
.feebars .e2 .bar.trad .amt{font-size:23px;top:-32px}
.feebars .e3 .bar.trad .amt{font-size:30px;top:-40px}
.feebars .mult{font-family:var(--serif);font-size:15px;color:var(--ink-3);margin-top:6px}
.feebars .e3 .mult{color:var(--gold);font-size:19px;font-weight:500}
.feebars .yrlbl{margin-top:10px}
.feebars .hero-gap{display:flex;align-items:center;gap:18px;margin-top:18px;padding-top:16px;border-top:1px solid var(--rule)}
.feebars .hero-gap .big{font-family:var(--serif);font-size:56px;line-height:1;color:var(--gold);font-weight:500;letter-spacing:-.01em}
.feebars .hero-gap .lbl{font-size:15px;color:var(--ink-2);max-width:48ch;line-height:1.45}
.feebars .assumptions{font-size:12px;color:var(--ink-3)}
.feebars .assumptions{border-top:0 !important;padding-top:0 !important;margin-top:10px !important}
.feebars .foot-row{border-top:0;padding-top:0}

/* ---- line charts: clean canvas, lines trace in, then the gap lands ---- */
.linechart{border:0;background:transparent;padding:0}
.linechart .lc-title{margin-bottom:12px}
.linechart .lc-line{transition:stroke-dashoffset 1.6s cubic-bezier(.4,0,.2,1)}
.linechart .drawn .lc-line{stroke-dashoffset:0 !important}
.linechart .lc-late{opacity:0;transition:opacity .6s ease 1.5s}
.linechart .drawn .lc-late{opacity:1}
.linechart .axislabel{font-size:13px}
.linechart .endlabel{font-size:20px}
.linechart .endname{font-family:var(--sans);font-size:11px;letter-spacing:.08em;text-transform:uppercase;fill:var(--ink-3)}
.linechart .lc-hero{font-family:var(--serif);font-size:54px;font-weight:500;fill:var(--gold);letter-spacing:-.01em}
.linechart .lc-herolbl{font-family:var(--sans);font-size:12px;letter-spacing:.1em;text-transform:uppercase;fill:var(--ink-2)}
.linechart svg{max-height:none}
.chart-figs{display:flex;gap:36px;margin-top:22px;padding-top:16px;border-top:1px solid var(--rule)}
.chart-figs div{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.chart-figs b{display:block;font-family:var(--serif);font-size:24px;font-weight:500;color:var(--ink);letter-spacing:0;text-transform:none;margin-top:4px}
section.dark{--ink:#F3EFE5;--ink-2:#D8D1C0;--ink-3:#A9A291;--rule:#33302A;--hair:#2A2722}
section.dark .chart-figs b{color:#F3EFE5}

/* ---- decision simulator: the compensation delta is the only loud thing ---- */
.ds{border:0;background:transparent;padding:0}
.ds-chip{border-color:var(--rule);background:transparent}
.ds-chip.active{background:var(--ink);color:var(--paper);border-color:var(--ink);box-shadow:0 6px 16px rgba(23,20,16,.14)}
.ds-panel{border:1px solid var(--rule);background:#fff;padding:24px 26px 22px !important;box-shadow:0 10px 26px rgba(23,20,16,.06)}
.ds-panel.val{border-color:var(--gold);border-width:1.5px}
.ds-hero{margin:6px 0 12px;opacity:0;transition:opacity .45s ease .35s}
.ds-body.play .ds-hero{opacity:1}
.ds-big{font-family:var(--serif);font-size:44px;line-height:1;font-weight:500;color:var(--ink);letter-spacing:-.01em}
.ds-big.gold{color:var(--gold)}
.ds-sub{font-size:13px;color:var(--ink-2);margin-top:8px;letter-spacing:.02em}
.ds-detail{font-size:14px;color:var(--ink-3);line-height:1.5;margin-bottom:12px}
.ds-track{height:6px;background:var(--hair);margin:0}
.ds-fill{transition:width .7s cubic-bezier(.4,0,.2,1)}
.ds-fill{background:var(--ink-3)}
.ds-fill.gold{background:var(--gold)}

/* ---- life-event hub: the decision is central, the areas light up around it ---- */
.lh-tile{border-color:var(--hair);opacity:0;transition:opacity .4s ease}
.lh-stage.lh-in .lh-tile{opacity:1}
.lh-stage.lh-in .lh-tile:nth-child(1){transition-delay:.15s}
.lh-stage.lh-in .lh-tile:nth-child(2){transition-delay:.22s}
.lh-stage.lh-in .lh-tile:nth-child(3){transition-delay:.29s}
.lh-stage.lh-in .lh-tile:nth-child(4){transition-delay:.36s}
.lh-stage.lh-in .lh-tile:nth-child(6){transition-delay:.43s}
.lh-stage.lh-in .lh-tile:nth-child(7){transition-delay:.50s}
.lh-stage.lh-in .lh-tile:nth-child(8){transition-delay:.57s}
.lh-stage.lh-in .lh-tile:nth-child(9){transition-delay:.64s}
.lh-lines{opacity:0;transition:opacity .5s ease .1s}
.lh-stage.lh-in .lh-lines{opacity:1}
.lh-pill{font-size:24px;padding:16px 28px;box-shadow:0 12px 28px rgba(23,20,16,.22);border:1px solid var(--gold)}
.lh-area{color:var(--gold)}
.lh-txt{color:var(--ink)}

/* ---- disclosures: the acknowledged sentence dominates the page ---- */
.doc{box-shadow:0 1px 0 #E7E1D3, 0 18px 36px rgba(23,20,16,.12), 0 2px 6px rgba(23,20,16,.05)}
.doc .dbody{color:#8F877A}
.doc mark{color:var(--ink);font-weight:500;background:none;background-image:linear-gradient(rgba(200,155,44,.36),rgba(200,155,44,.36));background-repeat:no-repeat;background-size:0% 100%;transition:background-size 1.1s cubic-bezier(.4,0,.2,1) .35s;padding:1px 0}
.visible .doc mark{background-size:100% 100%}

/* ---- waterfall: deductions fall away in order, the investor's net is what remains ---- */
.waterfall{border:0;background:transparent;padding:0}
.waterfall .wf-step{opacity:0;transition:opacity .35s ease}
.visible .waterfall .wf-step{opacity:1}
.visible .waterfall .wf-step.s1{transition-delay:.1s}.visible .waterfall .wf-step.s2{transition-delay:.3s}.visible .waterfall .wf-step.s3{transition-delay:.5s}.visible .waterfall .wf-step.s4{transition-delay:.7s}.visible .waterfall .wf-step.s5{transition-delay:.9s}.visible .waterfall .wf-step.s6{transition-delay:1.2s}
.waterfall .wf-caption h4{font-size:20px}
.waterfall .wf-caption .verdict.do{font-family:var(--serif);font-size:20px;font-weight:500}

/* ---- redemptions: rows arrive in order, the loss is the loud line ---- */
.redemption-row{opacity:0;transition:opacity .4s ease}
.visible .redemption-row{opacity:1}
.visible .redemption-row:nth-child(2){transition-delay:.5s}
.visible .redemption-row:nth-child(3){transition-delay:1s}
.redemption-row .rr-label{font-size:14px}
.redemption-row:last-child .rr-label{font-family:var(--serif);font-size:22px;color:var(--ink);font-weight:500}
.redemption-row:last-child .rr-label b{color:var(--gold)}
.tile.gone{border-color:var(--gold);border-style:dashed}

/* ---- fund size: the dilution reads inside the bar ---- */
.fund-bar .fb-track div{display:flex;align-items:center;justify-content:center;font-size:12px;letter-spacing:.06em;color:#fff;font-weight:600}
.fund-bar .fb-track div.muted{color:var(--ink-2)}
.fund-hero{font-family:var(--serif);font-size:24px;line-height:1.25;color:var(--ink);margin-top:14px;max-width:44ch}
.fund-hero b{color:var(--gold);font-weight:500}

/* ---- big stat figures on stat rows ---- */
.stat .fig{font-size:52px}
.waterfall.full{max-width:1040px;margin:0 auto}
.waterfall.full svg{max-height:min(42vh,360px);width:100%}
.waterfall.full .wf-caption{max-width:900px;margin:10px auto 0}
.fund-hero{max-width:none}
.waterfall.full svg{max-height:min(40vh,330px)}
.waterfall.full .wf-caption{margin-top:6px}
.waterfall.full .wf-caption h4{font-size:19px;margin-bottom:2px}
.waterfall.full .wf-caption .verdict{margin-top:2px}
.waterfall.full .wf-caption .verdict.do{font-size:18px}
.wf-legend .pg-item p{font-size:12px !important;line-height:1.4}
.wf-legend .pg-item h4{font-size:16px !important;margin-bottom:2px}
.wf-legend{margin-top:12px !important}

/* ==================================================================
   ART DIRECTION PASS 2 — the remaining exhibits. Same rules: one hero,
   quiet the rest, reveals that follow the logic. No added copy.
   ================================================================== */
/* fee bars: numbers only, no takeaway text */
.feebars .mult,.feebars .hero-gap{display:none}
.feebars .assumptions{margin-top:22px !important;padding-top:14px !important;border-top:1px solid var(--rule) !important}

/* ledger: the revenue reduction and the $0 are the two loud columns */
.ledger{border:0;background:transparent}
.ledger-head{padding:10px 0;border-bottom:1px solid var(--ink);font-size:11px}
.ledger-row{padding:15px 0;border-bottom:1px solid var(--hair);grid-template-columns:1.5fr 1fr 2fr .9fr}
.ledger-row .decision{font-size:20px}
.ledger-row .assets{color:var(--ink-3);font-size:17px}
.ledger-row .bartrack{height:12px}
.ledger-row .barfill{width:0;background:var(--ink-2);transition:width .9s cubic-bezier(.4,0,.2,1)}
.visible .ledger-row .barfill{width:var(--w)}
.visible .ledger-row:nth-child(2) .barfill{transition-delay:.05s}.visible .ledger-row:nth-child(3) .barfill{transition-delay:.15s}.visible .ledger-row:nth-child(4) .barfill{transition-delay:.25s}.visible .ledger-row:nth-child(5) .barfill{transition-delay:.35s}.visible .ledger-row:nth-child(6) .barfill{transition-delay:.45s}
.ledger-row .barval{font-size:22px;font-weight:500;color:var(--ink);min-width:80px}
.ledger-row .atval{font-size:28px;font-weight:500}

/* SPIVA bars: the twenty-year figure is the hero */
.hbar-row .hbar-top{align-items:baseline}
.hbar-row .hbar-top .pct{font-size:32px;font-weight:500}
.hbar-track{height:14px}
.hbar-fill{width:0;background:#CBB77A;transition:width 1.1s cubic-bezier(.4,0,.2,1)}
.visible .hbar-fill{width:var(--w)}
.visible .hbar-row:nth-child(2) .hbar-fill{transition-delay:.15s}.visible .hbar-row:nth-child(3) .hbar-fill{transition-delay:.3s}.visible .hbar-row:nth-child(4) .hbar-fill{transition-delay:.45s}
.hbar-row:last-child .hbar-fill{background:var(--gold)}
.hbar-row:last-child .hbar-top .pct{color:var(--gold);font-size:44px}
.hbar-row:last-child .hbar-top span:first-child{color:var(--ink);font-weight:600}

/* core + tilts: the core lands, then the tilts appear around it */
.core-tilts svg > circle:first-of-type{stroke-width:2.5}
.core-tilts g circle{opacity:0;transition:opacity .35s ease}
.visible .core-tilts g circle{opacity:1}
.visible .core-tilts g circle:nth-child(1){transition-delay:.3s}.visible .core-tilts g circle:nth-child(2){transition-delay:.42s}.visible .core-tilts g circle:nth-child(3){transition-delay:.54s}.visible .core-tilts g circle:nth-child(4){transition-delay:.66s}.visible .core-tilts g circle:nth-child(5){transition-delay:.78s}.visible .core-tilts g circle:nth-child(6){transition-delay:.9s}
.core-tilts g text{opacity:0;transition:opacity .35s ease .95s}
.visible .core-tilts g text{opacity:1}

/* return sources: public pays from two places, private adds five, in sequence */
.rs-strip{border:0;background:transparent}
.rs-strip .rs-block{padding:0}
.rs-strip .rs-block.wide{padding-left:0}
.rs-strip .rs-arrow{background:transparent;border:0;font-size:32px}
.rs-items h4{font-size:19px}
.rs-items p{font-size:13px}
.rs-items > div{opacity:0;transition:opacity .35s ease;border-top:1px solid var(--rule);padding-top:10px}
.visible .rs-items > div{opacity:1}
.visible .rs-items.two > div:nth-child(2){transition-delay:.12s}
.visible .rs-items.five > div:nth-child(1){transition-delay:.4s}.visible .rs-items.five > div:nth-child(2){transition-delay:.5s}.visible .rs-items.five > div:nth-child(3){transition-delay:.6s}.visible .rs-items.five > div:nth-child(4){transition-delay:.7s}.visible .rs-items.five > div:nth-child(5){transition-delay:.8s}
.rs-strip .rs-block.wide .rs-h{color:var(--gold)}
.rs-strip .rs-block:first-child .rs-h{color:var(--ink-3)}

/* responsibility matrix: the Valorem column is the hero */
.matrix{border:0;background:transparent}
.matrix-head{padding:10px 0;border-bottom:1px solid var(--ink)}
.matrix-row{padding:13px 0;border-bottom:1px solid var(--hair);opacity:0;transition:opacity .3s ease}
.visible .matrix-row{opacity:1}
.visible .matrix-row:nth-child(2){transition-delay:.05s}.visible .matrix-row:nth-child(3){transition-delay:.12s}.visible .matrix-row:nth-child(4){transition-delay:.19s}.visible .matrix-row:nth-child(5){transition-delay:.26s}.visible .matrix-row:nth-child(6){transition-delay:.33s}.visible .matrix-row:nth-child(7){transition-delay:.4s}.visible .matrix-row:nth-child(8){transition-delay:.47s}
.matrix-row .mtask{font-size:16px}
.matrix-row .mmark.on{color:var(--ink-3);font-size:19px}
.matrix-row .mmark.on.gold{color:var(--gold);font-size:26px;font-weight:500}
.matrix-row .mmark.off{color:var(--rule);font-size:17px}

/* process rail and question list */
.rail-dot{width:14px;height:14px;box-shadow:0 0 0 4px var(--paper)}
.rail-line{background:var(--gold);opacity:.5}
.qlist li .qn{color:var(--gold);font-size:15px;font-weight:500}

/* private-market lanes: the Valorem row is the hero, the client row is quiet */
.lanes{border:0;background:transparent}
.lanes th.step{font-size:21px}
.lanes tr:not(.val) td{color:var(--ink-3)}
.lanes tr.val td{background:var(--cream);color:var(--ink)}
.lanes tr.val td.lab{color:var(--gold)}
.lanes td{border-bottom:0}
.lanes thead th{border-bottom:1px solid var(--ink)}

/* capacity + fund bars: the bars grow to their share */
.fund-bar .fb-track div{transition:width 1s cubic-bezier(.4,0,.2,1)}
/* keep the pass-2 exhibits within a laptop viewport */
.matrix-row{padding:9px 0}
.ledger-row{padding:12px 0}
.hbar-rows{gap:10px}
.hbar-track{height:12px}
.hbar-row:last-child .hbar-top .pct{font-size:40px}
.lanes tr.val td{background:#fff}
.matrix-row{padding:7px 0}
.hbar-rows{gap:8px}
.hbar-row .hbar-top .pct{font-size:28px}
.hbar-row:last-child .hbar-top .pct{font-size:38px}
.hbar-row .hbar-top{margin-bottom:5px}

/* ==================================================================
   TYPEFACE — Outfit sitewide (the Colter Lewis face). Outfit sets wider
   and rounder than the serif, so display sizes come down a step and
   headings use the light weight to keep the editorial feel.
   ================================================================== */
h1,h2,h3,h4{font-family:var(--sans);font-weight:300;letter-spacing:-.015em}
h3,h4{font-weight:400}
h1{font-size:clamp(32px,3.9vw,52px);line-height:1.08}
h2{font-size:clamp(24px,2.6vw,34px);line-height:1.14}
.two-col h2{font-size:clamp(22px,2vw,28px)}
.pg-title{font-size:clamp(24px,2.5vw,34px)}
.hero .hero-center h1{font-size:clamp(28px,3.2vw,46px);max-width:30ch}
.hero.inner h1{font-size:clamp(26px,3vw,40px)}
.lede{font-weight:300}
.eyebrow{font-family:'Sulphur Point',var(--sans);font-size:13px;letter-spacing:.16em}
.feebars .bar .amt,.ledger-row .decision,.ledger-row .barval,.ledger-row .atval,.ds-big,.chart-figs b,.stat .fig,
.hbar-row .hbar-top .pct,.rs-items h4,.deals-line,.lh-pill,.matrix-row .mmark,.rail-steps h4,.lanes th.step,
.fund-bar h4,.fund-hero,.waterfall .wf-caption h4,.redemption-row:last-child .rr-label,.mobile-menu a,.exhibit .exfirm,
.linechart .lc-hero,.linechart .endlabel,.plaingrid .pg-item h4,.res-card h3,.bio h3,.doc .dbody{font-family:var(--sans)}
.ds-big{font-weight:300;letter-spacing:-.02em}
.linechart .lc-hero{font-weight:300}
.feebars .bar .amt{font-weight:400}
.doc .dbody{font-size:14px;line-height:1.5}
.doc mark{font-weight:500}
.lh-pill{font-weight:400;font-size:21px}
.matrix-row .mmark.on.gold{font-weight:400}
.ledger-row .atval,.ledger-row .barval{font-weight:400}
.hbar-row .hbar-top .pct{font-weight:300}
.chart-figs b{font-weight:400}

/* ---- home hero: the serif headline comes back; eyebrow and sub must read on the video ---- */
.hero .hero-center h1{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400;font-size:clamp(34px,4.1vw,60px);max-width:28ch;letter-spacing:-.005em}
.hero .hero-center .eyebrow{color:#F3EFE5;font-family:'Sulphur Point',var(--sans);letter-spacing:.2em}
.hero .hero-center .lede{color:#F3EFE5;font-weight:300;max-width:60ch;text-shadow:0 1px 2px rgba(0,0,0,.35)}
.hero .hero-center h1{text-shadow:0 1px 3px rgba(0,0,0,.35)}
.hero::after{background:linear-gradient(180deg,rgba(16,14,10,.28) 0%,rgba(16,14,10,.22) 50%,rgba(16,14,10,.6) 100%)}

/* ---- core + tilts: reveal works whether the wrapper or an ancestor carries .visible ---- */
.core-tilts.visible g circle,.core-tilts.visible g text{opacity:1}
.core-tilts.visible g circle:nth-child(1){transition-delay:.3s}.core-tilts.visible g circle:nth-child(2){transition-delay:.42s}.core-tilts.visible g circle:nth-child(3){transition-delay:.54s}.core-tilts.visible g circle:nth-child(4){transition-delay:.66s}.core-tilts.visible g circle:nth-child(5){transition-delay:.78s}.core-tilts.visible g circle:nth-child(6){transition-delay:.9s}
.core-tilts.visible g text{transition-delay:.95s}

/* ---- private markets exhibit: public sources on the left, additional private sources on the right ---- */
.pm-ex{display:grid;grid-template-columns:1fr 150px 1.35fr;gap:0 36px;align-items:start}
.pm-h{font-family:'Sulphur Point',var(--sans);font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-3);margin-bottom:6px}
.pm-h.gold{color:var(--gold)}
.pm-row{padding:14px 0 12px;border-top:1px solid var(--rule)}
.pm-row h4{font-family:var(--sans);font-weight:400;font-size:24px;margin-bottom:3px;letter-spacing:-.01em}
.pm-row p{font-size:14px;color:var(--ink-2);line-height:1.45}
.pm-col.wide .pm-row{opacity:0;transition:opacity .4s ease}
.visible .pm-col.wide .pm-row{opacity:1}
.visible .pm-col.wide .pm-row:nth-child(2){transition-delay:.35s}.visible .pm-col.wide .pm-row:nth-child(3){transition-delay:.5s}.visible .pm-col.wide .pm-row:nth-child(4){transition-delay:.65s}.visible .pm-col.wide .pm-row:nth-child(5){transition-delay:.8s}.visible .pm-col.wide .pm-row:nth-child(6){transition-delay:.95s}
.pm-mid{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding-top:60px;gap:12px}
.pm-arrow{font-size:40px;line-height:1;color:var(--gold)}
.pm-midlbl{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);line-height:1.5;max-width:16ch}
.deals-row{margin-top:22px;padding-top:18px}
.deals-line{font-family:var(--sans);font-weight:300;font-size:18px;max-width:60ch}
@media(max-width:900px){.pm-ex{grid-template-columns:1fr}.pm-mid{padding:16px 0;flex-direction:row}.pm-arrow{transform:rotate(90deg)}}
.hero .hero-center h1{max-width:34ch;font-size:clamp(32px,3.8vw,56px)}
.pm-row{padding:10px 0 9px}
.pm-row h4{font-size:22px;margin-bottom:2px}
.pm-row p{font-size:13.5px}
.pm-mid{padding-top:44px}
.pm-arrow{font-size:34px}
#private-markets .section-head{margin-bottom:12px}
.deals-row{margin-top:14px;padding-top:12px}
.deals-line{font-size:17px}
.pm-row{padding:7px 0 6px}
.pm-row h4{font-size:21px}
.pm-row p{font-size:13px}
#private-markets .section-head{margin-bottom:8px}
#private-markets .section-head .lede{margin-top:6px}
.deals-row{margin-top:10px;padding-top:10px}

/* ---- full-width section heads: title and sub-header both run the width of the column ---- */
.section-head.full h2,.section-head.full .lede{max-width:none}

/* ---- private markets: two portfolio pies, traditional on paper, with privates on dark ---- */
.pies{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:stretch}
.pie-panel{padding:18px 24px 16px;border-radius:2px;display:flex;flex-direction:column}
.pie-panel.light{background:#fff;border:1px solid var(--rule)}
.pie-panel.dark{background:var(--dark);color:var(--dark-ink);--ink:#F3EFE5;--ink-2:#D8D1C0;--ink-3:#A9A291;--rule:#33302A}
.pie-title{font-family:var(--sans);font-weight:400;font-size:20px;letter-spacing:-.01em;margin-bottom:8px}
.pie-panel.dark .pie-title{color:var(--dark-ink)}
.pie-body{display:grid;grid-template-columns:.9fr 1.1fr;gap:0 26px;align-items:center;flex:1}
.pie{width:100%;max-width:290px;height:auto;display:block;margin:0 auto}
.pie .slice{stroke:#fff;stroke-width:2;opacity:0;transition:opacity .45s ease}
.pie-panel.dark .pie .slice{stroke:var(--dark)}
.visible .pie .slice{opacity:1}
.pie-legend{list-style:none;margin:0;padding:0}
.pie-legend li{position:relative;padding:6px 0 5px 22px;border-top:1px solid var(--rule)}
.pie-legend li:first-child{border-top:0}
.pie-legend li i{position:absolute;left:0;top:12px;width:11px;height:11px;border-radius:2px}
.pie-legend b{display:block;font-family:var(--sans);font-weight:400;font-size:17px;letter-spacing:-.005em;color:var(--ink);margin-bottom:1px}
.pie-legend.gold b{color:var(--gold-lt)}
.pie-legend li.pub{padding-top:4px;padding-bottom:3px}
.pie-legend li.pub b{color:var(--dark-ink-2);font-size:15px}
.pie-legend li.pub i{top:9px}
.pie-legend span{display:block;font-size:13px;line-height:1.4;color:var(--ink-2);white-space:nowrap}
.pie-panel.dark .pie-legend span{color:var(--dark-ink-2)}
.pies-note{margin-top:8px}
#private-markets .section-head{margin-bottom:14px}
.deals-row{margin-top:10px;padding-top:10px;border-top:1px solid var(--rule)}
@media(max-width:900px){.pies{grid-template-columns:1fr}.pie-body{grid-template-columns:1fr}.pie{max-width:300px}.pie-legend span{white-space:normal}}
.pie-legend li{padding:4px 0 4px 22px}
.pie-legend b{line-height:1.2;margin-bottom:2px}
.pie-legend span{line-height:1.3}
.pie-legend li i{top:9px}
.pie-legend li.pub{display:inline-block;width:46%;border-top:0;padding-top:0;padding-bottom:6px}
.pie-legend li.pub i{top:4px}
.pie-legend li.pub + li:not(.pub){border-top:1px solid var(--rule)}
.pie-title{margin-bottom:10px}
.pie-legend{display:block}
.pie-legend li.pub{box-sizing:border-box;width:45%}
.pies-note{margin-bottom:10px}
#private-markets .section-head{margin-bottom:12px}
#private-markets .deals-line{max-width:none}

/* ---- full-width heads: let the title fill its first line instead of balancing the two lines ---- */
.section-head.full h2{text-wrap:initial}

/* ---- pies pass 2: labeled slices, sheen, glow on the dark panel, wider right panel ---- */
.pies{grid-template-columns:.8fr 1.2fr}
.pie{max-width:none;overflow:visible}
.pie-panel.light .pie-body{grid-template-columns:1.05fr .95fr}
.pie-panel.dark .pie-body{grid-template-columns:1.3fr 1fr;gap:0 22px}
.pie-panel.light .pie-legend span{white-space:normal}
.pie .slice{stroke-width:2.5}
.pie-panel.dark .pie .slice{stroke:#100E0A}
.pie .pie-sheen{opacity:0;transition:opacity .6s ease .5s}
.pie .pie-glow{opacity:0;transition:opacity 1s ease .2s}
.visible .pie .pie-sheen,.visible .pie .pie-glow{opacity:1}
.pie text.lbl{font-family:var(--sans);font-weight:400;font-size:17px;letter-spacing:.01em;opacity:0;transition:opacity .4s ease}
.pie text.lbl.in{font-size:19px}
.pie .leader{stroke:#A9A291;stroke-width:1.2;fill:none;opacity:0;transition:opacity .4s ease}
.visible .pie text.lbl,.visible .pie .leader{opacity:1}

/* ---- life hub: seven tiles keep the grid balanced (bottom pair straddles the center column) ---- */
.lh-grid.n7{grid-template-columns:repeat(6,1fr)}
.lh-grid.n7>*{grid-column:span 2}
.lh-grid.n7>.lh-tile:nth-child(7){grid-column:2/span 2}
.lh-grid.n7>.lh-tile:nth-child(8){grid-column:4/span 2}
@media(max-width:720px){.lh-grid.n7{grid-template-columns:1fr}.lh-grid.n7>*,.lh-grid.n7>.lh-tile:nth-child(7),.lh-grid.n7>.lh-tile:nth-child(8){grid-column:auto}}

/* ---- core + tilts: use the chapter height so the core circle reads large ---- */
.core-tilts svg{max-height:min(70vh,560px)}
@media(min-width:901px) and (max-height:820px){.core-tilts svg{max-height:min(70vh,560px)}}

/* ---- pie legends carry the asset class only ---- */
.pie-legend b{margin-bottom:0}
.pie-legend li{padding:7px 0 7px 22px}
.pie-legend li i{top:12px}
/* ---- tilt bubbles connect to the core with short spokes ---- */
.core-tilts g.tilt-links line{opacity:0;transition:opacity .35s ease .25s}
.core-tilts.visible g.tilt-links line,.visible .core-tilts g.tilt-links line{opacity:1}

/* ---- final CTA: title, sub-header, two parallel actions ---- */
section.dark.cta{padding:112px 0 120px}
.cta-inner{text-align:center;max-width:720px}
.cta-inner h2{max-width:none}
.cta-inner .lede{margin:18px auto 0;text-align:center;max-width:56ch}
.cta-inner .cta-row{justify-content:center;margin-top:34px;gap:14px}
.cta-inner .btn{min-width:180px;justify-content:center}

/* ---- footer: a step darker than the CTA with a rule on top, so the page content visibly ends first ---- */
footer{background:#0B0A07;border-top:1px solid #2A2722;padding:64px 0 26px}
.footer-grid{grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;padding-bottom:36px;border-bottom:1px solid #2A2722;align-items:start}
.footer-brand img{height:26px;margin-bottom:18px}
.footer-brand p{font-size:14px;line-height:1.6;max-width:36ch;margin:0}
.footer-brand .fb-tag{color:var(--dark-ink)}
.footer-brand .fb-addr{margin-top:14px;color:var(--dark-ink-2)}
.footer-col h4{font-family:'Sulphur Point',var(--sans);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-lt);margin-bottom:14px;font-weight:400}
.footer-col ul{gap:8px}
.footer-col a{font-size:14px;color:var(--dark-ink-2)}
.footer-col a:hover{color:var(--dark-ink)}
.footer-bottom{padding-top:20px;font-size:13px;align-items:center}
.footer-bottom p{margin:0}
.footer-bottom .fb-contact{display:flex;gap:28px}
.footer-bottom a:hover{color:var(--dark-ink)}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}

/* ---- 2026 Investment Themes request page: the deck is the object, the form sits on the page, no card ---- */
.themes-page{padding:72px 0 96px}
.tp-grid{display:grid;grid-template-columns:7fr 5fr;gap:96px;align-items:start}
.tp-left h1{font-size:clamp(30px,3.2vw,44px);max-width:22ch;margin-top:14px}
.tp-left .lede{margin-top:16px;max-width:58ch}
.deck-stack{position:relative;margin:44px 0 0;padding:26px 0 0 26px}
.deck-stack img{display:block;width:calc(100% - 26px);aspect-ratio:16/9;object-fit:cover;border:1px solid var(--rule);background:#F3EFE5}
.deck-stack .ds-front{position:relative;box-shadow:0 22px 48px rgba(23,20,16,.18),0 2px 6px rgba(23,20,16,.08)}
.deck-stack .ds-back1,.deck-stack .ds-back2{position:absolute;left:13px;top:13px;box-shadow:0 10px 24px rgba(23,20,16,.10)}
.deck-stack .ds-back2{left:0;top:0;opacity:.85}
.tp-meta{font-family:'Sulphur Point',var(--sans);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-top:18px}
.tp-right{padding-top:8px}
.tp-right h3{font-family:var(--sans);font-weight:300;font-size:28px;letter-spacing:-.01em;margin-bottom:22px;padding-bottom:16px;border-bottom:1px solid var(--ink)}
.tp-right .btn{width:100%;justify-content:center;margin-top:6px}
.tp-fine{font-size:13px;line-height:1.55;color:var(--ink-3);margin-top:16px}
.tp-confirm{font-size:16px;line-height:1.65;color:var(--ink-2);margin-bottom:20px}
.tp-talk{font-size:15px;color:var(--ink-2);margin-top:28px;padding-top:18px;border-top:1px solid var(--rule)}
.tp-talk a{color:var(--gold);border-bottom:1px solid var(--gold-lt)}
@media(max-width:900px){.tp-grid{grid-template-columns:1fr;gap:48px}.themes-page{padding:40px 0 64px}}

/* ---- themes page pass 2: clear the fixed nav, Marc's copy, walk-through block under the form ---- */
section.themes-page.themes-page{padding:calc(var(--nav-h) + 56px) 0 96px;min-height:0;display:block}
.tp-left h1{font-size:clamp(30px,3.2vw,44px);max-width:20ch;margin-top:14px}
.deck-stack{margin-top:34px}
.tp-h2{font-family:var(--sans);font-weight:300;font-size:26px;letter-spacing:-.01em;margin-top:44px;max-width:none}
.tp-body{font-size:17px;line-height:1.65;color:var(--ink-2);margin-top:12px;max-width:58ch}
.tp-talk{margin-top:36px;padding-top:26px;border-top:1px solid var(--ink);font-size:15px}
.tp-talk h4{font-family:var(--sans);font-weight:400;font-size:19px;letter-spacing:-.01em;line-height:1.3;margin-bottom:10px;color:var(--ink)}
.tp-talk p{font-size:15px;line-height:1.65;color:var(--ink-2);margin-bottom:18px}
.btn-outline{border:1px solid var(--ink);color:var(--ink);background:transparent}
.btn-outline:hover{background:var(--ink);color:var(--paper)}
.tp-right .btn-outline{width:auto;margin-top:0}
@media(min-width:901px) and (max-height:820px){section.themes-page.themes-page{min-height:0;display:block;padding:calc(var(--nav-h) + 48px) 0 80px}}

/* ---- fee page pass (Sept 2026): deck exhibits adapted to the browser ---- */
.feebars .foot-row{margin-top:30px;padding-top:18px}
.feebars .foot-row .slider-block label{margin-top:2px}
.exhibit-grid{display:grid;grid-template-columns:4fr 8fr;gap:56px;align-items:start;margin-top:8px}
.ex-copy .lede{font-size:17px;line-height:1.6;max-width:none}
.figlist{margin-top:22px;border-top:1px solid var(--rule)}
.figrow{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:9px 0;border-bottom:1px solid var(--hair)}
.figrow span{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.figrow b{font-family:var(--sans);font-weight:400;font-size:20px;color:var(--ink);white-space:nowrap;font-variant-numeric:lining-nums}
.figrow.gold span,.figrow.gold b{color:var(--gold-lt)}
.figrow.gold b{font-size:24px}
section:not(.dark) .figrow.gold span,section:not(.dark) .figrow.gold b{color:var(--gold)}
.ex-copy .cta-row{margin-top:24px}
.linechart .lc-fill{fill:var(--gold);fill-opacity:.14;opacity:0;transition:opacity .8s ease 1.2s}
.linechart .drawn .lc-fill{opacity:1}
.linechart .lc-line.b{stroke-dasharray:none}
.linechart .drawn .lc-line.b{stroke-dasharray:7 6 !important}
.linechart .lc-note{margin-top:10px;max-width:none}
section.dark .linechart .lc-fill{fill-opacity:.18}
section.dark .linechart .lc-hero{fill:var(--gold-lt)}
section.dark .linechart .axislabel{fill:#A9A291}
.assume{margin-top:14px;padding-top:12px;border-top:1px solid var(--rule)}
.assume-h{font-family:'Sulphur Point',var(--sans);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:8px}
.assume-row{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:0 28px;align-items:end}
.assume-ctl{display:grid;grid-template-columns:1fr auto;gap:2px 10px;align-items:baseline;font-size:13px;color:var(--ink-2)}
.assume-ctl .al{letter-spacing:.02em}
.assume-ctl .av{font-family:var(--sans);font-size:17px;color:var(--ink);font-variant-numeric:lining-nums}
.assume-ctl input[type=range]{grid-column:1/-1;width:100%;accent-color:var(--gold);height:18px;margin:0}
.assume-reset{font-size:12px;white-space:nowrap;align-self:end;margin-bottom:4px}
.sec-foot{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end;margin-top:16px}
.sec-foot .f-note{max-width:78ch;margin:0}
.sec-foot .cta-row{margin-top:0;flex-wrap:nowrap}
/* the ledger reads as a loss: red bars, negative amounts in parentheses */
.ledger-row .barfill{background:#9E2B25}
.ledger-row .barval{color:#9E2B25}
.ledger-head{grid-template-columns:1.5fr 1fr 2fr .9fr}
@media(max-width:900px){.exhibit-grid{grid-template-columns:1fr;gap:32px}.assume-row{grid-template-columns:1fr}.sec-foot{grid-template-columns:1fr}}
@media(min-width:901px) and (max-height:820px){
  .exhibit-grid{gap:44px;margin-top:0}
  .ex-copy .lede{font-size:16px;line-height:1.55}
  .figlist{margin-top:14px}.figrow{padding:6px 0}.figrow b{font-size:18px}.figrow.gold b{font-size:22px}
  .ex-copy .cta-row{margin-top:16px}
  .linechart .lc-note{margin-top:6px}
  .assume{margin-top:8px;padding-top:8px}
  .ledger-row{padding:10px 0}
}

/* ---- fee page pass, fit + polish ---- */
.section-head.full h1,.section-head.full .pg-title{max-width:none;text-wrap:initial}
.feebars .foot-row{margin-top:24px;padding-top:14px}
.feebars .foot-row .cta-row{margin-top:10px}
.assume-row{grid-template-columns:1.25fr 1fr 1fr auto;gap:0 26px}
.assume-ctl .al{white-space:nowrap}
.assume{margin-top:10px;padding-top:8px}
.sec-foot .f-note{max-width:none}
.linechart .endlabel{font-size:18px}

/* full-width heads: fill the first line but never leave a single word on the last */
.section-head.full h1,.section-head.full h2,.section-head.full .pg-title{text-wrap:pretty}

/* ---- charts: crisper furniture. Spaced-caps axis labels, ticks, a real baseline; labels never sit on a line ---- */
.linechart .lc-grid{stroke:var(--rule);stroke-width:1}
.linechart .lc-axis{stroke:var(--ink-3);stroke-width:1}
.linechart .lc-tick{stroke:var(--ink-3);stroke-width:1}
.linechart .axislabel{font-family:'Sulphur Point',var(--sans);font-size:13px;letter-spacing:.06em;fill:var(--ink-2);font-variant-numeric:lining-nums tabular-nums}
.linechart .axislabel.xl{text-transform:uppercase;letter-spacing:.14em;font-size:12px}
section.dark .linechart .axislabel{fill:#C9C2B0}
section.dark .linechart .lc-axis,section.dark .linechart .lc-tick{stroke:#6B6455}
.linechart .endlabel{font-family:var(--sans);font-weight:400;font-size:19px;fill:var(--ink);letter-spacing:-.005em}
.linechart .endlabel.gold{fill:var(--gold)}
section.dark .linechart .endlabel.gold{fill:var(--gold-lt)}
.linechart .endname{font-family:'Sulphur Point',var(--sans);font-size:11px;letter-spacing:.14em;text-transform:uppercase;fill:var(--ink-3)}
.linechart .lc-hero{font-family:var(--sans);font-weight:300;font-size:56px;fill:var(--gold);letter-spacing:-.02em}
.linechart .lc-herolbl{font-family:'Sulphur Point',var(--sans);font-size:12px;letter-spacing:.16em;text-transform:uppercase;fill:var(--ink-2)}
/* typed values: look like the figure they replace, reveal a hairline when focused */
.slider-block .sv .val-in,.assume-ctl .av{border:0;border-bottom:1px solid transparent;background:transparent;text-align:right;padding:0 0 1px;outline:none;border-radius:0;box-shadow:none}
.slider-block .sv .val-in{font-family:var(--sans);font-size:22px;color:var(--gold);width:9ch;font-variant-numeric:lining-nums}
.assume-ctl .av{font-family:var(--sans);font-size:17px;color:var(--ink);width:8ch;font-variant-numeric:lining-nums}
.slider-block .sv .val-in:focus,.assume-ctl .av:focus{border-bottom-color:var(--gold)}
.assume-ctl{cursor:default}

.assume-ctl .av{width:11ch;min-width:0}
.assume-ctl{grid-template-columns:auto 1fr}
.assume-ctl .al{justify-self:start}
.assume-ctl .av{justify-self:end}

.exhibit-grid{grid-template-columns:minmax(0,4fr) minmax(0,8fr)}
.exhibit-grid>*{min-width:0}
.assume-row>*{min-width:0}
.assume-ctl .av{width:10ch}

.assume-ctl{grid-template-columns:auto minmax(0,1fr)}
.assume-ctl .av{width:100%;min-width:0;justify-self:stretch}

/* ---- fee exhibits: light throughout; the difference is stated once, in the copy column, larger than the two inputs (deck style) ---- */
.figlist{margin-top:18px;border-top:1px solid var(--rule)}
.figrow{display:block;padding:12px 0 11px;border-bottom:1px solid var(--hair)}
.figrow span{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
.figrow b{display:block;font-family:var(--sans);font-weight:300;font-size:30px;line-height:1.1;margin-top:5px;color:var(--ink);letter-spacing:-.01em}
.figrow.gold span{color:var(--gold)}
.figrow.gold b{font-size:42px;color:var(--gold)}
.ex-copy .cta-row{margin-top:22px}
@media(min-width:901px) and (max-height:820px){.figrow{padding:9px 0 8px}.figrow b{font-size:28px}.figrow.gold b{font-size:38px}.figlist{margin-top:12px}.ex-copy .cta-row{margin-top:16px}}

/* ---- fee page: two-sided exhibits, one left edge, editable values that look editable ---- */
#cumulative .exhibit-grid,#compounding .exhibit-grid{margin-top:0;align-items:center}
.ex-copy h2{font-size:clamp(24px,2.2vw,30px);line-height:1.16;max-width:none;text-wrap:pretty;margin-bottom:14px}
.ex-copy .lede{font-size:16px;line-height:1.58}
.edit-hint{font-family:var(--sans);font-size:12px;letter-spacing:0;text-transform:none;color:var(--ink-3);font-weight:300}
.slider-block .edit-hint{margin:-4px 0 10px}
.assume-h .edit-hint{margin-left:10px}
.slider-block .sv .val-in,.assume-ctl .av{
  border:1px solid var(--rule);border-bottom:2px solid var(--gold);background:#fff;border-radius:2px;
  padding:3px 8px 3px 26px;cursor:text;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23A8790F' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'><path d='M11.5 2.5l2 2L5 13H3v-2z'/><path d='M10 4l2 2'/></svg>");
  background-repeat:no-repeat;background-position:7px 50%;background-size:13px 13px}
.slider-block .sv .val-in{width:11ch}
.slider-block .sv .val-in:focus,.assume-ctl .av:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(168,121,15,.12)}
.slider-block .sv .val-in:hover,.assume-ctl .av:hover{border-color:var(--gold-lt)}
.assume-ctl .av{margin-bottom:4px}
@media(min-width:901px) and (max-height:820px){.ex-copy h2{margin-bottom:10px}}

#cumulative .exhibit-grid{align-items:start;margin-top:4px}

.assume-row{grid-template-columns:1fr 1fr 1fr;gap:0 30px}
.assume-reset{grid-column:1/-1;justify-self:end;margin:6px 0 0}
.assume-ctl .av{width:auto;min-width:0;justify-self:stretch}

/* ==========================================================================
   FINISH PASS (Sept 2026): one typeface, decisive weights, real contrast,
   charts on the pixel grid, designed controls. Structure untouched.
   ========================================================================== */
:root{--gold-ink:#8A6410}
/* one family: every small-caps label returns to Outfit, medium weight, modest tracking */
.eyebrow,.hero .hero-center .eyebrow,.pm-h,.footer-col h4,.tp-meta,.assume-h,.linechart .axislabel,.linechart .endname,.linechart .lc-herolbl,
.figrow span,.ledger-head,.feebars .yrlbl,.dmeta,.lh-area,.ds-h,.chart-figs div,.linechart .lc-title,.slider-block label,.pie-legend.gold b{font-family:var(--sans)}
.eyebrow{font-weight:500;font-size:12px;letter-spacing:.12em}
.hero .hero-center .eyebrow{letter-spacing:.14em}
.pm-h,.footer-col h4,.tp-meta,.assume-h{font-weight:500;letter-spacing:.1em}
.linechart .lc-title{font-weight:500;letter-spacing:.08em}
/* headings and key figures carry weight; light stays for running text only */
h1,h2,h3,h4{font-weight:400;letter-spacing:-.012em}
.hero .hero-center h1{font-weight:400}
.ex-copy h2,.two-col h2,.tp-h2,.tp-right h3{font-weight:400}
.lede{font-weight:400;color:var(--ink-2)}
.hero .hero-center .lede{font-weight:400}
.deals-line{font-weight:400}
.figrow b{font-weight:400;color:var(--ink);letter-spacing:-.015em}
.figrow.gold span{color:var(--gold-ink)}
.figrow.gold b{color:var(--gold-ink);font-weight:400}
.ds-big{font-weight:400;letter-spacing:-.02em}
.ds-big.gold{color:var(--gold-ink)}
.ds-h{color:var(--gold-ink);font-weight:500;letter-spacing:.08em}
.feebars .bar .amt{font-weight:500}
.feebars .bar.val .amt{color:var(--gold-ink)}
.ledger-row .atval{color:var(--gold-ink)}
.ledger-row .barval,.ledger-row .atval{font-weight:500}
.ledger-row .decision{font-weight:400}
.ledger-head{color:var(--gold-ink);font-weight:500;letter-spacing:.08em}
.chart-figs b{font-weight:400}
.hbar-row .hbar-top .pct{font-weight:400}
.lh-pill{font-weight:400}
.lh-area{color:var(--gold-ink);font-weight:500;letter-spacing:.08em}
.pie-legend b{font-weight:400}
.pie-legend.gold b{color:var(--gold-ink)}
.pie-panel.dark .pie-legend.gold b{color:var(--gold-lt)}
.textlink{color:var(--gold-ink)}
section.dark .textlink,section.dark .cta-row .textlink{color:var(--gold-lt)}
.slider-block .sv .val-in{color:var(--gold-ink);font-weight:400}
.slider-block .sv{font-family:var(--sans);font-weight:400}
.slider-block label{font-weight:500;letter-spacing:.08em;color:var(--ink-2)}
.assume-ctl .av{font-weight:400}
.edit-hint{font-weight:400}
/* captions: smaller and darker instead of larger and greyer */
.f-note{color:var(--ink-2);font-size:12px;line-height:1.5}
section.dark .f-note{color:var(--dark-ink-2)}
/* chart furniture on the pixel grid */
.linechart .lc-grid{stroke:#E4DDCD;stroke-width:1;shape-rendering:crispEdges}
section.cream .linechart .lc-grid{stroke:#DDD5C2}
.linechart .lc-axis,.linechart .lc-tick{stroke:#8B8272;stroke-width:1;shape-rendering:crispEdges}
.linechart .axislabel{font-size:12px;font-weight:500;letter-spacing:.02em;fill:var(--ink-2);text-transform:none}
.linechart .axislabel.xl{font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.linechart .lc-line.a{stroke:var(--ink);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.linechart .lc-line.b{stroke:var(--gold);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}
.linechart .drawn .lc-line.b{stroke-dasharray:6 5 !important}
.linechart .lc-dot.a{fill:var(--ink)}
.linechart .lc-dot.b{fill:var(--gold)}
.linechart .lc-fill{fill:var(--gold);fill-opacity:.12}
.linechart .endlabel{font-weight:500;font-size:18px;fill:var(--ink);letter-spacing:-.01em}
.linechart .endlabel.gold{fill:var(--gold-ink)}
.linechart .endname{font-size:10.5px;font-weight:500;letter-spacing:.1em;fill:var(--ink-2)}
.linechart svg{max-height:none;height:auto}
/* designed range inputs: hairline track filled to the thumb, ringed thumb */
input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:22px;background:transparent;margin:0;cursor:pointer;--p:50%}
input[type=range]:focus{outline:none}
input[type=range]::-webkit-slider-runnable-track{height:2px;border-radius:1px;background:linear-gradient(to right,var(--gold) 0,var(--gold) var(--p),#D9D2C0 var(--p),#D9D2C0 100%)}
input[type=range]::-moz-range-track{height:2px;border-radius:1px;background:#D9D2C0}
input[type=range]::-moz-range-progress{height:2px;background:var(--gold)}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;margin-top:-7px;border-radius:50%;background:#fff;border:2px solid var(--gold);box-shadow:0 1px 3px rgba(23,20,16,.18)}
input[type=range]::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:#fff;border:2px solid var(--gold);box-shadow:0 1px 3px rgba(23,20,16,.18)}
input[type=range]:hover::-webkit-slider-thumb,input[type=range]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px rgba(168,121,15,.15),0 1px 3px rgba(23,20,16,.18)}
/* selects match the fields */
select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none' stroke='%2317140F' stroke-width='1.4'><path d='M2 4.5l4 4 4-4'/></svg>");background-repeat:no-repeat;background-position:right 2px center;background-size:12px 12px;padding-right:22px}
.pie text.lbl{font-size:var(--lbl,17px);font-weight:500}
.pie text.lbl.in{font-size:var(--lbl-in,19px)}

/* ==========================================================================
   DECK TYPE STACK (revertible: delete this block to return to all-Outfit).
   Figures and key numbers in the deck's serif, Cormorant Garamond, with
   lining numerals; headings and interface text stay in Outfit.
   ========================================================================== */
.figrow b,.ds-big,.feebars .bar .amt,.ledger-row .barval,.ledger-row .atval,.linechart .endlabel,.chart-figs b,
.slider-block .sv .val-in,.assume-ctl .av,.stat .fig,.fund-hero,.wf-caption h4,.hbar-row .hbar-top .pct{
  font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-variant-numeric:lining-nums;letter-spacing:0}
.figrow b{font-size:36px;line-height:1.05}
.figrow.gold b{font-size:50px}
.ds-big{font-size:50px;letter-spacing:-.005em}
.feebars .bar .amt{font-size:22px}
.ledger-row .barval{font-size:24px}
.ledger-row .atval{font-size:31px}
.linechart .endlabel{font-size:21px}
.chart-figs b{font-size:27px}
.slider-block .sv .val-in{font-size:24px}
.assume-ctl .av{font-size:19px}
@media(min-width:901px) and (max-height:820px){.figrow b{font-size:33px}.figrow.gold b{font-size:46px}.ds-big{font-size:46px}}

.slider-block .sv .val-in{width:auto;min-width:12ch;field-sizing:content}
.assume-ctl .av{field-sizing:content;min-width:9ch}

/* ==========================================================================
   FINANCIAL PLANNING rebuild (Sept 2026): four connected sections
   ========================================================================== */
/* 1. process: six connected steps, left to right */
.proc{list-style:none;margin:6px 0 0;padding:34px 0 0;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:0 28px;position:relative}
/* the rail is drawn segment by segment between the dots, so it ends at the
   last step whatever the number of steps */
.proc li::after{content:"";position:absolute;left:28px;right:-28px;top:-20px;height:1px;background:var(--gold);opacity:.55}
.proc li:last-child::after{display:none}
.proc li{position:relative;padding-top:8px}
.proc .pn{position:absolute;top:-34px;left:0;width:28px;height:28px;border-radius:50%;background:var(--paper);border:1.5px solid var(--gold);color:var(--gold-ink);
  font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:15px;display:flex;align-items:center;justify-content:center;font-variant-numeric:lining-nums}
.proc h3{font-family:var(--sans);font-weight:400;font-size:19px;line-height:1.25;letter-spacing:-.01em;margin:0 0 8px;min-height:2.5em}
.proc p{font-size:14px;line-height:1.5;color:var(--ink-2)}
.proc li{opacity:0;transition:opacity .4s ease}
.visible.proc li,.visible .proc li{opacity:1}
.visible.proc li:nth-child(2),.visible .proc li:nth-child(2){transition-delay:.12s}.visible.proc li:nth-child(3),.visible .proc li:nth-child(3){transition-delay:.24s}
.visible.proc li:nth-child(4),.visible .proc li:nth-child(4){transition-delay:.36s}.visible.proc li:nth-child(5),.visible .proc li:nth-child(5){transition-delay:.48s}.visible.proc li:nth-child(6),.visible .proc li:nth-child(6){transition-delay:.6s}
#process .cta-row{margin-top:34px}
/* 2. the 22 questions: one exhibit, the four intake questions set apart */
.q22-legend{display:flex;gap:28px;font-size:13px;color:var(--ink-2);margin-bottom:12px}
.q22-legend span{display:flex;align-items:center;gap:8px}
.q22-legend .sw{width:12px;height:12px;border:1px solid var(--rule);background:#fff}
.q22-legend .sw.core{background:#F0E6CC;border-color:var(--gold)}
.q22-cols{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0 36px;align-items:start}
.q22-list,.q22-core ul{list-style:none;margin:0;padding:0}
.q22-list li,.q22-core li{display:flex;gap:12px;padding:7px 0;font-size:14px;line-height:1.4;color:var(--ink)}
.q22-list li{border-bottom:1px solid var(--hair)}
.q22-list li:last-child{border-bottom:0}
.qn{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:16px;color:var(--ink-3);min-width:22px;font-variant-numeric:lining-nums;line-height:1.25}
.q22-core{background:#F0E6CC;border-left:3px solid var(--gold);padding:10px 16px 8px 14px;margin-bottom:8px}
.q22-core .qn{color:var(--gold-ink)}
.q22-core li{padding:5px 0;font-weight:500}
.q22-corelbl{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-ink);font-weight:500;margin-bottom:4px}
.q22-core,.q22-list li{opacity:0;transition:opacity .35s ease}
.visible .q22-core{opacity:1}
.visible .q22-list li{opacity:1;transition-delay:.35s}
/* 3. decisions: the hub is the exhibit */
#decisions .section-head{margin-bottom:20px}
#decisions .cta-row{margin-top:22px}
/* 4. ownership matrix */
.own{border-top:1px solid var(--ink)}
.own-head,.own-row{display:grid;grid-template-columns:1.6fr 1fr 1fr;align-items:center}
.own-head{padding:10px 0 8px;border-bottom:1px solid var(--rule);font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:500;color:var(--ink-2)}
.own-head .v{color:var(--gold-ink)}
.own-head div:nth-child(2),.own-head div:nth-child(3),.own-cell{text-align:center}
.own-row{padding:10px 0;border-bottom:1px solid var(--hair)}
.own-task{font-size:16px;color:var(--ink);display:flex;align-items:baseline;gap:12px}
.own-n{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:15px;color:var(--ink-3);min-width:18px;font-variant-numeric:lining-nums}
.own-cell{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:21px;letter-spacing:.01em}
.own-cell.client{color:var(--ink-3)}
.own-cell.advisor{color:var(--ink-2)}
.own-cell.valorem{color:var(--gold-ink)}
.own-row.final{border-top:1px solid var(--ink);border-bottom:0;margin-top:2px}
.own-row.final .own-task{font-weight:500}
.own-row.final .own-cell.client{color:var(--ink)}
.own-row{opacity:0;transition:opacity .3s ease}
.visible .own-row{opacity:1}
.visible .own-row:nth-child(3){transition-delay:.08s}.visible .own-row:nth-child(4){transition-delay:.16s}.visible .own-row:nth-child(5){transition-delay:.24s}.visible .own-row:nth-child(6){transition-delay:.32s}
.visible .own-row:nth-child(7){transition-delay:.4s}.visible .own-row:nth-child(8){transition-delay:.48s}.visible .own-row:nth-child(9){transition-delay:.6s}
@media(max-width:900px){.proc{grid-template-columns:1fr 1fr;gap:28px}.proc::before{display:none}.proc .pn{position:static;margin-bottom:8px}.q22-cols{grid-template-columns:1fr}.own-head,.own-row{grid-template-columns:1.4fr 1fr 1fr}.own-task{font-size:14px}.own-cell{font-size:17px}}
@media(min-width:901px) and (max-height:820px){
  .proc h3{font-size:18px}.proc p{font-size:13.5px}
  .q22-list li,.q22-core li{padding:5px 0;font-size:13.5px}.q22-core{padding:8px 14px 6px 12px}
  .own-row{padding:7px 0}.own-task{font-size:15px}.own-cell{font-size:19px}
  #process .cta-row{margin-top:22px}
}

@media(min-width:901px) and (max-height:820px){.q22-list li,.q22-core li{padding:4px 0}.q22-legend{margin-bottom:8px}#questions .section-head{margin-bottom:10px}}

/* ---- proactive service: responsibility comparison, six rows, final row set apart ---- */
.own{border-top:1px solid var(--ink);margin-top:6px}
.own-head,.own-row{grid-template-columns:1.8fr 1fr 1fr}
.own-head{padding:14px 0 12px;font-size:12px;letter-spacing:.1em;color:var(--ink-2);border-bottom:1px solid var(--rule)}
.own-head .v{color:var(--gold-ink)}
.own-row{padding:18px 0}
.own-task{font-size:17px;line-height:1.35;max-width:46ch;padding-right:24px}
.own-cell{font-size:22px}
.own-cell.client{color:var(--ink-3)}
.own-cell.advisor{color:var(--ink-2)}
.own-cell.valorem{color:var(--gold-ink)}
.own-row.final{border-top:2px solid var(--ink);margin-top:10px;padding-top:22px;border-bottom:0}
.own-row.final .own-task{font-weight:500}
.own-row.final .own-cell.client{color:var(--ink)}
#ownership .cta-row{margin-top:30px}
@media(min-width:901px) and (max-height:820px){.own-row{padding:12px 0}.own-task{font-size:16px}.own-cell{font-size:21px}.own-row.final{padding-top:16px;margin-top:6px}#ownership .cta-row{margin-top:20px}}

/* investment philosophy: body copy paragraph beside an exhibit */
.body-copy{font-size:17px;line-height:1.65;color:var(--ink-2);max-width:52ch}
@media(min-width:901px) and (max-height:820px){.body-copy{font-size:16px;line-height:1.6}}

/* ==========================================================================
   HOME AS A WEBSITE (Sept 2026): continuous scroll, varied rhythm, connective
   tissue, live exhibits. One timing for every hover.
   ========================================================================== */
:root{--t:180ms;--ease:cubic-bezier(.4,0,.2,1)}
/* flow: chapters take their natural height; generous, consistent air */
@media(min-width:901px){
  body.flow section:not(.tight):not(.cta){min-height:0;display:block;padding:44px 0}
  body.flow section.statement{padding:96px 0}
}
body.flow .section-head{margin-bottom:28px}
body.flow #private-markets .section-head{margin-bottom:22px}
/* scroll progress line under the nav */
.progress{position:fixed;top:var(--nav-h);left:0;height:2px;width:0;background:var(--gold);z-index:99;pointer-events:none;transition:width 80ms linear}
/* the floating call to action after the hero */
.float-cta{position:fixed;right:28px;bottom:28px;z-index:98;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity var(--t) var(--ease),transform var(--t) var(--ease),visibility 0s linear var(--t);box-shadow:0 10px 30px rgba(23,20,16,.22)}
.float-cta.show{opacity:1;visibility:visible;transform:none;transition:opacity var(--t) var(--ease),transform var(--t) var(--ease)}
@media(max-width:900px){.float-cta{right:16px;bottom:16px}}
/* chapter numerals in the gutter, wide screens only */
body.flow section{position:relative}
.chap-n{display:none}
@media(min-width:1400px){
  .chap-n{display:block;position:absolute;left:28px;top:124px;font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:15px;letter-spacing:.12em;color:var(--gold-ink);font-variant-numeric:lining-nums}
  .chap-n::after{content:"";display:block;width:22px;height:1px;background:var(--gold);margin-top:8px;opacity:.7}
}
/* the enormous number */
.statement{background:var(--paper)}
.statement .container-wide{display:grid;grid-template-columns:auto 1fr;gap:0 64px;align-items:center}
.big-num{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:clamp(88px,10vw,164px);line-height:.95;letter-spacing:-.02em;color:var(--ink);font-variant-numeric:lining-nums}
.big-line{font-size:20px;line-height:1.5;color:var(--ink-2);max-width:34ch;margin:0}
@media(max-width:900px){.statement .container-wide{grid-template-columns:1fr;gap:20px}.big-num{font-size:72px}}
/* evidence: pinned copy, documents stacking beside it */
.ev-grid{display:grid;grid-template-columns:5fr 7fr;gap:64px;align-items:start}
.ev-copy{position:sticky;top:calc(var(--nav-h) + 48px)}
.ev-copy .section-head{margin-bottom:0}
.ev-copy .section-head h2{max-width:none}
.ev-copy .f-note{margin-top:18px}
.ev-docs{display:grid;gap:22px}
.ev-docs .doc{max-width:none}
@media(max-width:900px){.ev-grid{grid-template-columns:1fr;gap:32px}.ev-copy{position:static}}
/* fee bars, edge to edge */
@media(min-width:901px){.bleed{width:100vw;margin-left:calc(50% - 50vw);padding:0 clamp(32px,6vw,120px)}}
/* hovers: one timing everywhere */
.lh-tile,.lh-lines line,.pie .slice,.pie-legend li,.feebars .yrcol,.doc,.ds-chip,.btn,.textlink,.nav-links a{transition:filter var(--t) var(--ease),border-color var(--t) var(--ease),color var(--t) var(--ease),background-color var(--t) var(--ease),stroke-opacity var(--t) var(--ease),stroke-width var(--t) var(--ease),opacity .4s ease}
.lh-stage.hovering .lh-tile:not(:hover){filter:opacity(.5) saturate(.7)}
.lh-tile:hover{border-color:var(--gold)}
.lh-lines line.hot{stroke-opacity:1;stroke-width:1.5}
.pie-panel.hovering .pie .slice:not(.hot){filter:opacity(.55)}
.pie .slice.hot{filter:brightness(1.08)}
.pie-legend li.hot b{color:var(--ink)}
.pie-panel.dark .pie-legend li.hot b{color:#fff}
.pie-legend li{cursor:default}
.feebars .cols:hover .yrcol:not(:hover){filter:opacity(.55)}
.doc:hover{border-color:var(--gold-lt)}

.ev-grid{grid-template-columns:1fr 1fr;gap:56px}
.ev-copy .section-head h2{font-size:clamp(22px,1.9vw,27px);line-height:1.2}
.ev-copy .lede{font-size:16px;line-height:1.6}

/* ==========================================================================
   HOME pass 2: slower bars, hover-revealed planning captions, the theme wheel
   ========================================================================== */
/* fee bars: each year rises in turn, unhurried */
.feebars .bar{transition:height 1.5s cubic-bezier(.2,.7,.2,1)}
.feebars .bar .amt{transition:opacity .5s ease}
.feebars.grown .yrcol.e0 .bar{transition-delay:.2s}.feebars.grown .yrcol.e1 .bar{transition-delay:.58s}.feebars.grown .yrcol.e2 .bar{transition-delay:.96s}.feebars.grown .yrcol.e3 .bar{transition-delay:1.34s}
.feebars.grown .yrcol.e0 .bar .amt{transition-delay:.35s}.feebars.grown .yrcol.e1 .bar .amt{transition-delay:.73s}.feebars.grown .yrcol.e2 .bar .amt{transition-delay:1.11s}.feebars.grown .yrcol.e3 .bar .amt{transition-delay:1.49s}
/* planning hub, Home only: a title per tile, the caption arrives on hover */
.lh-hint{font-size:13px;color:var(--ink-3);margin:-6px 0 14px}
.lh-hint::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--gold);margin-right:8px;vertical-align:1px}
.lh-compact .lh-tile{position:relative;min-height:0;padding:18px 20px;cursor:default}
.lh-compact .lh-tile .lh-area{margin-bottom:0;font-size:12px;display:flex;align-items:center;justify-content:space-between}
.lh-compact .lh-tile .lh-area::after{content:"+";font-family:var(--sans);font-weight:400;font-size:18px;line-height:1;color:var(--gold);transition:transform var(--t) var(--ease)}
.lh-compact .lh-tile:hover .lh-area::after,.lh-compact .lh-tile.open .lh-area::after{transform:rotate(45deg)}
.lh-compact .lh-tile .lh-txt{position:absolute;left:-1px;right:-1px;top:calc(100% - 1px);z-index:5;background:#fff;border:1px solid var(--gold);border-top:0;padding:4px 20px 16px;
  opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity var(--t) var(--ease),transform var(--t) var(--ease),visibility 0s linear var(--t);box-shadow:0 16px 36px rgba(23,20,16,.14)}
.lh-compact .lh-tile:hover .lh-txt,.lh-compact .lh-tile.open .lh-txt{opacity:1;visibility:visible;transform:none;transition:opacity var(--t) var(--ease),transform var(--t) var(--ease)}
.lh-compact .lh-tile:hover,.lh-compact .lh-tile.open{border-color:var(--gold);z-index:6}
.lh-compact .lh-grid{gap:18px}
/* the theme wheel */
.wheel-grid{align-items:center}
.theme-wheel{width:100%}
.wheel{width:100%;height:auto;display:block;overflow:visible}
.wheel-core circle{fill:#FBF9F4;stroke:var(--gold);stroke-width:2.5}
.wheel .wc-title{font-family:var(--sans);font-weight:400;font-size:24px;fill:var(--ink)}
.wheel .wc-sub{font-family:var(--sans);font-size:13px;fill:var(--ink-2)}
.wheel .spoke{cursor:pointer;opacity:0;transition:opacity .35s ease}
.core-tilts.visible .wheel .spoke,.visible .core-tilts .wheel .spoke{opacity:1}
.wheel .sp-line{stroke:var(--gold);stroke-width:1.5;opacity:.7;transition:opacity var(--t) var(--ease),stroke-width var(--t) var(--ease)}
.wheel .sp-dot{fill:var(--paper);stroke:var(--gold);stroke-width:1.5;transition:fill var(--t) var(--ease),stroke-width var(--t) var(--ease)}
.wheel .sp-label{font-family:var(--sans);font-weight:500;font-size:16px;fill:var(--ink);transition:fill var(--t) var(--ease)}
.wheel .spoke.active .sp-dot{fill:var(--gold);stroke-width:2.5}
.wheel .spoke.active .sp-line{opacity:1;stroke-width:2.5}
.wheel .spoke.active .sp-label{fill:var(--gold-ink)}
.wheel .spoke.dim{opacity:.45}
.wheel .spoke:focus{outline:none}
.theme-detail{margin:26px 0 22px;padding:20px 22px;border:1px solid var(--rule);background:#fff;min-height:214px}
.td-eyebrow{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-ink);font-weight:500;margin-bottom:10px}
.td-prompt{font-size:15px;color:var(--ink-3)}
.td-name{font-family:var(--sans);font-weight:400;font-size:22px;letter-spacing:-.01em;margin:0 0 4px}
.td-line{font-size:14px;color:var(--gold-ink);margin:0 0 10px;font-weight:500}
.td-blurb{font-size:14px;line-height:1.55;color:var(--ink-2);margin:0}
#public-markets .cta-row{margin-top:0;gap:28px}
@media(max-width:900px){.theme-detail{min-height:0}}

/* ==========================================================================
   HOME pass 3
   ========================================================================== */
/* fee bars: no dimming on hover; exhibit aligned to the copy; even spacing to the link */
.feebars .cols:hover .yrcol:not(:hover){filter:none}
#fee .assumptions{margin-top:14px}
#fee .cta-row{margin-top:26px}
/* alignment: figures first */
.ds-fig{display:flex;align-items:baseline;gap:14px;margin:10px 0 6px;font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-variant-numeric:lining-nums;opacity:0;transition:opacity .45s ease .3s}
.ds-body.play .ds-fig{opacity:1}
.ds-fig .from{font-size:30px;color:var(--ink-3)}
.ds-fig .arr{font-family:var(--sans);font-weight:300;font-size:26px;color:var(--ink-3)}
.ds-fig .to{font-size:46px;color:var(--ink);letter-spacing:-.01em;line-height:1}
.ds-fig .to.gold{color:var(--gold-ink)}
.ds-line{font-size:15px;color:var(--ink-2);margin-bottom:16px}
.ds-line b{font-weight:500;color:var(--ink)}
.ds-panel.val .ds-line b{color:var(--gold-ink)}
.ds-cap{font-size:13px;color:var(--ink-3);margin-top:8px}
.ds-panel .ds-track{margin:0}
/* planning hub: a hovered tile grows in place and the grid reflows around it */
.lh-compact .lh-tile .lh-txt{position:static;left:auto;right:auto;top:auto;background:transparent;border:0;padding:0;box-shadow:none;transform:none;visibility:visible;
  max-height:0;overflow:hidden;opacity:0;margin-top:0;transition:max-height .32s var(--ease),opacity .25s var(--ease),margin-top .32s var(--ease)}
.lh-compact .lh-tile:hover .lh-txt,.lh-compact .lh-tile.open .lh-txt{max-height:180px;opacity:1;margin-top:12px;visibility:visible;transform:none}
.lh-compact .lh-tile:hover,.lh-compact .lh-tile.open{z-index:1}
.lh-compact .lh-grid{align-items:start}
/* theme card: a photograph with the name set into it, the thesis sentence highlighted; nothing shown at rest */
.theme-detail{margin:22px 0 22px;padding:0;border:0;background:transparent;min-height:296px;position:relative}
.theme-detail .tcard{margin:0;background:#fff;border:1px solid var(--rule);box-shadow:0 18px 44px rgba(23,20,16,.12);opacity:0;transform:translateY(6px);transition:opacity var(--t) var(--ease),transform var(--t) var(--ease)}
.theme-detail.on .tcard{opacity:1;transform:none}
.tc-img{position:relative;aspect-ratio:16/7;background-size:cover;background-position:center;display:flex;align-items:flex-end;padding:18px 22px}
.tc-img::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(16,14,10,0) 35%,rgba(16,14,10,.78) 100%)}
.tc-img h4{position:relative;font-family:var(--sans);font-weight:400;font-size:26px;letter-spacing:-.01em;color:#F3EFE5;margin:0;text-shadow:0 1px 2px rgba(0,0,0,.3)}
.tc-blurb{font-size:14px;line-height:1.6;color:var(--ink-2);margin:0;padding:16px 22px 18px}
.tc-blurb mark{background:linear-gradient(transparent 55%,rgba(200,155,44,.35) 55%);color:var(--ink);font-weight:500;padding:0 1px}
@media(max-width:900px){.theme-detail{min-height:0}}

.theme-detail{min-height:500px}
@media(max-width:900px){.theme-detail{min-height:0}}

/* ==========================================================================
   HOME pass 4
   ========================================================================== */
/* alignment ledger */
.dsl{margin-top:8px}
.dsl-row{display:grid;grid-template-columns:260px 1fr 260px;gap:0 26px;align-items:center;padding:20px 0;border-bottom:1px solid var(--hair)}
.dsl-row:first-child{border-top:1px solid var(--rule)}
.dsl-lbl{font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;color:var(--ink-2)}
.dsl-row.val .dsl-lbl{color:var(--gold-ink)}
.dsl-bar{display:flex;height:22px;background:var(--hair)}
.dsl-bar .seg{height:100%;width:0;transition:width .9s cubic-bezier(.4,0,.2,1)}
.dsl-bar .seg.keep{background:var(--ink-2)}
.dsl-bar .seg.lost{background:#9E2B25;transition-delay:.55s;transition-duration:.6s}
.dsl-bar .seg.gold{background:var(--gold)}
.ds-body.play .dsl-bar .seg{width:var(--w)}
.dsl-val{display:flex;align-items:baseline;gap:14px;font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-variant-numeric:lining-nums;white-space:nowrap}
.dsl-val .num{font-size:34px;color:var(--ink);line-height:1}
.dsl-val .num.gold{color:var(--gold-ink)}
.dsl-val .loss{font-size:22px;color:#9E2B25;opacity:0;transition:opacity .4s ease 1s}
.dsl-val .same{font-family:var(--sans);font-weight:400;font-size:13px;color:var(--ink-3);opacity:0;transition:opacity .4s ease 1s}
.ds-body.play .dsl-val .loss,.ds-body.play .dsl-val .same{opacity:1}
.dsl-scale{display:grid;grid-template-columns:260px 1fr 260px;gap:0 26px;font-size:11px;color:var(--ink-3);padding-top:8px}
.dsl-scale > div{grid-column:2;display:flex;justify-content:space-between}
.dsl-cap{font-size:14px;color:var(--ink-2);margin-top:18px;max-width:80ch}
@media(max-width:900px){.dsl-row,.dsl-scale{grid-template-columns:1fr;gap:8px}.dsl-scale > div{grid-column:1}}
/* hub: dimmed tiles fade their text, never their white face, so lines cannot show through */
.lh-stage.hovering .lh-tile:not(:hover){filter:none}
.lh-stage.hovering .lh-tile:not(:hover) .lh-area{color:var(--ink-3)}
.lh-stage.hovering .lh-tile:not(:hover) .lh-area::after{color:var(--rule)}
/* theme card: no reserved space; the column grows to fit the card and shrinks back */
.wheel-grid{align-items:start}
.theme-detail{min-height:0;margin:0;display:grid;grid-template-rows:0fr;transition:grid-template-rows .38s var(--ease)}
.theme-detail.on{grid-template-rows:1fr}
.theme-detail > .tcard{overflow:hidden;min-height:0;margin:22px 0 26px}
.theme-detail.on > .tcard{opacity:1;transform:none}
@media(max-width:900px){.theme-detail{min-height:0}}

.core-tilts .wheel-core circle{opacity:1}
.core-tilts .wheel .sp-dot{opacity:1;transition:fill var(--t) var(--ease),stroke-width var(--t) var(--ease)}

/* ==========================================================================
   HOME pass 5
   ========================================================================== */
/* hub connectors are paths now */
.lh-lines path{transition:stroke-opacity var(--t) var(--ease),stroke-width var(--t) var(--ease)}
.lh-lines path.hot{stroke-opacity:1;stroke-width:1.5}
/* alignment: a fee that falls draws leftward from zero; Valorem sits on the zero line */
.dsl-head{display:grid;grid-template-columns:260px 1fr 260px;gap:0 26px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;color:var(--ink-3);padding:0 0 10px}
.dsl-row:first-child{border-top:0}
.dsl-head + .dsl-row{border-top:1px solid var(--rule)}
.dsl-bar.neg{position:relative;background:transparent;height:26px}
.dsl-bar.neg::before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--hair)}
.dsl-bar.neg .zero{position:absolute;right:0;top:-6px;bottom:-6px;width:2px;background:var(--ink-3)}
.dsl-bar.neg .zero.gold{background:var(--gold);width:3px;right:-1px}
.dsl-bar.neg .seg.lost{position:absolute;right:0;top:0;height:100%;background:#9E2B25;width:0;transition:width .9s cubic-bezier(.4,0,.2,1);transition-delay:.25s}
.ds-body.play .dsl-bar.neg .seg.lost{width:var(--w)}
.dsl-val .num.loss{color:#9E2B25;opacity:1;font-size:34px}
.dsl-val .sub{font-family:var(--sans);font-weight:400;font-size:13px;color:var(--ink-3);opacity:0;transition:opacity .4s ease 1s}
.ds-body.play .dsl-val .sub{opacity:1}
.dsl-val{flex-direction:column;align-items:flex-start;gap:4px}
.dsl-scale > div span:last-child{color:var(--ink-2);font-weight:500}
/* theme card: plain blurb */
.tc-blurb mark{background:none;color:inherit;font-weight:inherit;padding:0}

/* ---- theme card media: short muted clips; Hyperscalers cycles the four company marks ---- */
.tc-img video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.tc-img.tc-logos{background:#FBF9F4;align-items:flex-end}
.tc-img.tc-logos::before{background:linear-gradient(180deg,rgba(16,14,10,0) 60%,rgba(16,14,10,.55) 100%)}
.tc-img.tc-logos img{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);width:38%;max-height:26%;object-fit:contain;opacity:0;animation:hsCycle 8.8s infinite}
@keyframes hsCycle{0%{opacity:0}5%{opacity:1}22%{opacity:1}27%{opacity:0}100%{opacity:0}}
.tc-img.tc-logos h4{color:#F3EFE5}

/* ---- alignment: before and after, left to right; the after bar shrinks and leaves a ghost of what was lost ---- */
.dsl2{margin-top:10px;border-top:1px solid var(--rule)}
.d2-group{padding:18px 0 16px;border-bottom:1px solid var(--hair)}
.d2-lbl{font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;color:var(--ink-2);margin-bottom:10px}
.d2-group.val .d2-lbl{color:var(--gold-ink)}
.d2-row{display:grid;grid-template-columns:64px 1fr 120px 160px;gap:0 18px;align-items:center;padding:5px 0}
.d2-when{font-size:12px;color:var(--ink-3);letter-spacing:.04em}
.d2-bar{position:relative;height:20px;background:transparent}
.d2-fill{position:absolute;left:0;top:0;height:100%;background:var(--ink-2);width:0;transition:width .8s cubic-bezier(.4,0,.2,1)}
.d2-fill.gold{background:var(--gold)}
.ds-body.play .d2-fill{width:var(--w)}
.ds-body.play .d2-fill.shrink{width:var(--w0);animation:d2shrink 1.35s cubic-bezier(.4,0,.2,1) forwards}
@keyframes d2shrink{0%{width:var(--w0)}33%{width:var(--w0)}100%{width:var(--w)}}
.d2-ghost{position:absolute;left:0;top:0;height:100%;width:0;border:1px dashed #9E2B25;box-sizing:border-box;opacity:0;transition:opacity .4s ease 1.2s}
.ds-body.play .d2-ghost{width:var(--w);opacity:1;background:repeating-linear-gradient(135deg,rgba(158,43,37,.14) 0 4px,transparent 4px 8px)}
.d2-val{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:24px;color:var(--ink);font-variant-numeric:lining-nums;white-space:nowrap}
.d2-group.val .d2-val{color:var(--gold-ink)}
.d2-delta{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:24px;color:#9E2B25;white-space:nowrap;opacity:0;transition:opacity .4s ease 1.3s}
.d2-delta.same{font-family:var(--sans);font-weight:400;font-size:13px;color:var(--ink-3)}
.ds-body.play .d2-delta{opacity:1}
@media(max-width:900px){.d2-row{grid-template-columns:52px 1fr 90px}.d2-delta{grid-column:2/-1}}

/* ---- hub: plain tiles again; the connector lines step out of the way while a tile is hovered ---- */
.lh-lines{transition:opacity .25s var(--ease)}
.lh-stage.hovering .lh-lines{opacity:0 !important}
.lh-hint{display:none}
/* ---- hyperscalers: the four marks together ---- */
.tc-img.tc-logos .lg-grid{position:absolute;left:8%;right:8%;top:8%;bottom:30%;display:grid;grid-template-columns:1fr 1fr;gap:10px 28px;align-items:center;justify-items:center}
.tc-img.tc-logos .lg{width:100%;height:100%;display:flex;align-items:center;justify-content:center}
.tc-img.tc-logos .lg img{position:static;transform:none;opacity:1;animation:none;max-width:78%;max-height:64%;width:auto;height:auto;object-fit:contain}
.tc-img.tc-logos::before{background:linear-gradient(180deg,rgba(16,14,10,0) 62%,rgba(16,14,10,.55) 100%)}

/* ---- hub on Home: title at rest, caption unfolds beneath the tile on hover without moving anything; lines hide while hovering ---- */
.lh-hint{display:block;font-size:13px;color:var(--ink-3);margin:-6px 0 14px}
.lh-compact .lh-tile{position:relative;min-height:0;padding:18px 20px}
.lh-compact .lh-tile .lh-area{margin-bottom:0;display:flex;align-items:center;justify-content:space-between}
.lh-compact .lh-tile .lh-txt{position:absolute;left:-1px;right:-1px;top:calc(100% - 1px);z-index:5;background:#fff;border:1px solid var(--gold);border-top:0;padding:4px 20px 16px;
  max-height:none;overflow:visible;margin-top:0;box-shadow:0 16px 36px rgba(23,20,16,.14);
  opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity var(--t) var(--ease),transform var(--t) var(--ease),visibility 0s linear var(--t)}
.lh-compact .lh-tile:hover .lh-txt{opacity:1;visibility:visible;transform:none;max-height:none;margin-top:0;transition:opacity var(--t) var(--ease),transform var(--t) var(--ease)}
.lh-compact .lh-tile:hover{border-color:var(--gold);z-index:6}
/* ---- wheel: a small plus marks each theme as hoverable ---- */
.wheel .sp-plus{font-family:var(--sans);font-weight:300;font-size:22px;fill:var(--gold);pointer-events:none;transition:opacity var(--t) var(--ease)}
.wheel .spoke.active .sp-plus{opacity:0}
.wheel-hint{font-size:13px;color:var(--ink-3);margin:6px 0 0;text-align:center}
.wheel-hint::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--gold);margin-right:8px;vertical-align:1px}

/* ---- hub: the hovered tile grows in place inside the grid, so it can never cover another box; lines hide while hovering ---- */
.lh-compact .lh-tile .lh-txt,.lh-compact .lh-tile:hover .lh-txt{position:static;left:auto;right:auto;top:auto;z-index:auto;background:transparent;border:0;padding:0;box-shadow:none;transform:none;visibility:visible;overflow:hidden}
.lh-compact .lh-tile .lh-txt{max-height:0;opacity:0;margin-top:0;transition:max-height .3s var(--ease),opacity .22s var(--ease),margin-top .3s var(--ease)}
.lh-compact .lh-tile:hover .lh-txt{max-height:200px;opacity:1;margin-top:12px}
.lh-compact .lh-grid{align-items:start}
.lh-compact .lh-tile:hover{z-index:auto}

/* ---- fee bars ~15% quicker ---- */
.feebars .bar{transition:height 1.28s cubic-bezier(.2,.7,.2,1)}
.feebars.grown .yrcol.e0 .bar{transition-delay:.17s}.feebars.grown .yrcol.e1 .bar{transition-delay:.49s}.feebars.grown .yrcol.e2 .bar{transition-delay:.81s}.feebars.grown .yrcol.e3 .bar{transition-delay:1.13s}
.feebars.grown .yrcol.e0 .bar .amt{transition-delay:.3s}.feebars.grown .yrcol.e1 .bar .amt{transition-delay:.62s}.feebars.grown .yrcol.e2 .bar .amt{transition-delay:.94s}.feebars.grown .yrcol.e3 .bar .amt{transition-delay:1.26s}
/* ---- theme card: media is only the clip; the name sits in the white body above the blurb ---- */
.tc-img::before{display:none}
.tc-img{padding:0;display:block}
.tc-body{padding:16px 22px 18px}
.tc-name{font-family:var(--sans);font-weight:400;font-size:22px;letter-spacing:-.01em;margin:0 0 6px;color:var(--ink)}
.tc-body .tc-blurb{padding:0}
.tc-img.tc-logos .lg-grid{top:10%;bottom:10%}

/* ==========================================================================
   INVESTMENT PHILOSOPHY private-markets rebuild (Sept 2026)
   ========================================================================== */
/* waterfall */
.wfx{margin-top:6px}
.wf-svg{display:block;width:100%;height:auto;font-family:var(--sans)}
.wf-grid{stroke:var(--rule);stroke-width:1;shape-rendering:crispEdges}
.wf-axis{font-size:12px;fill:var(--ink-3);font-weight:500}
.wf-min{stroke:var(--ink);stroke-width:1.5;stroke-dasharray:6 5;shape-rendering:crispEdges}
.wf-minlbl{font-size:12px;fill:var(--ink);font-weight:500;letter-spacing:.04em}
.wf-bar{opacity:0;transition:opacity .35s ease}
.visible .wf-bar{opacity:1}
.wf-bar.start{fill:var(--ink-2)}
.wf-bar.cut{fill:#D2C29A}
.wf-bar.net.ok{fill:var(--gold)}
.wf-bar.net.bad{fill:#9E2B25}
.wf-link{stroke:var(--ink-3);stroke-width:1;stroke-dasharray:3 3}
.wf-val{font-size:14px;font-weight:500;fill:var(--ink-2);opacity:0;transition:opacity .35s ease;font-variant-numeric:lining-nums}
.visible .wf-val{opacity:1}
.wf-val.start{fill:var(--ink)}
.wf-val.net.ok{fill:var(--gold-ink);font-size:16px}
.wf-val.net.bad{fill:#9E2B25;font-size:16px}
.wf-cat{font-size:12px;fill:var(--ink-3)}
.wf-title{font-size:17px;fill:var(--ink);font-weight:400}
.wf-sub{font-size:12px;fill:var(--ink-3)}
.wf-verdict{font-size:13px;font-weight:500;letter-spacing:.04em}
.wf-verdict.ok{fill:var(--gold-ink)}
.wf-verdict.bad{fill:#9E2B25}
/* capacity */
.cap{margin-top:4px}
.cap-h{display:flex;justify-content:space-between;font-size:12px;letter-spacing:.06em;text-transform:uppercase;font-weight:500;color:var(--ink-3);margin-bottom:10px}
.cap-scale{display:flex;height:58px;border:1px solid var(--rule)}
.cap-seg{width:var(--w);display:flex;flex-direction:column;justify-content:center;padding:0 14px;border-right:1px solid #fff;color:var(--ink)}
.cap-seg b{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:20px;line-height:1.05;font-variant-numeric:lining-nums}
.cap-seg span{font-size:12px;color:var(--ink-2)}
.cap-seg.c1{background:var(--gold);color:#fff}.cap-seg.c1 span{color:#FBF3DD}
.cap-seg.c2{background:#DCC27A}
.cap-seg.c3{background:#EFE7D3}
.cap-axis{display:grid;grid-template-columns:14.29% 28.57% 57.14%;font-size:11px;color:var(--ink-3);margin:6px 0 22px;position:relative}
.cap-axis span:nth-child(1){position:absolute;left:0}.cap-axis span:nth-child(2){grid-column:2;justify-self:start;margin-left:-10px}.cap-axis span:nth-child(3){grid-column:3;justify-self:start;margin-left:-14px}.cap-axis span:nth-child(4){position:absolute;right:0}
.cap-fund{display:grid;grid-template-columns:230px 1fr 250px;gap:0 22px;align-items:center;padding:12px 0;border-top:1px solid var(--hair)}
.cap-lbl b{display:block;font-family:var(--sans);font-weight:500;font-size:16px;color:var(--ink)}
.cap-lbl span{font-size:13px;color:var(--ink-3)}
.cap-bar{position:relative;height:28px}
.cap-span{position:absolute;left:0;top:0;height:100%;width:0;display:flex;transition:width 1s cubic-bezier(.4,0,.2,1) .2s;overflow:hidden}
.visible .cap-span{width:var(--w)}
.cap-span i{display:block;height:100%}
.cap-span i.e{background:var(--gold)}.cap-span i.g{background:#DCC27A}.cap-span i.a{background:#EFE7D3;border:1px solid #D9CFB4;box-sizing:border-box}
.cap-val{font-size:14px;color:var(--ink-2)}
.cap-val b{color:var(--ink);font-weight:500}
.cap-hero{font-family:var(--sans);font-weight:400;font-size:20px;color:var(--ink);margin:16px 0 0;padding-top:14px;border-top:1px solid var(--rule)}
.cap-hero b{font-weight:500;color:var(--gold-ink)}
/* redemptions */
.rdm{margin-top:4px}
.rdm-out{display:flex;align-items:center;gap:18px;margin-bottom:14px;min-height:54px}
.rdm-outlbl{font-size:12px;letter-spacing:.06em;text-transform:uppercase;font-weight:500;color:#9E2B25}
.rdm-tray{display:flex;gap:8px}
.rdm-tray .rt{width:64px;height:44px;border:1px dashed #9E2B25;opacity:0;transition:opacity .4s ease}
.visible .rdm-tray .rt{opacity:1}
.visible .rdm-tray .rt[data-n="1"]{transition-delay:1.5s}.visible .rdm-tray .rt[data-n="2"]{transition-delay:1.75s}.visible .rdm-tray .rt[data-n="3"]{transition-delay:2s}
.rdm-h{display:flex;justify-content:space-between;font-size:12px;letter-spacing:.06em;text-transform:uppercase;font-weight:500;color:var(--ink-3);margin-bottom:8px}
.rdm-row{display:grid;grid-template-columns:repeat(8,1fr);gap:8px}
.rdm-row .rt{background:#fff;border:1px solid var(--rule);min-height:84px;padding:10px 12px;display:flex;flex-direction:column;justify-content:space-between;transition:opacity .5s ease,transform .5s ease}
.rdm-row .rt b{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:22px;color:var(--ink-3);font-variant-numeric:lining-nums}
.rdm-row .rt span{font-size:12px;color:var(--ink-2);line-height:1.3}
.rdm-row .rt.liquid{border-color:var(--gold);background:#FBF3DD}
.rdm-row .rt.liquid b{color:var(--gold-ink)}
.visible .rdm-row .rt.liquid{opacity:0;transform:translateY(-14px)}
.visible .rdm-row .rt.liquid[data-n="1"]{transition-delay:1.5s}.visible .rdm-row .rt.liquid[data-n="2"]{transition-delay:1.75s}.visible .rdm-row .rt.liquid[data-n="3"]{transition-delay:2s}
.rdm-cap{margin-top:12px;font-size:14px;color:var(--ink-2);position:relative;min-height:22px}
.rdm-cap span{position:absolute;left:0;top:0;transition:opacity .5s ease}
.rdm-cap .after{opacity:0}
.visible .rdm-cap .before{opacity:0;transition-delay:1.9s}
.visible .rdm-cap .after{opacity:1;transition-delay:2.1s}
/* swim lanes */
.slanes{margin-top:4px}
.sl-track{position:relative;display:grid;grid-template-columns:170px repeat(7,1fr);gap:0 14px;align-items:end;padding-bottom:12px}
.sl-line{position:absolute;left:calc(170px + 14px + 11px);right:11px;bottom:23px;height:1px;background:var(--gold);opacity:.6}
.sl-step{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;font-size:12px;letter-spacing:.06em;text-transform:uppercase;font-weight:500;color:var(--ink-2)}
.sl-step i{width:22px;height:22px;border-radius:50%;background:var(--paper);border:1.5px solid var(--gold);color:var(--gold-ink);font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:13px;font-style:normal;display:flex;align-items:center;justify-content:center;order:2}
.sl-lane{display:grid;grid-template-columns:170px repeat(7,1fr);gap:0 14px;padding:14px 0;border-top:1px solid var(--rule)}
.sl-lab{font-size:12px;letter-spacing:.06em;text-transform:uppercase;font-weight:500;color:var(--ink-3);padding-top:4px}
.sl-lane.val .sl-lab{color:var(--gold-ink)}
.sl-cell{font-size:13px;line-height:1.45;color:var(--ink-2)}
.sl-lane.client .sl-cell{color:var(--ink);background:#fff;border:1px solid var(--rule);padding:8px 10px;align-self:start}
.sl-lane.client .sl-cell.quiet{color:var(--ink-3);background:transparent;border-style:dashed}
.sl-lane.val .sl-cell{color:var(--ink)}
@media(min-width:901px) and (max-height:820px){
  .cap-scale{height:50px}.cap-fund{padding:9px 0}.cap-hero{font-size:18px;margin-top:10px;padding-top:10px}
  .rdm-row .rt{min-height:72px;padding:8px 10px}
  .sl-lane{padding:10px 0}.sl-cell{font-size:12.5px}
}
@media(max-width:900px){.cap-fund{grid-template-columns:1fr;gap:8px}.rdm-row{grid-template-columns:repeat(4,1fr)}.sl-track,.sl-lane{grid-template-columns:1fr;gap:8px}.sl-line{display:none}}

.wf-val.in{fill:var(--ink);font-size:13px}
.wf-minlbl{font-size:12px}

/* fund spans sit on the same axis as the capacity scale: full-width track, label above, value at the bar's end */
.cap-fund{display:block;padding:10px 0 12px;border-top:1px solid var(--hair)}
.cap-lbl{display:flex;align-items:baseline;gap:10px;margin-bottom:6px}
.cap-lbl b{display:inline}
.cap-bar{position:relative;height:28px;width:100%}
.cap-val{position:absolute;left:calc(var(--w) + 12px);top:50%;transform:translateY(-50%);white-space:nowrap;opacity:0;transition:opacity .4s ease 1s}
.visible .cap-val{opacity:1}
.cap-axis{margin-bottom:14px}
@media(min-width:901px) and (max-height:820px){.cap-fund{padding:8px 0 10px}}

.cap-val.below{left:auto;right:calc(100% - var(--w));top:100%;transform:none;margin-top:6px}
.cap-fund:has(.cap-val.below) .cap-bar{margin-bottom:26px}

/* ---- redemptions, told in three plain steps for a first-time reader ---- */
.rd3{display:grid;grid-template-columns:1fr 40px 1fr 40px 1fr;gap:0 10px;align-items:stretch;margin-top:6px}
.rd-step{background:#fff;border:1px solid var(--rule);padding:20px 22px 18px;display:flex;flex-direction:column}
.rd-step.last{border-color:var(--gold)}
.rd-top{display:flex;align-items:center;gap:12px;margin-bottom:8px}
.rd-n{width:26px;height:26px;border-radius:50%;background:var(--ink);color:var(--paper);font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:15px;display:flex;align-items:center;justify-content:center;flex:none}
.rd-step.last .rd-n{background:var(--gold)}
.rd-top h4{font-family:var(--sans);font-weight:500;font-size:16px;margin:0;color:var(--ink)}
.rd-step p{font-size:14px;line-height:1.5;color:var(--ink-2);margin:0 0 16px;min-height:3em}
.rd-blocks{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}
.bl{display:block;aspect-ratio:1.5;border-radius:2px;position:relative}
.bl.easy{background:var(--gold)}
.bl.hard{background:#CFC7B4}
.bl.gone{background:transparent;border:1.5px dashed #9E2B25}
.bl.sold{background:#E8D39A;overflow:hidden}
.bl.sold::before,.bl.sold::after{content:"";position:absolute;left:50%;top:-30%;height:160%;width:2px;background:#9E2B25;transform-origin:center}
.bl.sold::before{transform:translateX(-50%) rotate(45deg)}.bl.sold::after{transform:translateX(-50%) rotate(-45deg)}
.rd-key{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:12px;color:var(--ink-2);margin-top:auto}
.rd-key span{display:flex;align-items:center;gap:7px}
.rd-key .bl{width:14px;height:10px;aspect-ratio:auto}
.rd-cash{margin-top:auto;font-size:12px;letter-spacing:.04em;text-transform:uppercase;font-weight:500;color:#9E2B25;padding:8px 10px;border:1px dashed #9E2B25;text-align:center}
.rd-arrow{display:flex;align-items:center;justify-content:center;font-size:26px;color:var(--gold);font-weight:300}
.rd3 .rd-step{opacity:0;transition:opacity .4s ease}
.rd3.visible .rd-step,.visible .rd3 .rd-step{opacity:1}
.rd3.visible .rd-step:nth-child(3),.visible .rd3 .rd-step:nth-child(3){transition-delay:.35s}
.rd3.visible .rd-step:nth-child(5),.visible .rd3 .rd-step:nth-child(5){transition-delay:.7s}
@media(min-width:901px) and (max-height:820px){.rd-step{padding:14px 16px 12px}.rd-step p{margin-bottom:10px}.rd-blocks{margin-bottom:10px}}
@media(max-width:900px){.rd3{grid-template-columns:1fr}.rd-arrow{transform:rotate(90deg);height:36px}}

/* ---- theme card: a theme is always open; the card keeps one height whichever theme is shown ---- */
.theme-detail{grid-template-rows:1fr}
.theme-detail > .tcard{margin:18px 0 20px}
.tc-body .tc-blurb{min-height:calc(1.6em * 5)}
.tc-img{aspect-ratio:16/7}
/* ---- public markets chapter: title, sub and body in one column, the exhibit beside them ---- */
.pub-grid{grid-template-columns:6fr 6fr;gap:64px;align-items:center}
.pub-copy .pg-title{font-size:clamp(28px,2.6vw,36px);max-width:none;margin-bottom:14px}
.pub-copy .lede{font-size:17px;line-height:1.6;max-width:none;margin:0 0 16px}
.pub-copy .body-copy{font-size:15px;line-height:1.65;color:var(--ink-2);max-width:none}
@media(min-width:901px) and (max-height:820px){
  .theme-detail > .tcard{margin:12px 0 14px}
  .tc-img{aspect-ratio:16/6.2}
  .tc-body{padding:12px 20px 14px}.tc-name{font-size:20px;margin-bottom:4px}.tc-body .tc-blurb{font-size:13.5px;min-height:calc(1.55em * 5)}
  #tilts .lede{font-size:16px;line-height:1.55}
}

@media(min-width:901px) and (max-height:820px){#tilts .tc-img{aspect-ratio:16/5.4}#tilts .theme-detail > .tcard{margin:10px 0 12px}#tilts .tc-body{padding:10px 20px 12px}#tilts .tc-body .tc-blurb{min-height:calc(1.5em * 5);line-height:1.5}}

/* ---- theme card, horizontal: clip on the left, name and blurb on the right; shorter, so both chapters fit with room ---- */
.theme-detail > .tcard{display:grid;grid-template-columns:42% 1fr;align-items:stretch;margin:18px 0 18px}
.tcard .tc-img{aspect-ratio:auto;height:100%;min-height:196px}
.tcard .tc-img.tc-logos .lg-grid{left:10%;right:10%;top:10%;bottom:10%;gap:8px 18px}
.tcard .tc-body{padding:16px 20px 16px;display:flex;flex-direction:column;justify-content:center}
.tcard .tc-body .tc-blurb{min-height:0;font-size:13.5px;line-height:1.55}
.tcard .tc-name{font-size:20px;margin-bottom:6px}
#tilts .wheel-grid,#public-markets .wheel-grid{align-items:center}
#tilts .core-tilts,#public-markets .core-tilts{padding-top:6px}
#public-markets .theme-detail > .tcard{margin:16px 0 18px}
body.flow #public-markets{padding:72px 0 80px}
body.flow #public-markets .lede{font-size:17px;line-height:1.6}
@media(min-width:901px) and (max-height:820px){
  .theme-detail > .tcard{margin:12px 0 12px}
  #tilts .tc-img{aspect-ratio:auto}
  #tilts .tc-body{padding:12px 18px}
  #tilts .tc-body .tc-blurb{min-height:0;font-size:13px;line-height:1.5}
}
@media(max-width:900px){.theme-detail > .tcard{grid-template-columns:1fr}.tcard .tc-img{aspect-ratio:16/8;min-height:0}}
/* ---- public markets chapter: the two paragraphs share one weight and family ---- */
.pub-copy .lede{font-weight:400;font-size:18px}
.pub-copy .body-copy{font-weight:400;font-size:16px;color:var(--ink-2)}
/* ---- the four adjustments ---- */
.adj{margin-top:6px}
.adj-strip{display:grid;grid-template-columns:1.4fr repeat(4,1fr) 1.6fr;gap:0 10px;align-items:end;height:150px;border-bottom:1px solid var(--ink);padding-bottom:0}
.adj-bar{position:relative;height:var(--h);background:#D2C29A;display:flex;align-items:flex-start;justify-content:center;transform-origin:bottom;transform:scaleY(0);transition:transform .6s var(--ease)}
.visible .adj-bar{transform:none}
.visible .adj-bar:nth-child(2){transition-delay:.15s}.visible .adj-bar:nth-child(3){transition-delay:.3s}.visible .adj-bar:nth-child(4){transition-delay:.45s}.visible .adj-bar:nth-child(5){transition-delay:.6s}.visible .adj-bar:nth-child(6){transition-delay:.8s}
.adj-bar.h{background:var(--ink-2)}
.adj-bar.k{background:var(--gold)}
.adj-bar span{position:absolute;top:-24px;left:0;right:0;text-align:center;font-size:12px;letter-spacing:.06em;text-transform:uppercase;font-weight:500;color:var(--ink-2);white-space:nowrap}
.adj-bar.k span{color:var(--gold-ink)}
.adj-bar i{margin-top:8px;width:22px;height:22px;border-radius:50%;background:#fff;border:1.5px solid var(--gold);color:var(--gold-ink);font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:13px;font-style:normal;display:flex;align-items:center;justify-content:center}
.adj-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0 28px;margin-top:22px}
.adj-item i{width:24px;height:24px;border-radius:50%;background:var(--ink);color:var(--paper);font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:14px;font-style:normal;display:flex;align-items:center;justify-content:center;margin-bottom:10px}
.adj-item h4{font-family:var(--sans);font-weight:500;font-size:17px;margin:0 0 6px;color:var(--ink)}
.adj-item p{font-size:14px;line-height:1.5;color:var(--ink-2);margin:0}
.adj-close{margin:20px 0 0;padding-top:14px;border-top:1px solid var(--rule);font-size:18px;color:var(--ink)}
@media(min-width:901px) and (max-height:820px){.adj-strip{height:120px}.adj-grid{margin-top:16px}.adj-item p{font-size:13.5px}.adj-close{margin-top:14px;font-size:17px}}
@media(max-width:900px){.adj-strip{grid-template-columns:repeat(6,1fr)}.adj-bar span{font-size:10px;white-space:normal}.adj-grid{grid-template-columns:1fr 1fr;gap:18px}}

/* ==========================================================================
   Corrections, 6 Sept: vertical theme cards that fit with room; the net
   exhibit as one bar with the pieces taken off it; matching paragraphs.
   ========================================================================== */
/* theme card, vertical again */
.theme-detail > .tcard{display:block;margin:16px 0 16px}
.tcard .tc-img{aspect-ratio:16/6;height:auto;min-height:0}
.tcard .tc-img.tc-logos .lg-grid{left:8%;right:8%;top:10%;bottom:10%;gap:10px 28px}
.tcard .tc-body{display:block;padding:14px 20px 14px}
.tcard .tc-name{font-size:20px;margin-bottom:5px}
.tcard .tc-body .tc-blurb{font-size:13.5px;line-height:1.5;min-height:calc(1.5em * 4)}
body.flow #public-markets{padding:48px 0 56px}
body.flow #public-markets .section-head,body.flow #public-markets .eyebrow{margin-bottom:6px}
body.flow #public-markets h2{margin-bottom:10px}
body.flow #public-markets .lede{font-size:17px;line-height:1.55;margin-bottom:0}
#tilts .lede{font-size:17px;line-height:1.55}
#tilts .theme-detail > .tcard,#public-markets .theme-detail > .tcard{margin:14px 0 14px}
@media(min-width:901px) and (max-height:820px){
  #tilts .tc-img{aspect-ratio:16/5.4}
  #tilts .tc-body{padding:10px 18px 12px}
  #tilts .tc-body .tc-blurb{min-height:calc(1.5em * 4)}
}
/* first chapter: the two paragraphs are one style */
.pub-copy .lede,.pub-copy .body-copy{font-family:var(--sans);font-weight:400;font-size:17px;line-height:1.62;color:var(--ink-2);letter-spacing:0;max-width:none}
.pub-copy .lede{margin:0 0 14px}
/* net: one headline bar; the pieces taken off it are peeled from the right */
.adj-strip,.adj-under .old{display:none}
.adj-h{font-size:12px;letter-spacing:.06em;text-transform:uppercase;font-weight:500;color:var(--ink-3);margin:8px 0 10px}
.adj-bar{display:grid;grid-template-columns:40fr 16fr 15fr 15fr 14fr;height:76px;border:1px solid var(--rule);background:#fff}
.adj-bar .seg{position:relative;display:flex;flex-direction:column;justify-content:center;padding:0 16px;color:var(--ink);transition:background-color .5s ease}
.adj-bar .seg b{font-family:var(--sans);font-weight:500;font-size:15px;line-height:1.2}
.adj-bar .seg span{font-size:12px;color:#FBF3DD;margin-top:3px}
.adj-bar .seg.keep{background:var(--gold);color:#fff;border-right:1px solid #fff}
.adj-bar .seg.cut{background:var(--gold);border-left:1px solid #fff}
.adj-bar .seg.cut i{position:absolute;top:8px;right:10px;width:20px;height:20px;border-radius:50%;border:1.5px solid var(--gold-ink);color:var(--gold-ink);font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:12px;font-style:normal;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .4s ease}
.adj-bar .seg.cut b{opacity:0;transition:opacity .4s ease}
.visible .adj-bar .seg.cut{background:repeating-linear-gradient(135deg,#EFE7D3 0 6px,#E4D9BF 6px 12px)}
.visible .adj-bar .seg.cut i,.visible .adj-bar .seg.cut b{opacity:1}
.visible .adj-bar .seg.cut[data-n="4"]{transition-delay:.5s}.visible .adj-bar .seg.cut[data-n="4"] i,.visible .adj-bar .seg.cut[data-n="4"] b{transition-delay:.6s}
.visible .adj-bar .seg.cut[data-n="3"]{transition-delay:1s}.visible .adj-bar .seg.cut[data-n="3"] i,.visible .adj-bar .seg.cut[data-n="3"] b{transition-delay:1.1s}
.visible .adj-bar .seg.cut[data-n="2"]{transition-delay:1.5s}.visible .adj-bar .seg.cut[data-n="2"] i,.visible .adj-bar .seg.cut[data-n="2"] b{transition-delay:1.6s}
.visible .adj-bar .seg.cut[data-n="1"]{transition-delay:2s}.visible .adj-bar .seg.cut[data-n="1"] i,.visible .adj-bar .seg.cut[data-n="1"] b{transition-delay:2.1s}
.adj-under{display:grid;grid-template-columns:40fr 60fr;margin-top:8px;font-size:12px;letter-spacing:.06em;text-transform:uppercase;font-weight:500}
.adj-under .k{color:var(--gold-ink)}
.adj-under .c{color:var(--ink-3);padding-left:16px;border-left:1px solid var(--rule)}
.adj-grid{margin-top:26px;padding-top:22px;border-top:1px solid var(--rule)}
.adj-item i{background:var(--ink)}
.adj-close{font-family:var(--sans);font-weight:400;font-size:19px;color:var(--ink);margin-top:22px;padding-top:16px;border-top:1px solid var(--rule)}
@media(min-width:901px) and (max-height:820px){.adj-bar{height:64px}.adj-grid{margin-top:18px;padding-top:16px}.adj-close{margin-top:16px;padding-top:12px;font-size:18px}}
@media(max-width:900px){.adj-bar{grid-template-columns:1fr;height:auto}.adj-bar .seg{padding:12px 14px}.adj-under{grid-template-columns:1fr;gap:6px}.adj-under .c{padding-left:0;border-left:0}}

.adj-bar .seg span{position:static;top:auto;left:auto;right:auto;text-align:left;white-space:normal;letter-spacing:0;text-transform:none;font-weight:400}
.adj-bar .seg.keep span{color:#FBF3DD}
body.flow #public-markets{padding:40px 0 48px}
.tcard .tc-img{aspect-ratio:16/5.4}
.tcard .tc-body .tc-blurb{min-height:calc(1.5em * 4)}
body.flow #public-markets .theme-detail > .tcard{margin:12px 0 12px}

.adj-bar{align-items:stretch;transform:none;transform-origin:center}
.adj-bar .seg{height:auto;transform:none}

.adj-bar .seg b{align-self:flex-start;padding-right:30px}

/* wheel a size up */
.wheel-grid{grid-template-columns:44fr 56fr;gap:48px}
.wheel .sp-label{font-size:17px}
.wheel .wc-title{font-size:25px}
.wheel .wc-sub{font-size:13.5px}
body.flow #public-markets{padding:36px 0 40px}

.two-col.wheel-grid{grid-template-columns:44fr 56fr;gap:48px}
.wheel .wc-title{font-size:22px}
.wheel .wc-sub{font-size:13px}

body.flow #public-markets .tcard .tc-img{aspect-ratio:16/5}
body.flow #public-markets .theme-detail > .tcard{margin:10px 0 10px}

/* ==========================================================================
   Private markets, restructured (6 Sept): the choice exhibit and hands-on
   chapter on Investment Philosophy; discipline, channels and the deeper
   exhibits on Valorem Deals.
   ========================================================================== */
/* the choice: two funds, four plain rows each */
.choice{display:grid;grid-template-columns:1fr 56px 1fr;gap:0 12px;align-items:stretch;margin-top:6px}
.ch-card{background:#fff;border:1px solid var(--rule);padding:22px 26px 20px;display:flex;flex-direction:column}
.ch-card.take{border-color:var(--gold);border-width:1.5px}
.ch-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}
.ch-tag{font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;color:var(--ink-3)}
.ch-verdict{font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:500}
.ch-card.pass .ch-verdict{color:#9E2B25}
.ch-card.take .ch-verdict{color:var(--gold-ink)}
.ch-num{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:76px;line-height:1;color:var(--ink);font-variant-numeric:lining-nums;letter-spacing:-.02em}
.ch-num span{font-size:40px;margin-left:2px}
.ch-card.take .ch-num{color:var(--gold-ink)}
.ch-sub{font-size:14px;color:var(--ink-2);margin:6px 0 14px;min-height:2.6em}
.ch-rows{border-top:1px solid var(--rule)}
.ch-row{display:grid;grid-template-columns:110px 1fr;gap:0 14px;padding:10px 0;border-bottom:1px solid var(--hair);align-items:baseline}
.ch-row span{font-size:12px;letter-spacing:.06em;text-transform:uppercase;font-weight:500;color:var(--ink-3)}
.ch-row b{font-family:var(--sans);font-weight:400;font-size:15px;color:var(--ink);line-height:1.4}
.ch-card.take .ch-row b{font-weight:500}
.ch-mid{display:flex;align-items:center;justify-content:center}
.ch-mid span{font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:22px;color:var(--ink-3)}
.ch-close{font-size:17px;line-height:1.55;color:var(--ink);margin:18px 0 0;max-width:92ch}
.choice .ch-card{opacity:0;transition:opacity .4s ease}
.visible .ch-card,.choice.visible .ch-card{opacity:1}
.visible .ch-card.take,.choice.visible .ch-card.take{transition-delay:.3s}
/* discipline trio, channels duo */
.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:0 40px;margin-top:8px;border-top:1px solid var(--ink)}
.trio-item{padding-top:20px}
.trio-item i{width:26px;height:26px;border-radius:50%;background:var(--ink);color:var(--paper);font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:14px;font-style:normal;display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.trio-item h4{font-family:var(--sans);font-weight:500;font-size:19px;margin:0 0 8px;color:var(--ink)}
.trio-item p{font-size:15px;line-height:1.55;color:var(--ink-2);margin:0}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:0 56px;margin-top:8px}
.duo-item{border-top:1px solid var(--ink);padding-top:18px}
.duo-n{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:34px;color:var(--gold-ink);font-variant-numeric:lining-nums;line-height:1;margin-bottom:10px}
.duo-item h4{font-family:var(--sans);font-weight:500;font-size:20px;margin:0 0 10px;color:var(--ink)}
.duo-item p{font-size:15px;line-height:1.6;color:var(--ink-2);margin:0}
@media(min-width:901px) and (max-height:820px){
  .ch-card{padding:16px 20px 14px}.ch-num{font-size:64px}.ch-num span{font-size:34px}.ch-row{padding:7px 0}.ch-row b{font-size:14px}.ch-close{font-size:16px;margin-top:12px}
  .trio-item p,.duo-item p{font-size:14px}
}
@media(max-width:900px){.choice{grid-template-columns:1fr}.ch-mid{height:36px}.trio,.duo{grid-template-columns:1fr;gap:18px}}

/* ==========================================================================
   Judgment as definitions; management as a clear who-does-what table
   ========================================================================== */
.defs{display:grid;grid-template-columns:repeat(4,1fr);gap:0 32px;margin-top:6px;border-top:1px solid var(--ink)}
.def{padding-top:18px}
.def-n{width:26px;height:26px;border-radius:50%;background:var(--ink);color:var(--paper);font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:14px;display:flex;align-items:center;justify-content:center;margin-bottom:12px}
.def h4{font-family:var(--sans);font-weight:500;font-size:19px;margin:0 0 8px;color:var(--ink)}
.def-what{font-size:14px;line-height:1.55;color:var(--ink-2);margin:0 0 14px;min-height:6.2em}
.def-ex{background:#fff;border:1px solid var(--rule);border-left:3px solid var(--gold);padding:10px 14px 12px}
.def-ex span{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;color:var(--gold-ink);margin-bottom:4px}
.def-ex p{font-size:14px;line-height:1.5;color:var(--ink);margin:0}
.def-ex b{font-weight:500;color:var(--gold-ink)}
.defs-close{font-size:17px;line-height:1.55;color:var(--ink);margin:20px 0 0;padding-top:14px;border-top:1px solid var(--rule)}
.own2{margin-top:6px;border-top:1px solid var(--ink)}
.own2-head,.own2-row{display:grid;grid-template-columns:190px 1fr 300px;gap:0 28px;align-items:center}
.own2-head{padding:10px 0 8px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:500;color:var(--ink-2);border-bottom:1px solid var(--rule)}
.own2-head .y{color:var(--gold-ink)}
.own2-row{padding:11px 0;border-bottom:1px solid var(--hair)}
.own2-step{display:flex;align-items:center;gap:12px;font-family:var(--sans);font-weight:500;font-size:16px;color:var(--ink)}
.own2-step i{width:24px;height:24px;border-radius:50%;background:var(--paper);border:1.5px solid var(--gold);color:var(--gold-ink);font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:13px;font-style:normal;display:flex;align-items:center;justify-content:center;flex:none}
.own2-we{font-size:14px;line-height:1.5;color:var(--ink-2)}
.own2-you{font-size:15px;color:var(--ink);font-weight:500;padding-left:16px;border-left:2px solid var(--gold)}
.own2-you.none{color:var(--ink-3);font-weight:400;border-left-color:var(--rule)}
.own2-row{opacity:0;transition:opacity .3s ease}
.visible .own2-row{opacity:1}
.visible .own2-row:nth-child(3){transition-delay:.08s}.visible .own2-row:nth-child(4){transition-delay:.16s}.visible .own2-row:nth-child(5){transition-delay:.24s}.visible .own2-row:nth-child(6){transition-delay:.32s}.visible .own2-row:nth-child(7){transition-delay:.4s}.visible .own2-row:nth-child(8){transition-delay:.48s}
@media(min-width:901px) and (max-height:820px){
  .def h4{font-size:18px}.def-what{font-size:13.5px;min-height:5.8em;margin-bottom:10px}.def-ex p{font-size:13.5px}.defs-close{font-size:16px;margin-top:14px;padding-top:10px}
  .own2-row{padding:8px 0}.own2-we{font-size:13.5px}.own2-you{font-size:14px}
}
@media(max-width:900px){.defs{grid-template-columns:1fr 1fr;gap:18px 20px}.def-what{min-height:0}.own2-head{display:none}.own2-row{grid-template-columns:1fr;gap:6px}.own2-you{border-left:0;padding-left:0}}

.def{display:flex;flex-direction:column}
.def-what{min-height:0;flex:0 0 auto}
.def-ex{margin-top:auto}
@media(min-width:901px) and (max-height:820px){.def-what{min-height:0}}

/* ==========================================================================
   One fund, taken apart: interactive waterfall
   ========================================================================== */
.peel-grid{display:grid;grid-template-columns:5fr 7fr;gap:56px;align-items:center}
.peel-copy h2{font-size:clamp(24px,2.2vw,30px);line-height:1.16;max-width:none;margin-bottom:14px}
.peel-copy .lede{font-size:16px;line-height:1.6;max-width:none;margin:0 0 18px}
.peel-explain{background:#fff;border:1px solid var(--rule);border-left:3px solid var(--gold);padding:16px 20px 16px;min-height:196px}
.pe-head{display:flex;align-items:center;gap:12px;margin-bottom:8px}
.pe-n{width:24px;height:24px;border-radius:50%;background:var(--ink);color:var(--paper);font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:13px;display:flex;align-items:center;justify-content:center;flex:none}
.pe-title{font-family:var(--sans);font-weight:500;font-size:17px;margin:0;color:var(--ink)}
.pe-text{font-size:14px;line-height:1.55;color:var(--ink-2);margin:0}
.peel-keys{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.peel-keys button{font-family:var(--sans);font-size:13px;font-weight:500;letter-spacing:.02em;color:var(--ink-2);background:transparent;border:1px solid var(--rule);border-radius:2px;padding:8px 14px;cursor:pointer;transition:color var(--t) var(--ease),border-color var(--t) var(--ease),background-color var(--t) var(--ease)}
.peel-keys button:hover{border-color:var(--gold);color:var(--ink)}
.peel-keys button.active{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.peel-chart .lc-title{margin-bottom:8px}
.peel-svg .pe{cursor:pointer;outline:none}
.peel-svg .pe-hit{fill:transparent}
.peel-svg .pe .wf-bar,.peel-svg .pe .wf-val,.peel-svg .pe .wf-cat{transition:opacity .35s ease,fill-opacity var(--t) var(--ease)}
.peel-svg .pe.dim .wf-bar{fill-opacity:.45}
.peel-svg .pe.dim .wf-val,.peel-svg .pe.dim .wf-cat{fill-opacity:.5}
.peel-svg .pe.active .wf-bar{stroke:var(--gold-ink);stroke-width:2}
.peel-svg .pe.active .wf-cat{fill:var(--ink);font-weight:500}
.peel-svg .wf-val.start{fill:var(--ink)}
.peel-svg .wf-val.in{fill:var(--ink)}
.peel-line{font-size:15px;line-height:1.55;color:var(--ink);margin:12px 0 0;max-width:80ch}
@media(min-width:901px) and (max-height:820px){.peel-copy .lede{font-size:15px}.peel-explain{min-height:180px;padding:12px 16px}.pe-text{font-size:13.5px}.peel-line{font-size:14px}}
@media(max-width:900px){.peel-grid{grid-template-columns:1fr;gap:28px}}

/* explanation as typography, not a box; step keys as underlined text */
.peel-explain{background:transparent;border:0;border-top:1px solid var(--ink);border-bottom:1px solid var(--rule);padding:14px 0 16px;min-height:186px}
.pe-head{gap:10px;margin-bottom:6px;align-items:baseline}
.pe-n{width:auto;height:auto;border-radius:0;background:transparent;color:var(--gold-ink);font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:18px;display:inline;font-variant-numeric:lining-nums}
.pe-n::after{content:"."}
.pe-title{font-size:18px}
.pe-text{font-size:14.5px;line-height:1.6}
.peel-keys{gap:0 22px;margin-top:12px}
.peel-keys button{border:0;border-bottom:1px solid var(--rule);border-radius:0;padding:6px 0;color:var(--ink-2);font-weight:400;font-size:14px;background:transparent}
.peel-keys button:hover{border-bottom-color:var(--gold);color:var(--ink);background:transparent}
.peel-keys button.active{background:transparent;color:var(--ink);border-bottom:2px solid var(--gold-ink);font-weight:500}
.peel-svg .wf-cat{font-size:12px}
.peel-svg .wf-val.cut{font-size:13px}

/* one fund, taken apart: every deduction is red; the endpoint is a label, not a bar */
.peel-svg .wf-bar.cut{fill:#B8443A}
.peel-svg .wf-val.cut,.peel-svg .wf-val.in{fill:#fff;font-weight:500}
.peel-svg .pe.dim .wf-bar.cut{fill-opacity:.4}
.peel-svg .pe.dim .wf-val.cut{fill:#fff;fill-opacity:.85}
.peel-svg .wf-link.end{stroke:var(--ink-3);stroke-dasharray:3 3}
.peel-svg .pe-endval{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:26px;fill:var(--ink);font-variant-numeric:lining-nums}
.peel-svg .pe-endlbl{font-family:var(--sans);font-size:12px;letter-spacing:.06em;text-transform:uppercase;font-weight:500;fill:var(--ink-2)}
.peel-svg .pe.dim .pe-endval,.peel-svg .pe.dim .pe-endlbl{fill-opacity:.55}
.peel-svg .pe.active .pe-endval{fill:#B8443A}

.pe-n::after{content:none}
.peel-keys button span{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;color:var(--gold-ink);font-size:15px;margin-right:2px}

.peel-keys button span,.pe-n{font-variant-numeric:lining-nums}

/* ============================================================
   PRIVATE MARKETS EXHIBITS (two chapters): what is left after
   the fund's own fee and tax, then the bar a private fund has
   to clear. Ink states a fact, gold is what Valorem requires,
   red is money taken away. Nothing is dimmed at rest.
   ============================================================ */
.exh-title{font-family:var(--sans);font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-bottom:12px}
.exh{width:100%}
.exh-svg{display:block;width:100%;height:auto}
.exh-rule{stroke:var(--hair);stroke-width:1;shape-rendering:crispEdges}
.exh-axis{font-family:var(--sans);font-size:12px;fill:var(--ink-3)}
.exh-link{stroke:var(--ink-3);stroke-width:1;stroke-dasharray:2 4;shape-rendering:crispEdges}
.exh-lead{stroke:var(--rule);stroke-width:1;shape-rendering:crispEdges}
.exh-req{stroke:var(--gold);stroke-width:1.5;stroke-dasharray:6 5;shape-rendering:crispEdges}
.exh-reqlbl{font-family:var(--sans);font-size:12.5px;font-weight:500;fill:var(--gold-ink);letter-spacing:.02em}
.exh-hit{fill:transparent}
.exh-b.hit{outline:none}
.exh-bar{opacity:0;transition:opacity .45s ease}
.visible .exh-bar{opacity:1}
.exh-val{font-family:var(--sans);font-size:14px;font-weight:500;opacity:0;transition:opacity .45s ease}
.visible .exh-val{opacity:1}
.exh-val.on-dark{fill:#fff}
.exh-val.on-light{fill:var(--ink)}
.b-ink{fill:var(--ink)}
.b-cut{fill:#B8443A}
.b-req0{fill:var(--gold-lt);fill-opacity:.4}
.b-req1{fill:var(--gold-lt)}
.b-req2{fill:var(--gold)}
.exh-cat{font-family:var(--sans);font-size:12.5px;fill:var(--ink-2)}
.exh-seglbl{font-family:var(--sans);font-size:12.5px;fill:var(--ink-2)}
.exh-gap{fill:none;stroke:var(--ink-3);stroke-width:1;stroke-dasharray:4 4}
.exh-gaplbl{font-family:var(--sans);font-size:13px;font-weight:500;fill:var(--ink-2)}
.exh-b.hit .exh-bar,.exh-b.hit .exh-cat,.exh-b.hit .exh-seglbl{transition:opacity .45s ease,stroke var(--t) var(--ease),fill var(--t) var(--ease)}
.exh-b.on .exh-bar{stroke:var(--ink);stroke-width:2}
.exh-b.on .exh-cat,.exh-b.on .exh-seglbl{fill:var(--ink)}

.terms{margin-top:22px}
.term{border-top:1px solid var(--rule);padding-top:14px;margin-top:14px;transition:border-color var(--t) var(--ease)}
.term:first-child{margin-top:0}
.term h4{font-size:17px;font-weight:500;color:var(--ink-2);margin-bottom:5px;transition:color var(--t) var(--ease)}
.term p{font-size:14.5px;line-height:1.6;color:var(--ink-2);margin:0}
.term.on{border-top-color:var(--ink)}
.term.on h4{color:var(--ink)}
@media(min-width:901px) and (max-height:820px){.terms{margin-top:14px}.term{padding-top:11px;margin-top:11px}}

/* the private pie explains itself: hovering a slice or a legend name puts the
   asset class definition where the legend was, and the legend returns on exit */
.pie-side{display:grid;align-content:center}
.pie-side > *{grid-area:1/1}
.pie-side .pie-legend{transition:opacity var(--t) var(--ease)}
.pie-panel.showing-def .pie-legend{visibility:hidden}
.pie-def{opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--t) var(--ease);align-self:center}
.pie-panel.showing-def .pie-legend{opacity:0}
.pie-panel.showing-def .pie-def{opacity:1;visibility:visible}
.pd-head{display:flex;align-items:center;gap:10px;margin-bottom:6px}
.pd-sw{width:11px;height:11px;border-radius:2px;flex:none;background:var(--gold-lt)}
.pd-name{font-family:var(--sans);font-weight:500;font-size:17px;color:var(--gold-lt);margin:0}
.pd-text{font-size:14px;line-height:1.6;color:var(--ink-2);margin:0;max-width:none}
.pie-legend.has-defs li{cursor:default}
.pie-legend.has-defs li::after{content:"+";position:absolute;right:2px;top:6px;font-size:14px;line-height:1;color:var(--gold);opacity:.7;transition:opacity var(--t) var(--ease)}
.pie-legend.has-defs li.hot::after{opacity:0}
.pie-panel .pie .slice{cursor:default}
.pie-hint{font-size:12.5px;color:var(--ink-3);margin:10px 0 0;transition:opacity var(--t) var(--ease)}
.pie-panel.showing-def .pie-hint{opacity:0}

/* two column definition list (what we look for before we commit) */
.terms.two{display:grid;grid-template-columns:1fr 1fr;gap:0 56px}
.terms.two .term:nth-child(2){margin-top:0}
@media(max-width:900px){.terms.two{grid-template-columns:1fr;gap:0}.terms.two .term:nth-child(2){margin-top:14px}}

/* risk against potential return: one hoverable dot per strategy, on a corridor
   that widens as risk rises. Colour groups the family, position carries the point */
.rm-axis{stroke:var(--rule);stroke-width:1;shape-rendering:crispEdges}
.rm-axlbl{font-family:var(--sans);font-size:12.5px;font-weight:500;fill:var(--ink-2);letter-spacing:.02em}
.rm-end{font-family:var(--sans);font-size:11.5px;fill:var(--ink-3);letter-spacing:.04em}
.rm-hit{fill:transparent}
.rm-pt{cursor:default;outline:none}
.rm-ring{fill:none;stroke-width:1.5;opacity:0;transition:opacity var(--t) var(--ease)}
.rm-pt.on .rm-ring{opacity:1}
.rm-dot{opacity:0;stroke:rgba(23,20,15,.28);stroke-width:1;transition:opacity .4s ease}
.visible .rm-dot{opacity:1}
.rm-lbl{font-family:var(--sans);font-size:12px;fill:var(--ink-2);opacity:0;transition:opacity .4s ease,fill var(--t) var(--ease)}
.visible .rm-lbl{opacity:1}
.rm-pt.on .rm-lbl{fill:var(--ink);font-weight:500}
.rm-legend{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:12px}
.rm-chip{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-2);transition:color var(--t) var(--ease)}
.rm-chip i{width:11px;height:11px;border-radius:50%;flex:none;box-shadow:0 0 0 1px rgba(23,20,15,.28) inset}
.rm-chip.on{color:var(--ink);font-weight:500}
.rm-def{position:relative;padding-top:26px;margin-top:34px;min-height:232px}
.rm-def::before{content:"";position:absolute;top:0;left:0;width:48px;height:2px;background:var(--rm-c,var(--gold));transition:background var(--t) var(--ease)}
.rm-fam{display:block;font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-ink);margin-bottom:6px}
.rm-name{font-family:var(--sans);font-weight:400;font-size:23px;line-height:1.2;color:var(--ink);margin:0 0 10px}
.rm-text{font-size:14.5px;line-height:1.65;color:var(--ink-2);margin:0;max-width:none}
@media(min-width:901px) and (max-height:820px){.rm-def{margin-top:26px;padding-top:22px;min-height:228px}.rm-legend{margin-top:10px}}

/* the riskmap's legend and the lines under it line up with the plot's left edge
   (padL in renderRiskMap; keep the two in step) */
#riskmap .exh-title,#riskmap .pie-hint,#riskmap .f-note{padding-left:52px}

/* what a private investment is competing with: five comparisons, each drawn as
   two bars. green is what the client keeps, red is what is taken away or lost,
   gold is the number in the pitch, pale gold is what was only ever projected */
:root{--green:#4F6A3C;--green-lt:#6E8A57}
.cs-svg{display:block;width:100%;height:auto}
.cs-base{stroke:var(--rule);stroke-width:1;shape-rendering:crispEdges}
.cs-seg.green{fill:var(--green)}
.cs-seg.gold{fill:var(--gold)}
.cs-seg.red{fill:#B8443A}
.cs-seg.ghost{fill:var(--gold-lt);fill-opacity:.22}
.cs-in{font-family:var(--sans);font-size:13px;font-weight:500;fill:#fff}
.cs-inl{font-family:var(--sans);font-size:13px;font-weight:500;fill:var(--ink-2)}
.cs-side{font-family:var(--sans);font-size:12.5px;fill:var(--ink-2)}
.cs-top{font-family:var(--sans);font-size:16px;font-weight:500;fill:var(--ink)}
.cs-top.muted{font-size:14px;font-weight:400;fill:var(--ink-2)}
.cs-cap{font-family:var(--sans);font-size:13px;fill:var(--ink);font-weight:500}
.cs-cap.sub{font-size:12.5px;fill:var(--ink-3);font-weight:400}
.cs-time{rx:2}
.cs-time.free{fill:var(--green);fill-opacity:.35}
.cs-time.locked{fill:#B8443A;fill-opacity:.5}
.cs-brk{fill:none;stroke:var(--gold);stroke-width:1.5}
.cs-brklbl{font-family:var(--sans);font-size:12.5px;fill:var(--ink-2)}
.cs-req{stroke:var(--gold);stroke-width:1.5;stroke-dasharray:6 5;shape-rendering:crispEdges}
.cs-reqlbl{font-family:var(--sans);font-size:12.5px;font-weight:500;fill:var(--gold-ink)}
.cs-reqsub{font-family:var(--sans);font-size:12px;fill:var(--ink-3)}

.cons-tabs{display:flex;flex-wrap:wrap;gap:0 24px;margin-bottom:18px}
.cons-tabs button{font-family:var(--sans);font-size:14px;color:var(--ink-3);background:transparent;border:0;border-bottom:1px solid var(--rule);padding:6px 0;cursor:pointer;transition:color var(--t) var(--ease),border-color var(--t) var(--ease)}
.cons-tabs button:hover{color:var(--ink-2);border-bottom-color:var(--gold)}
.cons-tabs button.on{color:var(--ink);font-weight:500;border-bottom:2px solid var(--gold-ink)}
.cons-say{border-top:1px solid var(--rule);padding-top:16px;margin-top:16px;min-height:112px}
.cons-name{font-family:var(--sans);font-weight:500;font-size:18px;color:var(--ink);margin:0 0 6px}
.cons-text{font-size:14.5px;line-height:1.6;color:var(--ink-2);margin:0;max-width:78ch}
@media(min-width:901px) and (max-height:820px){.cons-say{margin-top:12px;padding-top:12px;min-height:108px}}

/* the life of a private investment: a chronological line, each stage hoverable */
.flow{--flow-p:0%}
.flow-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);position:relative}
.flow-steps::before{content:"";position:absolute;left:0;right:0;top:9px;height:1px;background:var(--rule)}
.flow-steps::after{content:"";position:absolute;left:0;top:9px;height:1px;width:var(--flow-p);background:var(--gold);transition:width var(--t) var(--ease)}
.flow-steps li{position:relative;display:block;padding-right:18px}
.flow-steps button{display:block;width:100%;text-align:left;background:transparent;border:0;padding:0;cursor:pointer;font-family:var(--sans)}
.flow-steps i{display:block;width:11px;height:11px;border-radius:50%;background:var(--paper);box-shadow:0 0 0 1.5px var(--rule) inset;position:relative;z-index:1;margin:4px 0 14px;transition:box-shadow var(--t) var(--ease),background-color var(--t) var(--ease)}
.flow-steps li.done i{box-shadow:0 0 0 1.5px var(--gold) inset}
.flow-steps li.on i{background:var(--gold);box-shadow:0 0 0 1.5px var(--gold) inset,0 0 0 4px rgba(168,121,15,.16)}
.flow-steps span{display:block;font-size:14px;line-height:1.3;color:var(--ink-3);max-width:15ch;transition:color var(--t) var(--ease)}
.flow-steps li:hover span{color:var(--ink-2)}
.flow-steps li.on span{color:var(--ink);font-weight:500}
.flow-say{border-top:1px solid var(--rule);margin-top:34px;padding-top:20px;min-height:118px}
.flow-name{font-family:var(--sans);font-weight:500;font-size:19px;color:var(--ink);margin:0 0 8px}
.flow-text{font-size:15px;line-height:1.65;color:var(--ink-2);margin:0;max-width:92ch}
@media(min-width:901px) and (max-height:820px){.flow-say{margin-top:26px;padding-top:16px;min-height:112px}}
@media(max-width:900px){.flow-steps{grid-template-columns:1fr 1fr;gap:18px 0}.flow-steps::before,.flow-steps::after{display:none}}

/* the life of a private investment: six tall cards, dark until they are turned over */
.fcards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,1fr);gap:12px}
.fcard{perspective:1400px;outline:none}
.fcard-in{position:relative;height:372px;transition:transform .55s cubic-bezier(.4,0,.2,1);transform-style:preserve-3d}
.fcard:hover .fcard-in,.fcard:focus .fcard-in{transform:rotateY(180deg)}
.fcard-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;padding:18px 16px;display:flex;flex-direction:column;overflow:hidden}
.fcard-face.front{background:var(--dark)}
.fcard-face.back{background:#fff;border:1px solid var(--rule);transform:rotateY(180deg)}
.fcard-big{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:56px;line-height:.9;color:var(--gold-lt);font-variant-numeric:lining-nums;letter-spacing:-.02em}
.fcard-face.front h4{font-family:var(--sans);font-weight:400;font-size:18px;line-height:1.25;color:var(--dark-ink);margin:auto 0 0;padding-top:16px;border-top:1px solid var(--dark-rule);min-height:66px;display:flex;align-items:flex-end}
.fcard-x{position:absolute;top:20px;right:16px;font-family:var(--sans);font-size:17px;font-weight:400;line-height:1;color:var(--gold-lt);opacity:.85;transition:opacity var(--t) var(--ease)}
.fcard:hover .fcard-x{opacity:0}
.fcard-n{font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.14em;color:var(--gold-ink)}
.fcard-face.back h5{font-family:var(--sans);font-weight:500;font-size:14px;line-height:1.25;color:var(--ink);margin:10px 0 8px}
.fcard-face.back p{font-size:12.5px;line-height:1.55;color:var(--ink-2);margin:0}
@media(min-width:901px) and (max-height:820px){.fcard-in{height:352px}.fcard-face{padding:16px 14px}}
@media(max-width:900px){.fcards{grid-template-columns:1fr 1fr}.fcard-in{height:300px}}


/* Home: tighter vertical rhythm so a chapter and its exhibit sit on one screen */
body.flow .cta-row{margin-top:22px}
body.flow .f-note{margin-top:8px !important}
body.flow .ds-body{margin-top:14px}
body.flow .d2-group{padding:12px 0 10px}
body.flow .d2-row{padding:3px 0}
body.flow .d2-lbl{margin-bottom:6px}
body.flow .ds-chips,body.flow .lh-chips{margin-bottom:16px}
body.flow .ds-note{margin-bottom:14px}


/* Home on a real laptop browser window (~680px of page area after the browser
   chrome and the taskbar). Geometry only: paddings, gaps and graphic sizes. */
/* ============================================================
   HOME LAYOUT: sections take the height their content needs.
   Nothing here is measured against the viewport, so the page
   behaves the same on a laptop and on a large monitor and no
   chapter is trying to land in one screenful. Exhibit sizes are
   set by what stays legible, never by what happens to fit.
   ============================================================ */
@media(min-width:901px){
  body.flow section:not(.tight):not(.cta){padding:88px 0}
  body.flow .section-head{margin-bottom:36px}
  body.flow #private-markets .section-head{margin-bottom:30px}
  body.flow .cta-row{margin-top:30px}
  body.flow .f-note{margin-top:12px !important}
  body.flow .ds-chips,body.flow .lh-chips{margin-bottom:22px}
  body.flow .ds-note{margin-bottom:18px}
  body.flow .d2-group{padding:16px 0 14px}
  body.flow .d2-lbl{margin-bottom:8px}
  body.flow .d2-row{padding:4px 0}
  body.flow .d2-bar{height:20px}
  body.flow .dsl-cap{margin-top:16px}
  body.flow .feebars .cols{min-height:0}
  body.flow .feebars .bars{height:224px}
  body.flow #public-markets{padding:88px 0}
  body.flow #public-markets .theme-wheel svg{max-height:470px}
  body.flow #public-markets .tcard .tc-img{max-height:none;aspect-ratio:16/5}
  body.flow #public-markets .tc-blurb{min-height:0}
  body.flow #public-markets .theme-detail > .tcard{margin:30px 0 26px}
  body.flow #public-markets .lede{font-size:17px;line-height:1.6}
  body.flow #private-markets .pie-panel{padding:20px 22px}
  body.flow #private-markets .pie{max-height:330px}
  body.flow #private-markets .pies-note{margin-top:12px !important}
}
/* the two tiles either side of the centre pill sit in a row as tall as the
   pill, so centre every tile in its row or they hug the row above */
.lh-grid,.lh-compact .lh-grid{align-items:center}

/* ============================================================
   ALIGNMENT EXHIBIT: the decision is stated, then the account is
   drawn losing the money, then what each advisor is paid. Red is
   what leaves, gold is Valorem, ink is everything factual.
   ============================================================ */
.ds-scenario{font-size:20px;line-height:1.4;color:var(--ink);margin:0 0 22px;max-width:72ch}
.dsx{border-top:1px solid var(--rule)}
.dsx-row{display:grid;grid-template-columns:250px 1fr 240px;gap:0 28px;align-items:center;padding:16px 0;border-bottom:1px solid var(--hair)}
.dsx-lbl{font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;color:var(--ink-2)}
.dsx-row.val .dsx-lbl{color:var(--gold-ink)}
.dsx-bar{position:relative;height:20px}
.dsx-fill{position:absolute;left:0;top:0;height:100%;width:0;background:var(--ink-2);transition:width .85s cubic-bezier(.4,0,.2,1)}
.dsx-row.val .dsx-fill{background:var(--gold)}
.dsx-gone{position:absolute;top:0;height:100%;left:var(--x);width:0;border:1px dashed #9E2B25;box-sizing:border-box;opacity:0;
  background:repeating-linear-gradient(135deg,rgba(158,43,37,.16) 0 4px,transparent 4px 8px);transition:width .85s cubic-bezier(.4,0,.2,1),opacity .4s ease .5s}
.ds-body.play .dsx-fill{width:var(--w)}
.ds-body.play .dsx-gone{width:var(--w);opacity:1}
/* the money is drawn arriving in full, then taken away: the bar fills to the
   whole balance, holds, and retreats while the red piece is revealed */
@keyframes dsxTakeAway{0%{width:0}30%{width:100%}48%{width:100%}100%{width:var(--w)}}
.ds-body.play .dsx-row.trad .dsx-fill{animation:dsxTakeAway 1.7s cubic-bezier(.4,0,.2,1) forwards}
/* the account is simply shown already reduced; only the fee is watched falling */
.dsx-row.acct .dsx-fill,.dsx-row.acct .dsx-gone{transition:none}
.ds-body.play .dsx-row.trad .dsx-gone{transition:opacity .45s ease .88s}
.dsx-delta{transition:opacity .4s ease 1.5s}
.dsx-val{display:flex;flex-direction:column;align-items:flex-start;gap:3px;white-space:nowrap}
.dsx-num{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:26px;color:var(--ink);font-variant-numeric:lining-nums;line-height:1}
.dsx-num.gold{color:var(--gold-ink)}
.dsx-note{font-size:13px;color:var(--ink-3)}
.dsx-delta{font-family:var(--sans);font-size:13px;color:#9E2B25;opacity:0;transition:opacity .4s ease 1.1s}
.ds-body.play .dsx-delta{opacity:1}
.dsx-sep{height:22px}
.dsx-effect{position:relative}
.dsx-effect .dsx-row:first-child{border-top:1px solid var(--rule)}
.dsx-note-line{margin-top:12px !important}
@media(max-width:900px){.dsx-row{grid-template-columns:1fr;gap:8px;padding:14px 0}.ds-scenario{font-size:17px}}

/* fee chart footer: two columns on one rule, the assumptions on the left and
   the portfolio control on the right, with the call to action on its own row */
.feebars .foot-row{grid-template-columns:1fr 1fr;gap:0 56px;align-items:start;margin-top:26px;padding-top:20px}
.foot-lbl{font-family:var(--sans);font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-bottom:12px}
.feebars .foot-row .assumptions{margin:0 !important;padding-top:0 !important;border-top:0 !important;gap:10px 24px;font-size:13px;color:var(--ink-2)}
.feebars .foot-row details.notes{margin-top:14px}
.feebars .foot-row .slider-block{margin:0;padding:0;border:0}
.feebars .foot-row .slider-block .sv{display:block;margin:0 0 12px;font-size:24px}
.feebars .foot-row .slider-block .sv .val-in{text-align:left;font-size:26px}
.feebars .foot-row .slider-block input[type=range]{width:100%;display:block}
.feebars .foot-row .slider-block .edit-hint{margin:12px 0 0}
.feebars .foot-row .slider-block .edit-hint a{color:var(--gold-ink);border-bottom:1px solid var(--rule)}
.feebars-cta{margin-top:26px}
@media(max-width:800px){.feebars .foot-row{grid-template-columns:1fr;gap:24px}}

/* the last ledger column is right aligned, so its heading has to be too */
.ledger-head > div:last-child{text-align:right}

/* chart title sits centred over the plot, not over the whole column */
.linechart .lc-title{padding-left:var(--lc-padl,0);padding-right:var(--lc-padr,0);text-align:center}
/* ledger headings need room so the assets column does not crowd the next one */
.ledger-head{gap:28px}
.ledger-head > div{padding-right:12px;text-wrap:pretty}
.ledger-row{gap:28px}

/* this headline is long: size it so it holds one line at any desktop width */
#disclosures .section-head h2{font-size:clamp(21px,2.22vw,30px)}
/* the chart title was sitting right under the chapter headline */
#cumulative .exhibit-grid{margin-top:24px}

/* Resources is a menu, matching the current site: the calculator and the blog */
.nav-sub-parent{position:relative}
.nav-sub-btn{font-family:var(--sans);font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--ink-2);background:transparent;border:0;padding:0;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:color var(--t) var(--ease)}
.nav-sub-btn::after{content:"";width:5px;height:5px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-1px);transition:transform var(--t) var(--ease)}
.nav-sub-parent:hover .nav-sub-btn,.nav-sub-parent:focus-within .nav-sub-btn{color:var(--ink)}
.nav-sub-parent:hover .nav-sub-btn::after,.nav-sub-parent:focus-within .nav-sub-btn::after{transform:rotate(225deg) translateY(-3px)}
.nav-sub{position:absolute;top:100%;left:-16px;margin:0;padding:10px 0;list-style:none;min-width:232px;background:var(--paper);border:1px solid var(--rule);
  opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity var(--t) var(--ease),transform var(--t) var(--ease),visibility 0s linear var(--t);z-index:120}
.nav-sub-parent:hover .nav-sub,.nav-sub-parent:focus-within .nav-sub{opacity:1;visibility:visible;transform:none;transition:opacity var(--t) var(--ease),transform var(--t) var(--ease)}
.nav-sub li{display:block}
.nav-sub a{display:block;padding:9px 18px;font-size:13px;font-weight:500;color:var(--ink-2);white-space:nowrap}
.nav-sub a:hover{color:var(--ink);background:var(--cream)}
.mobile-menu .mm-label{font-family:var(--serif);font-size:30px;font-weight:400;padding:14px 0 4px;color:var(--ink-3)}
.mobile-menu a.mm-sub{font-size:22px;padding:8px 0 8px 18px}

/* the dot plot's title centres over the plot, matching the line charts */
#riskmap .exh-title{padding-left:var(--rm-padl,0);padding-right:var(--rm-padr,0);text-align:center}
/* the theme wheel reads small on Home, so give it more room */
@media(min-width:901px){body.flow #public-markets .theme-wheel svg{max-height:520px}}
/* on a narrower window the dot plot needs more of the row or its labels collide */
@media(min-width:901px) and (max-width:1400px){#riskmap .peel-grid{grid-template-columns:4fr 8fr;gap:40px}}

/* how we access opportunities: two panels, the deck's treatment in Valorem gold */
.chan{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;max-width:none;margin-top:14px}
.chan-col{background:var(--paper);border:1px solid var(--rule);padding:26px 38px 38px}
.chan-col + .chan-col{margin-top:0;border-top:1px solid var(--rule)}
.chan-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;border-bottom:1px solid var(--ink);padding-bottom:11px;margin-bottom:24px}
.chan-n{font-family:var(--sans);font-size:11.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-ink)}
.chan-num{font-family:var(--serif);font-size:24px;font-weight:500;line-height:1;color:var(--ink-3)}
.chan-col h4{font-family:var(--sans);font-weight:400;font-size:25px;line-height:1.2;color:var(--ink);margin:0 0 20px}
.chan-col > p{font-size:16px;line-height:1.75;color:var(--ink-2);margin:0}
#channels .section-head{margin-bottom:40px}
@media(max-width:900px){.chan{grid-template-columns:1fr;gap:24px}.chan-col + .chan-col{margin-top:0}}
/* about: the bios carry real photographs */

/* redemptions, three rows as the client deck draws it: the fund before, the
   redemption, and what the investors who stay are left holding */
.rdx-svg{display:block;width:100%;height:auto;overflow:visible}
.rr-box{stroke:var(--rule);stroke-width:1}
.rr-hit{stroke:var(--gold);stroke-width:2}
.rr-empty{fill:none;stroke:var(--rule);stroke-width:1;stroke-dasharray:5 5}
.rr-num{font-family:'Cormorant Garamond',Georgia,serif;font-size:20px;font-weight:600;font-variant-numeric:lining-nums}
.rr-num.on{fill:#FFFDF7}
.rr-num.off{fill:var(--ink-2)}
.rr-axis{font-family:var(--sans);font-size:13px;font-weight:500;fill:var(--ink-3)}
.rr-axisline{stroke:var(--rule);stroke-width:1}
.rr-arrow{fill:none;stroke:var(--rule);stroke-width:1}
.rr-lbl{font-family:var(--sans);font-size:19px;font-weight:400;fill:var(--ink)}
.rr-sub{font-family:var(--sans);font-size:13.5px;fill:var(--ink-2)}
.rr-brace{fill:none;stroke:var(--gold);stroke-width:1.4}
.rr-brace-lbl{font-family:var(--sans);font-size:14px;font-weight:500;fill:var(--gold-ink)}
.rr-close{font-family:var(--sans);font-size:15px;font-weight:500;fill:var(--ink)}
/* the channels call to action needs air under the columns */
#channels .cta-row{margin-top:44px}
/* about: bigger portraits and readable body copy */
.bio{grid-template-columns:220px 1fr;gap:44px;padding:48px 0}
.bio-photo{width:220px;height:220px;object-fit:cover;background:var(--cream);border:1px solid var(--rule)}
.bio p{line-height:1.65}
.bio p + p{margin-top:14px}
.about-copy{max-width:74ch}
.about-copy p{font-size:16.5px;line-height:1.7;color:var(--ink-2);margin:0 0 16px}

/* ---- decision hub boxes, refined only: softer corners, a hairline of lift,
       more air inside, a quieter plus and a gentler hover ---- */
.lh-compact .lh-grid{gap:22px}
.lh-compact .lh-tile{
  padding:20px 22px;border-radius:3px;
  border-color:var(--hair);
  box-shadow:0 1px 2px rgba(23,20,16,.035);
  transition:border-color var(--t) var(--ease),box-shadow var(--t) var(--ease);
}
.lh-compact .lh-tile:hover,.lh-compact .lh-tile.open{
  border-color:rgba(168,121,15,.55);
  box-shadow:0 8px 22px rgba(23,20,16,.07);
}
.lh-compact .lh-tile .lh-area{font-size:11.5px;letter-spacing:.11em}
.lh-compact .lh-tile .lh-area::after{font-size:14px;font-weight:300;opacity:.5}
.lh-compact .lh-tile:hover .lh-area::after,.lh-compact .lh-tile.open .lh-area::after{opacity:1}
.lh-compact .lh-tile .lh-txt{line-height:1.55}
@media(max-width:760px){.lh-compact .lh-grid{gap:14px}.lh-compact .lh-tile{padding:16px 18px}}

/* ---- the two column exhibit must actually collapse on phones. The
       minmax() rule above was unconditional and beat the 900px query,
       so the copy column was being squeezed to a few words wide. ---- */
@media(max-width:900px){
  .exhibit-grid,
  #cumulative .exhibit-grid,
  #compounding .exhibit-grid{grid-template-columns:minmax(0,1fr);gap:32px;align-items:start}
}

/* ---- assumption controls stack properly on phones. The three column rule
       further up is unconditional and was squeezing them on the fee page. ---- */
@media(max-width:700px){
  .assume-row{grid-template-columns:1fr;gap:16px 0}
  .assume-reset{grid-column:1;justify-self:start;margin:10px 0 0}
}

/* ============================================================
   Flat Fee VS AUM Calculator, laid out like the one it replaces:
   an Inputs panel on the left, results and chart on the right.
   ============================================================ */
.fc-title{font-family:var(--serif);font-size:clamp(30px,3.6vw,46px);line-height:1.1;letter-spacing:-.01em;margin:0 0 22px}
.fc-intro{max-width:74ch;margin-bottom:30px}
.fc-intro p{font-size:17px;line-height:1.62;color:var(--ink-2);margin:0 0 12px}
.fc-intro p:last-child{margin:0}

.fc-grid{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:26px;align-items:start}
@media(max-width:880px){.fc-grid{grid-template-columns:minmax(0,1fr);gap:20px}}

.fc-card{border:1px solid var(--rule);background:var(--paper);border-radius:3px;padding:24px}
.fc-h{font-family:var(--sans);font-size:15px;font-weight:600;margin:0 0 18px}

.fc-lbl{display:block;font-size:13px;color:var(--ink-2);margin:0 0 7px}
.fc-in{
  width:100%;font-family:var(--sans);font-size:16px;color:var(--ink);
  background:#fff;border:1px solid var(--rule);border-radius:2px;padding:11px 12px;
  margin:0 0 16px;font-variant-numeric:lining-nums tabular-nums;
}
.fc-in:focus{outline:none;border-color:var(--gold)}

.fc-fixed{border:1px solid var(--hair);border-radius:2px;padding:12px 14px;margin:4px 0 18px}
.fc-fixed-row{display:flex;align-items:center;justify-content:space-between;font-size:14px;color:var(--ink-2);padding:5px 0}
.fc-fixed-row b{color:var(--ink);font-weight:600;font-variant-numeric:lining-nums tabular-nums;display:inline-flex;align-items:baseline;gap:5px}
.fc-fixed-row label{cursor:pointer}
.fc-yrs{
  width:3.2ch;font-family:var(--sans);font-size:14px;font-weight:600;color:var(--ink);
  background:transparent;border:0;border-bottom:1px solid var(--gold);border-radius:0;
  padding:0 0 1px;text-align:right;font-variant-numeric:lining-nums tabular-nums;
}
.fc-yrs:focus{outline:none;background:var(--cream)}

.fc-btn{
  width:100%;font-family:var(--sans);font-size:14px;font-weight:600;
  background:var(--gold);color:#FBF9F4;border:1px solid var(--gold);border-radius:2px;
  padding:13px 20px;cursor:pointer;transition:background .15s,border-color .15s;
}
.fc-btn:hover{background:#8E6608;border-color:#8E6608}
.fc-note{font-size:12px;line-height:1.55;color:var(--ink-3);margin:16px 0 0}

.fc-summary{border:1px solid var(--hair);border-radius:2px;padding:18px 20px;margin-bottom:20px}
.fc-sum-lbl{display:block;font-size:13px;color:var(--ink-2);margin-bottom:8px}
.fc-sum-big{display:block;font-family:var(--serif);font-size:clamp(30px,3.6vw,42px);line-height:1;letter-spacing:-.015em;color:var(--ink);font-variant-numeric:lining-nums tabular-nums}
.fc-sum-lines{margin-top:14px;font-size:14px;color:var(--ink-2);line-height:1.8}
.fc-sum-lines b{color:var(--ink);font-weight:600;font-variant-numeric:lining-nums tabular-nums}

.fc-legend{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;margin-bottom:10px}
.fc-legend span{display:inline-flex;align-items:center;gap:7px;font-size:13px;color:var(--ink-2)}
.fc-legend i{width:10px;height:10px;flex:none;border-radius:1px}
.fc-legend .sw-aum{background:var(--ink)}
.fc-legend .sw-flat{background:var(--gold)}

.fc-chart-wrap{width:100%}
#fc-chart{width:100%;height:auto;display:block}
.fc-g{stroke:var(--hair);stroke-width:1}
.fc-ax{font-family:var(--sans);font-size:11px;fill:var(--ink-3)}
.fc-line{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.fc-line.fc-aum{stroke:var(--ink)}
.fc-line.fc-flat{stroke:var(--gold)}
.fc-xtitle{text-align:center;font-size:12px;color:var(--ink-3);margin-top:6px}

.fc-disc{font-size:12px;line-height:1.6;color:var(--ink-3);max-width:92ch;margin:28px 0 0}

/* ============================================================
   PHONE AND SMALL TABLET LAYOUT
   Everything below sits inside max-width queries, so desktop
   (901px and wider) is untouched. It lives at the end of the file
   because several desktop rules above were written without a size
   limit and would otherwise override the earlier phone rules.
   ============================================================ */
@media(min-width:901px){.m-only{display:none !important}}
@media(max-width:900px){
  .d-only{display:none !important}

  /* side-by-side sections stack into one column */
  .two-col,.two-col.even,.two-col.chart-right,.two-col.wheel-grid,.wheel-grid,.pub-grid{grid-template-columns:minmax(0,1fr);gap:32px}

  /* theme wheel: heading, copy, wheel, then the card it controls, then the link */
  .wheel-grid{display:flex;flex-direction:column;gap:0}
  .wheel-grid > .reveal:first-child{display:contents}
  .wheel-grid h2{order:1}
  .wheel-grid .lede{order:2;margin-top:16px}
  .wheel-grid .core-tilts{order:3;margin:22px -8px 0;padding-top:0}
  .wheel-grid .theme-detail{order:4}
  .wheel-grid .cta-row{order:5}
  .core-tilts svg,.theme-wheel svg,body.flow #public-markets .theme-wheel svg{max-height:none;width:100%}

  /* pie charts: one panel per row, pie above its legend */
  .pies{grid-template-columns:minmax(0,1fr);gap:16px}
  .pie-body,.pie-panel.light .pie-body,.pie-panel.dark .pie-body{grid-template-columns:minmax(0,1fr);gap:14px}
  .pie{max-width:320px;width:100%;margin:0 auto}
  .pie-panel.light .pie{max-width:240px}

  /* fee comparison rows: decision on its own line, figures below */
  .ledger-head{display:none}
  .ledger-row,.ledger-row:nth-child(n){grid-template-columns:minmax(0,1fr) auto;gap:6px 16px;padding:18px 0}
  .ledger-row .decision{grid-column:1 / -1;font-size:19px}
  .ledger-row .assets{grid-column:1 / -1;font-size:15px}
  .ledger-row .assets::before{content:"Assets leaving the account: ";font-size:13px;color:var(--ink-3);font-family:var(--sans)}
  .ledger-row .barwrap{min-width:0}
  .ledger-row .barval{font-size:20px;min-width:0}
  .ledger-row .atval{font-size:22px;text-align:right;white-space:nowrap;align-self:center}
  .ledger-row .atval::before{content:"At Valorem ";font-size:12px;color:var(--ink-3);font-family:var(--sans);margin-right:6px}

  /* five step planning process: a numbered list down the page */
  .proc{grid-auto-flow:row;grid-template-columns:minmax(0,1fr);gap:22px;padding-top:4px}
  .proc li::after{display:none}
  .proc li{padding:0 0 0 44px}
  .proc .pn{position:absolute;top:0;left:0;margin:0}
  .proc h3{min-height:0;margin-bottom:6px}

  /* private investment lifecycle: flip cards become a plain list (no hover on phones) */
  .fcards{grid-template-columns:minmax(0,1fr);gap:0;border-top:1px solid var(--rule)}
  .fcard{perspective:none}
  .fcard-in,.fcard:hover .fcard-in,.fcard:focus .fcard-in{height:auto;transform:none;transition:none}
  .fcard-face{position:static;backface-visibility:visible;-webkit-backface-visibility:visible}
  .fcard-face.front{display:none}
  .fcard-face.back{transform:none;background:transparent;border:0;border-bottom:1px solid var(--rule);padding:18px 0}
  .fcard-face.back h5{font-size:17px;margin:6px 0 6px}
  .fcard-face.back p{font-size:14.5px}

  /* founders: photo above the bio */
  .bio{grid-template-columns:minmax(0,1fr);gap:22px;padding:36px 0}
  .bio-photo{width:220px;height:220px}

  /* deals: capacity chart labels */
  .cap-h{flex-direction:column;gap:2px}
  .cap-scale{height:auto}
  .cap-seg{padding:8px 8px}
  .cap-seg b{font-size:15px}
  .cap-seg span{font-size:10.5px;line-height:1.25}
  .cap-lbl{flex-direction:column;gap:2px}
  .cap-val{font-size:13px}

  /* hover hints read as tap hints */
  .pie-hint{font-size:12px}
}
@media(max-width:640px){
  .feebars .bars,.two-col .feebars .bars{height:150px}
  .bio-photo{width:180px;height:180px}
}
@media(max-width:900px){
  /* pie definitions: the legend stays, the tapped definition opens beneath it */
  .pie-side > *{grid-area:auto}
  .pie-def{display:none;margin-top:14px;padding-top:14px;border-top:1px solid var(--rule)}
  .pie-panel.showing-def .pie-def{display:block}
  .pie-panel.showing-def .pie-legend{visibility:visible;opacity:1}
  .pie-panel.showing-def .pie-hint{opacity:1}
  .pie-legend li{cursor:pointer}

  /* theme chips sit between the copy and the theme card */
  .wheel-chips{margin:0 8px 0;display:flex;flex-wrap:wrap;gap:8px}
  .wheel-chips .ds-chip{white-space:nowrap}
}
@media(max-width:900px){
  .wheel-grid h2,body.flow #public-markets .wheel-grid h2{margin:0}
  .wheel-grid .lede,body.flow #public-markets .wheel-grid .lede{margin:16px 0 0}
  .wheel-grid .core-tilts,#tilts .core-tilts,#public-markets .core-tilts{margin:24px -8px 0;padding:0;min-height:0}
  .wheel-grid .theme-detail > .tcard,body.flow #public-markets .theme-detail > .tcard{margin:24px 0 8px}
}
@media(max-width:900px){.two-col.wheel-grid,.two-col.even.wheel-grid{gap:0}}
@media(max-width:900px){
  /* risk map: heading, copy, chart, then the description the chart controls */
  #riskmap .peel-grid{display:flex;flex-direction:column}
  #riskmap .peel-copy{display:contents}
  #riskmap .peel-copy h2{order:1}
  #riskmap .peel-copy .lede{order:2}
  #riskmap .peel-chart{order:3;margin-top:28px}
  #riskmap .rm-def{order:4;min-height:0;margin-top:22px}
  #riskmap .peel-copy .cta-row{order:5}
  #riskmap .exh-title,#riskmap .pie-hint,#riskmap .f-note{padding-left:0}
  #riskmap .rm-legend{padding-left:0 !important}
}
@media(max-width:599px){
  .rm-svg .rm-lbl{opacity:0 !important}
  .rm-svg .rm-pt.on .rm-lbl{opacity:1 !important;font-weight:600}
  .rm-tap{font-size:13px;color:var(--ink-3);margin:10px 0 0}
}
@media(max-width:900px){
  #riskmap .peel-grid{gap:0}
  #riskmap .peel-copy .lede{margin-top:16px}
  #riskmap .peel-copy .cta-row{margin-left:0;padding-left:0}
}
@media(max-width:900px){
  .wf-narrow{margin-bottom:28px}
  .wf-narrow .wf-title{font-size:16px;font-weight:500}
  .wf-narrow .wf-val{font-size:12px}
  .wf-narrow .wf-val.net.ok,.wf-narrow .wf-val.net.bad{font-size:13px;font-weight:600}
  .wf-narrow .wf-cat{font-size:11px}
  .wf-narrow .wf-axis{font-size:11px}
}
@media(max-width:900px){
  .rdx-m .rr-lbl{font-size:16px}
  .rdx-m .rr-sub{font-size:12px}
  .rdx-m .rr-axis{font-size:11px}
  .rdx-m .rr-num{font-size:18px}
  .rdx-m .rr-brace-lbl{font-size:12.5px}
  .rdx-m .rr-close{font-size:13.5px}
}
@media(max-width:900px){html,body{overflow-x:clip}}
@media(max-width:900px){.assume-row{grid-template-columns:minmax(0,1fr);gap:14px 0}}
@media(max-width:640px){.cap-seg.c1 b{font-size:13px}.cap-seg.c1 span{display:none}}
@media(max-width:900px){.mobile-menu{overflow-y:auto;-webkit-overflow-scrolling:touch}}
@media(max-width:900px) and (max-height:700px){.mobile-menu{padding-top:96px}.mobile-menu a{font-size:24px;padding:10px 0}}
@media(max-width:640px){.q22-legend{flex-direction:column;gap:6px}.q22-legend .sw{flex:none}}
@media(max-width:599px){.rm-svg .rm-lbl{transition:opacity .15s ease !important;transition-delay:0s !important}}
@media(max-width:640px){
  /* fee bars: all four years in one row so no row sits half empty */
  .feebars .cols,.two-col .feebars .cols{grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;row-gap:0}
  .feebars .bars,.two-col .feebars .bars{height:170px;gap:4px}
  .feebars .bar,.two-col .feebars .bar{width:clamp(16px,5.5vw,24px)}
  .feebars .bar .amt,.feebars .e0 .bar.trad .amt,.feebars .e1 .bar.trad .amt,.feebars .e2 .bar.trad .amt,.feebars .e3 .bar.trad .amt,.two-col .feebars .bar .amt{font-size:11.5px;top:-18px;left:-30px;right:-30px}
  .feebars .bar.val .amt{font-size:10.5px}
  .feebars .yrlbl{font-size:11px;margin-top:8px}
  .feebars .pflbl,.two-col .feebars .pflbl{font-size:10.5px;white-space:normal;line-height:1.3}
  .feebars .legend{gap:6px 18px;margin-bottom:30px}
  .feebars .assumptions{gap:6px 18px}
}
@media(max-width:640px){.feebars .bar.val .amt{display:none}}
@media(max-width:900px){
  #private-markets .section-head .lede{margin-top:16px !important}
  #riskmap .peel-copy h2{margin-bottom:0}
}
@media(max-width:640px){
  .section-head,body.flow .section-head{margin-bottom:28px}
  section:not(.cta),body.flow section:not(.tight):not(.cta){padding-top:56px;padding-bottom:56px}
  /* fee comparison rows: a slim heading row names the two figures */
  .ledger-head{display:flex;justify-content:space-between;gap:16px;padding:0 0 8px;font-size:10.5px;line-height:1.35;border-bottom:1px solid var(--ink)}
  .ledger-head > div:nth-child(1),.ledger-head > div:nth-child(2){display:none}
  .ledger-head > div:nth-child(3){max-width:62%;padding-right:0}
  .ledger-head > div:last-child{padding-right:0}
  .ledger-row .atval::before{content:none}
}
@media(max-width:900px){section#process,section#public{padding-top:calc(var(--nav-h) + 44px) !important}}
@media(max-width:900px){#tilts .wheel-grid,#public-markets .wheel-grid,.wheel-grid{align-items:stretch}}
@media(max-width:599px){.cs-svg .cs-in{font-size:12px}}
.hero .hero-center .lede{font-size:22px;line-height:1.55}
@media(max-width:640px){.hero .hero-center .lede{font-size:20px}}
.hero .hero-center .lede{font-size:22px;line-height:1.55}
.hero .hero-actions .btn{font-size:16px;padding:18px 38px}
@media(max-width:640px){.hero .hero-center .lede{font-size:20px}.hero .hero-actions .btn{font-size:15px;padding:16px 34px}}
/* calculator page: everything fits on one desktop screen */
@media(min-width:901px){
  section#calc{padding-top:calc(var(--nav-h) + 26px) !important;padding-bottom:64px}
  .fc-title{font-size:34px;margin:0 0 8px}
  .fc-intro{max-width:none;margin-bottom:16px}
  .fc-intro p{font-size:15.5px;line-height:1.5;margin:0 0 4px}
  .fc-grid{gap:22px}
  .fc-card{padding:18px 20px}
  .fc-h{margin:0 0 12px}
  .fc-lbl{margin:0 0 5px}
  .fc-in{padding:8px 12px;margin:0 0 12px}
  .fc-fixed{padding:6px 12px;margin:2px 0 14px}
  .fc-fixed-row{padding:3px 0}
  .fc-btn{padding:11px 20px}
  .fc-note{margin-top:10px;font-size:11.5px}
  .fc-summary{display:grid;grid-template-columns:auto 1fr;gap:4px 32px;align-items:end;padding:14px 18px;margin-bottom:12px}
  .fc-sum-lbl{grid-column:1 / -1;margin-bottom:2px}
  .fc-sum-big{font-size:36px}
  .fc-sum-lines{margin-top:0;line-height:1.6;justify-self:end;text-align:right}
  .fc-legend{margin-bottom:4px}
  .fc-xtitle{margin-top:2px}
  .fc-disc{margin-top:22px}
}
@media(min-width:901px){.fc-pair{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}}

/* ============================================================
   BLOG: index list and article pages
   ============================================================ */
.blog-index{padding-bottom:80px}
.blog-index .pg-title{margin-bottom:36px}
.bl-list{border-top:1px solid var(--ink)}
.bl-row{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:40px;align-items:center;padding:32px 0;border-bottom:1px solid var(--rule)}
.bl-img{display:block;aspect-ratio:3/2;overflow:hidden;background:var(--cream)}
.bl-img img{width:100%;height:100%;object-fit:cover;transition:opacity .2s}
.bl-img:hover img{opacity:.9}
.bl-title{font-family:var(--sans);font-weight:400;font-size:26px;line-height:1.2;letter-spacing:-.01em;margin:6px 0 12px}
.bl-title a:hover{color:var(--gold-ink)}
.bl-excerpt{font-size:16px;line-height:1.6;color:var(--ink-2);margin:0 0 14px;max-width:62ch}
.post-meta{font-size:13px;color:var(--ink-3);letter-spacing:.02em;margin:0}
.post-meta span{margin:0 6px;color:var(--rule)}

.post{padding-bottom:80px}
.post-wrap{max-width:760px}
.post-back{display:inline-block;font-size:13px;font-weight:600;color:var(--gold-ink);margin-bottom:26px}
.post-back:hover{color:var(--ink)}
.post-title{font-family:var(--sans);font-weight:400;font-size:clamp(30px,3.4vw,44px);line-height:1.12;letter-spacing:-.015em;max-width:none;margin:0 0 14px}
.post-img{width:100%;aspect-ratio:16/9;object-fit:cover;margin:28px 0 36px;background:var(--cream)}
.post-body{font-size:18px;line-height:1.7;color:var(--ink-2)}
.post-body p{margin:0 0 20px}
.post-body h2{font-family:var(--sans);font-weight:500;font-size:26px;line-height:1.25;color:var(--ink);margin:40px 0 14px}
.post-body h3{font-family:var(--sans);font-weight:500;font-size:20px;line-height:1.3;color:var(--ink);margin:30px 0 10px}
.post-body strong{color:var(--ink);font-weight:600}
.post-body ul{margin:0 0 20px;padding-left:22px}
.post-body li{margin:0 0 8px}
.post-body li::marker{color:var(--gold)}
.post-body a{color:var(--gold-ink);border-bottom:1px solid rgba(168,121,15,.35)}
.post-body a:hover{border-color:var(--gold)}
.post-next{margin-top:48px;padding-top:22px;border-top:1px solid var(--rule)}
.post-next-lbl{display:block;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin-bottom:8px}
.post-next a{font-size:22px;line-height:1.3;color:var(--ink)}
.post-next a:hover{color:var(--gold-ink)}
@media(max-width:760px){
  .bl-row{grid-template-columns:minmax(0,1fr);gap:18px;padding:28px 0}
  .bl-title{font-size:22px}
  .post-body{font-size:17px}
  .post-body h2{font-size:23px;margin-top:34px}
  .post-img{margin:22px 0 28px}
  .post-next a{font-size:19px}
}
