/* Maple Bridge Ventures :: maple-bridge-vc design system v2 (2026-08-26)
   Reference register: panache.vc (Archivo, monochrome, proof-forward) + northside.ventures (dark bookends, editorial calm) */
@font-face{font-family:"Archivo";src:url("fonts/archivo-v25-latin-regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Archivo";src:url("fonts/archivo-v25-latin-500.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Archivo";src:url("fonts/archivo-v25-latin-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Archivo";src:url("fonts/archivo-v25-latin-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Archivo";src:url("fonts/archivo-v25-latin-italic.woff2") format("woff2");font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:"Archivo";src:url("fonts/archivo-v25-latin-700italic.woff2") format("woff2");font-weight:700;font-style:italic;font-display:swap}

:root{
  --paper:#FBFBF9; --ink:#1B1733; --indigo:#3417A5; --maple:#CA2030; --navy:#201644;
  --night:#0B0A1E; --slate:#54506A; --bone:#F1EFE9; --hairline:#E3E1D9; --fog:#8F8AA8; --indigo-deep:#2A1287; --nightline:#232040; --arch-tint:#B6A6FF; --paper-dim:#F5F4EF; --fog-bright:#B9B4CC;
  --sans:"Archivo","Segoe UI",sans-serif;
  --mx:clamp(20px,5vw,72px);
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1rem;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--indigo);text-decoration:none}
h1,h2,h3{font-family:var(--sans);font-weight:700;line-height:1.04;letter-spacing:-.025em;text-wrap:balance}
h3{font-weight:600;letter-spacing:-.01em}

/* ---------- header ---------- */
.hd{position:absolute;inset:0 0 auto 0;z-index:40;display:flex;align-items:center;justify-content:space-between;padding:20px var(--mx);max-height:80px}
.hd.solid{position:static;background:var(--paper);border-bottom:1px solid var(--hairline)}
.hd .lk{display:flex;align-items:center;gap:12px;color:inherit}
/* v21: the official horizontal lockup (Brand Assets folder, Oct 2026), navy on light, white on dark */
.hd .lk img.logo{height:40px;width:auto}
@media(max-width:560px){.hd .lk img.logo{height:32px}}
.hd nav{display:flex;align-items:center;gap:clamp(14px,2.2vw,34px)}
.hd nav a{font:500 .85rem/1 var(--sans);letter-spacing:.01em;color:inherit;padding:8px 0;border-bottom:1px solid transparent}
.hd nav a:hover{border-bottom-color:currentColor}
.hd nav a[aria-current]{border-bottom-color:var(--maple)}
.hd .pitch-nav{font:600 .82rem/1 var(--sans);letter-spacing:.02em;color:#fff;background:var(--indigo);padding:13px 24px;border-bottom:none;transition:transform .18s ease,background .15s ease}
.hd .pitch-nav:hover{background:var(--indigo-deep)}
.hd .pitch-nav .ar{display:inline-block;transition:transform .18s ease;margin-left:6px}
.hd .pitch-nav:hover .ar{transform:translateX(4px)}
.hd.ondark{color:#fff}
.mtog{display:none}
@media(max-width:880px){
  .hd nav{display:none;position:fixed;inset:0;background:var(--night);color:#fff;flex-direction:column;justify-content:center;gap:28px;z-index:50}
  .hd nav a{font-size:1.1rem}
  body.navopen .hd nav{display:flex}
  .mtog{display:block;background:none;border:1px solid currentColor;color:inherit;font:600 .72rem/1 var(--sans);letter-spacing:.12em;padding:10px 14px;text-transform:uppercase;cursor:pointer;position:relative;z-index:60}
  .hd.solid .mtog{color:var(--ink)}
  body.navopen .mtog{color:#fff;position:fixed;top:20px;right:20px}
}

/* ---------- hero (home): centered cinematic, Panache/Northside register ---------- */
.hero{position:relative;min-height:100dvh;display:flex;align-items:center;justify-content:center;color:#fff;background:var(--night)}
.hero video,.hero .fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero .fallback{background:url("img/bridge-dusk.jpg") center/cover no-repeat}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(11,10,30,.62) 0%,rgba(11,10,30,.42) 45%,rgba(11,10,30,.78) 100%)}
.hero{align-items:flex-end;justify-content:flex-start}
.hero .in{position:relative;z-index:2;padding:130px var(--mx) clamp(56px,9vh,110px);max-width:1240px;text-align:left;width:100%}
.hero h1{font-size:clamp(2.9rem,7.2vw,6.4rem);color:#fff;font-weight:700}
.hero h1 .dot{color:var(--maple)}
.hero h1 em{font-style:italic;font-weight:700}
.hero .hl{display:block;overflow:hidden;padding-bottom:.04em}
.tw{color:var(--maple);display:inline-block;min-width:13.2ch;text-align:left;white-space:nowrap}
.tw .caret{display:inline-block;width:.06em;height:.92em;background:var(--maple);vertical-align:-.08em;margin-left:.04em}
body.js .tw .caret{animation:blink 1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
@media(prefers-reduced-motion:reduce){.tw .caret{display:none}}
.hero .hl>span{display:block}
body.js .hero .hl>span{transform:translateY(112%);animation:hrise .95s cubic-bezier(.16,1,.3,1) forwards}
body.js .hero .hl:nth-child(2)>span{animation-delay:.08s}
body.js .hero .hl:nth-child(3)>span{animation-delay:.16s}
@keyframes hrise{to{transform:none}}
@media(prefers-reduced-motion:reduce){body.js .hero .hl>span{animation:none;transform:none}}
.heroarc{display:block;width:min(520px,52%);height:56px;margin:26px 0 4px}
.heroarc path{stroke:var(--arch-tint);stroke-width:1.6;fill:none;opacity:.85}
.hero p{margin:18px 0 34px;max-width:52ch;font-size:clamp(1rem,1.35vw,1.18rem);color:var(--bone);font-weight:400}
.cta-hero{display:inline-flex;align-items:center;gap:14px;border:1px solid rgba(251,251,249,.75);color:#fff;font:600 .85rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;padding:18px 34px;position:relative;transition:background .18s ease,color .18s ease}
.cta-hero:hover{background:var(--paper);color:var(--ink)}
.cta-hero .ar{transition:transform .2s ease}
.cta-hero:hover .ar{transform:translateX(6px)}

/* subpage video masthead: homepage layout, shorter stage */
.hero.subhero{min-height:clamp(440px,68vh,720px)}
.subhero .in{padding:120px var(--mx) clamp(44px,7vh,76px);max-width:none}
.subhero h1{font-size:clamp(2.4rem,5.2vw,4.4rem);max-width:22ch}
.subhero .kick{font:600 .72rem/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--fog-bright);display:block;margin-bottom:20px}
.subhero .kick svg{width:20px;height:12px;margin-right:10px;vertical-align:-1px;color:var(--maple)}
.subhero p{margin:16px 0 0;max-width:56ch;color:var(--bone);font-size:1.05rem}

/* ---------- v21 page banner: static navy band under a solid header (Inovia register, Eric Oct 9) ---------- */
.pbanner{background:var(--navy);color:#fff;padding:clamp(64px,10vh,104px) var(--mx) clamp(52px,8vh,84px);position:relative;overflow:hidden}
.pbanner .in{position:relative;z-index:1;max-width:1100px}
.pbanner .kick{font:600 .72rem/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--fog-bright);display:block;margin-bottom:22px}
.pbanner .kick svg{width:20px;height:12px;margin-right:10px;vertical-align:-1px;color:var(--maple)}
.pbanner h1{font-size:clamp(2.4rem,5.2vw,4.4rem);color:#fff;max-width:20ch}
.pbanner p{margin-top:22px;max-width:60ch;color:rgba(255,255,255,.78);font-size:clamp(1rem,1.3vw,1.12rem);line-height:1.65}
.pbanner::after{content:"";position:absolute;right:-6vw;bottom:-2px;width:min(620px,60vw);height:clamp(90px,14vh,150px);border:2px solid var(--maple);border-bottom:none;border-radius:50% 50% 0 0/100% 100% 0 0;opacity:.55;pointer-events:none}
body.js .pbanner .in>*{opacity:0;transform:translateY(24px);animation:brise 1.1s cubic-bezier(.16,1,.3,1) forwards}
body.js .pbanner .in>*:nth-child(2){animation-delay:.08s}
body.js .pbanner .in>*:nth-child(3){animation-delay:.16s}
@keyframes brise{to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){body.js .pbanner .in>*{animation:none;opacity:1;transform:none}}
@media(max-width:700px){.pbanner::after{display:none}}

/* section eyebrow (Eric's labels: OUR PEOPLE, COMMUNITY, INSIGHTS, OUR INVESTMENT THESIS ...) */
.eyebrow{display:block;font:600 .72rem/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--maple);margin-bottom:22px}
.eyebrow::after{content:"";display:block;width:44px;height:1px;background:var(--maple);margin-top:14px}
.textlink{display:inline-flex;align-items:center;gap:12px;font:600 .8rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ink);border-bottom:1px solid var(--maple);padding-bottom:8px}
.textlink .ar{transition:transform .2s ease}
.textlink:hover .ar{transform:translateX(5px)}

/* home: Our People (Eric's concept image: copy left, portrait grid right) */
.people{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,5vw,88px);align-items:center}
.people h2{font-size:clamp(2.1rem,3.9vw,3.4rem);line-height:1.06}
.people h2 span{display:block}
.people .lead{margin:22px 0 34px}
.pgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(8px,1vw,14px)}
.pgrid figure{margin:0;overflow:hidden;border-radius:6px;background:#fff;aspect-ratio:4/5}
.pgrid img{width:100%;height:100%;object-fit:cover;object-position:50% 16%;filter:grayscale(1) contrast(1.03);transition:transform .5s ease}
.pgrid figure:hover img{transform:scale(1.04)}
@media(max-width:900px){.people{grid-template-columns:1fr}}

/* home: community mosaic */
.cmosaic{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);grid-template-rows:1fr 1fr;gap:clamp(8px,1vw,14px);margin:clamp(30px,5vh,52px) 0 clamp(26px,4vh,40px);height:clamp(380px,56vh,600px)}
.cmosaic figure{margin:0;overflow:hidden;border-radius:6px}
.cmosaic figure:first-child{grid-row:1/3}
.cmosaic img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.cmosaic figure:hover img{transform:scale(1.03)}
@media(max-width:700px){.cmosaic{grid-template-columns:1fr 1fr;grid-template-rows:auto auto;height:auto}.cmosaic figure:first-child{grid-row:auto;grid-column:1/3;aspect-ratio:3/2}.cmosaic figure{aspect-ratio:1}}

/* editorial cards (Inovia insights register; Eric Oct 9) */
.icards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:clamp(28px,5vh,48px)}
.icards.four{grid-template-columns:repeat(4,1fr)}
.icard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--hairline);border-radius:8px;overflow:hidden;color:var(--ink);transition:transform .25s ease,box-shadow .25s ease}
.icard:hover{transform:translateY(-2px);box-shadow:0 8px 32px rgba(27,23,51,.10)}
.icard .im{aspect-ratio:16/9;overflow:hidden;background:var(--navy)}
.icard .im img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.icard:hover .im img{transform:scale(1.04)}
.icard .im.type{display:flex;flex-direction:column;justify-content:flex-end;padding:20px 22px;color:#fff;position:relative}
.icard .im.type b{font-weight:700;font-size:clamp(1.15rem,1.7vw,1.5rem);letter-spacing:-.015em;line-height:1.1;position:relative;z-index:1}
.icard .im.type::before{content:"";position:absolute;right:-30px;top:18px;width:150px;height:76px;border:2px solid var(--maple);border-bottom:none;border-radius:50% 50% 0 0/100% 100% 0 0;opacity:.6}
.icard .tx{padding:18px 20px 22px;display:flex;flex-direction:column;flex:1}
.icard .cat{font:600 .66rem/1.5 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--maple)}
.icard .cat span{color:var(--fog)}
.icard h3{font-size:1.12rem;line-height:1.3;letter-spacing:-.01em;margin-top:10px}
.icard .dk{color:var(--slate);font-size:.88rem;line-height:1.55;margin-top:10px}
.icard .meta{margin-top:auto;padding-top:16px;font-size:.8rem;color:var(--slate)}
.icard .meta i{font-style:normal;color:var(--hairline);margin:0 8px}
@media(max-width:1100px){.icards.four{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.icards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.icards,.icards.four{grid-template-columns:1fr}}
.icard[hidden]{display:none}
.ifeat{display:grid;grid-template-columns:minmax(0,11fr) minmax(0,10fr);background:#fff;border:1px solid var(--hairline);border-radius:8px;overflow:hidden;color:var(--ink)}
.ifeat .im{min-height:340px;overflow:hidden}
.ifeat .im img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.ifeat:hover .im img{transform:scale(1.03)}
.ifeat .tx{padding:clamp(26px,3.4vw,52px);display:flex;flex-direction:column;justify-content:center}
.ifeat h2{font-size:clamp(1.6rem,2.6vw,2.3rem);line-height:1.15;margin-top:14px}
.ifeat .dk{color:var(--slate);margin-top:16px;max-width:52ch}
.ifeat .meta{margin-top:20px;font-size:.84rem;color:var(--slate)}
.ifeat .meta i{font-style:normal;color:var(--hairline);margin:0 8px}
.ifeat .go{margin-top:24px;font:600 .74rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ink)}
@media(max-width:820px){.ifeat{grid-template-columns:1fr}.ifeat .im{min-height:0;aspect-ratio:16/9}}
.ihead{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:18px;margin-top:clamp(56px,9vh,96px)}
.ifilters{display:none;gap:8px;flex-wrap:wrap}
body.js .ifilters{display:flex}
.ifilters button{font:600 .7rem/1 var(--sans);letter-spacing:.15em;text-transform:uppercase;color:var(--slate);background:transparent;border:1px solid var(--hairline);border-radius:999px;padding:11px 18px;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.ifilters button:hover{border-color:var(--slate);color:var(--ink)}
.ifilters button[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:#fff}

/* approach: headline stats on night, as the homepage stat film presents them (maple on night 3.49:1, AA large) */
.bigstats{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:clamp(8px,2vh,20px)}
.bigstats>div{padding:clamp(18px,2.4vw,36px) clamp(16px,2.4vw,40px);border-left:1px solid rgba(255,255,255,.14)}
.bigstats>div:first-child{border-left:none;padding-left:0}
.bigstats .n{font-weight:700;font-size:clamp(3.2rem,7vw,6.2rem);line-height:1;letter-spacing:-.04em;color:var(--maple);font-variant-numeric:tabular-nums}
.bigstats .l{margin-top:16px;color:rgba(255,255,255,.84);font-size:clamp(1rem,1.4vw,1.2rem);max-width:24ch;line-height:1.45}
.nightband{background:var(--night);color:#fff}
.nightband h2{color:#fff}
.nightband .eyebrow{color:var(--fog-bright)}
.nightband .eyebrow::after{background:var(--maple)}
@media(max-width:760px){.bigstats{grid-template-columns:1fr}.bigstats>div{border-left:none;border-top:1px solid rgba(255,255,255,.14);padding-left:0}.bigstats>div:first-child{border-top:none}}
.thesis{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(28px,5vw,80px);align-items:start}
.thesis .lead{margin-top:0;font-size:1.06rem}
.thesis .lead+.lead{margin-top:18px}
@media(max-width:820px){.thesis{grid-template-columns:1fr}}
.beyond{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(26px,3vw,48px) clamp(24px,3.4vw,56px);margin-top:clamp(32px,5vh,56px)}
.beyond>div{border-top:1px solid var(--ink);padding-top:20px}
.beyond .pn{font:700 1.05rem/1 var(--sans);color:var(--maple);display:block;margin-bottom:12px}
.beyond h3{font-size:clamp(1.2rem,1.7vw,1.45rem)}
.beyond p{color:var(--slate);font-size:.95rem;margin-top:10px}
@media(max-width:900px){.beyond{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.beyond{grid-template-columns:1fr}}

/* community page: lead photograph + galleries */
.cphoto{margin:0;height:clamp(320px,74vh,820px);overflow:hidden;background:var(--navy)}
.cphoto img{width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.prog{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(24px,4vw,72px);padding:clamp(44px,7vh,80px) 0;border-top:1px solid var(--hairline)}
.prog:first-of-type{border-top:none}
.prog h3{font-size:clamp(1.6rem,2.6vw,2.3rem);letter-spacing:-.02em}
.prog .tag{font-weight:600;font-size:1.05rem;color:var(--ink);margin-top:14px;line-height:1.45}
.prog p{color:var(--slate);margin-top:14px;max-width:44ch}
.gal{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:clamp(130px,15vw,230px);gap:clamp(8px,1vw,12px)}
.gal figure{margin:0;overflow:hidden;border-radius:6px}
.gal figure:first-child{grid-column:1/3;grid-row:1/3}
.gal img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.gal figure:hover img{transform:scale(1.03)}
@media(max-width:900px){.prog{grid-template-columns:1fr}}
@media(max-width:560px){.gal{grid-template-columns:1fr 1fr;grid-auto-rows:34vw}.gal figure:first-child{grid-column:1/3;grid-row:auto}}

/* ---------- subpage masthead ---------- */
.mast{padding:clamp(64px,11vh,130px) var(--mx) clamp(38px,6vh,68px);border-bottom:1px solid var(--hairline);position:relative}
.mast .kick{font:600 .72rem/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--slate);display:block;margin-bottom:20px}
.mast .kick svg{width:20px;height:12px;margin-right:10px;vertical-align:-1px;color:var(--maple)}
.mast h1{font-size:clamp(2.4rem,5.2vw,4.4rem);max-width:20ch}
.mast p{margin-top:22px;max-width:56ch;color:var(--slate);font-size:1.08rem}

/* at-a-glance strip (Inovia register) */
.glance{display:flex;flex-wrap:wrap;gap:10px 0;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);padding:18px 0;margin-top:clamp(24px,4vh,40px)}
.glance span{font:600 .82rem/1 var(--sans);letter-spacing:.06em;color:var(--ink)}
.glance span+span::before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--hairline);margin:0 16px;vertical-align:2px}
.ft .glancerow{grid-column:1/-1;font:500 .86rem/1.6 var(--sans);color:var(--bone);opacity:.85;letter-spacing:.04em;margin-top:8px}

/* ---------- shared section scaffolding ---------- */
section{position:relative}
#strat-teaser{overflow:hidden}
.sec-pad{padding:clamp(76px,14vh,176px) var(--mx)}
.rule-top{border-top:1px solid var(--hairline)}
h2.disp{font-size:clamp(2rem,3.9vw,3.3rem);max-width:22ch}
.lead{color:var(--slate);max-width:58ch;margin-top:18px}
.nw{white-space:nowrap}
.bd{display:none}
@media(min-width:700px){.bd{display:inline}}

/* masthead plate: ambient video/photo panel (deck-sourced brand assets) */
.mast.hasplate{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(24px,4vw,64px);align-items:stretch;padding-bottom:0;overflow:hidden}
.mast.hasplate>div:first-child{padding-bottom:clamp(38px,6vh,68px)}
.mast .plate{position:relative;min-height:340px;overflow:hidden;margin-right:calc(-1 * var(--mx));margin-top:calc(-1 * clamp(64px,11vh,130px))}
.mast .plate video,.mast .plate img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
@media(max-width:820px){.mast.hasplate{grid-template-columns:1fr}.mast .plate{min-height:180px;margin:0 calc(-1 * var(--mx)) 0}}

/* the collective: partner logo wall (deck slide "Our Collective") */
.collective{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid var(--hairline);border-left:1px solid var(--hairline);margin-top:clamp(28px,5vh,52px)}
.collective div{border-right:1px solid var(--hairline);border-bottom:1px solid var(--hairline);padding:clamp(10px,1.2vw,16px);min-height:116px;display:flex;align-items:center;justify-content:center}
.collective img{max-height:92px;width:auto;max-width:100%;opacity:1;filter:brightness(.58);transition:filter .18s ease}
.collective div:hover img{filter:brightness(.35)}
@media(max-width:1000px){.collective{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.collective{grid-template-columns:repeat(2,1fr)}}
.collective-strip{border-top:1px solid var(--hairline);padding-top:clamp(22px,3.5vh,36px);margin-top:clamp(26px,4vh,44px);overflow:hidden}
.striplabel{display:block;font:600 .68rem/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--fog);margin-bottom:22px}
.mq{display:flex;width:max-content;align-items:center}
body.js .mq{animation:mq 36s linear infinite}
.collective-strip:hover .mq{animation-play-state:paused}
@keyframes mq{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){body.js .mq{animation:none}}
.mq .set{display:flex;align-items:center;gap:clamp(34px,4.5vw,72px);padding-right:clamp(34px,4.5vw,72px)}
.mq img{height:58px;width:auto;opacity:1;filter:brightness(.58)}
.mq img.sep{height:16px;filter:none}

/* institutional anchors */
.anchors{display:flex;flex-wrap:wrap;align-items:center;gap:clamp(24px,4vw,64px);border-top:1px solid var(--hairline);padding-top:clamp(22px,3.5vh,36px);margin-top:clamp(26px,4vh,44px)}
.anchors img{height:52px;width:auto;opacity:1;filter:brightness(.5)}
.anchors p{font-size:.9rem;color:var(--slate);max-width:34ch}

/* paired editorial row (Northside ethos-row move) */
.pairrow{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:clamp(28px,5vw,80px);align-items:center}
.pairrow figure{margin:0;overflow:hidden}
.pairrow img{width:100%;aspect-ratio:4/5;object-fit:cover;max-height:520px;filter:grayscale(1) contrast(1.04)}
@media(max-width:820px){.pairrow{grid-template-columns:1fr}}

/* metrics band: Panache value-prop register */
.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:0;text-align:left}
.metrics>div{padding-left:clamp(18px,2.4vw,40px)}
.metrics>div{padding:clamp(20px,3vw,42px) 12px;position:relative}
.metrics>div+div{border-left:1px solid var(--hairline)}
.metrics .n{font-weight:700;font-size:clamp(1.7rem,3.1vw,2.7rem);letter-spacing:-.025em}
.metrics .l{font-weight:600;font-size:clamp(1.1rem,1.8vw,1.55rem);letter-spacing:-.01em;color:var(--slate);margin-top:10px;font-variant-numeric:tabular-nums}
@media(max-width:700px){.metrics{grid-template-columns:1fr}.metrics>div+div{border-left:none;border-top:1px solid var(--hairline)}}

/* strategy teaser: off-grid editorial */
.strat{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,3fr);gap:clamp(28px,5vw,80px);position:relative;z-index:1}
.ghost{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-weight:700;font-size:clamp(130px,19vw,290px);letter-spacing:-.05em;color:var(--indigo);opacity:.05;line-height:1;pointer-events:none;user-select:none;z-index:0;font-variant-numeric:tabular-nums;white-space:nowrap}
.strat aside{border-left:1px solid var(--hairline);padding-left:clamp(18px,2.4vw,36px);align-self:end}
.strat aside .s{padding:18px 0}
.strat aside .s+.s{border-top:1px solid var(--hairline)}
.strat aside .n{font-weight:700;font-size:clamp(1.9rem,2.9vw,2.8rem);letter-spacing:-.03em}
.strat aside .d{font-size:.85rem;color:var(--slate);max-width:22ch}
@media(max-width:820px){.strat{grid-template-columns:1fr}.strat aside{border-left:none;display:grid;grid-template-columns:1fr 1fr;gap:20px;padding-left:0}.strat aside .s+.s{border-top:none}}

/* sectors: editorial triptych (left-aligned, cable dividers) */
.sectors{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--hairline)}
.sector{padding:clamp(34px,4.5vw,60px) clamp(22px,2.8vw,48px);border-left:1px solid var(--hairline)}
.sector:first-child{border-left:none}
.sector .idx{font:600 .78rem/1 var(--sans);letter-spacing:.12em;color:var(--slate)}
.sector .idx::after{content:"";display:block;width:22px;height:1px;background:var(--hairline);margin-top:10px}
.sector h3{font-size:clamp(1.4rem,2.1vw,1.9rem);margin-top:16px}
.sector p{color:var(--slate);font-size:.95rem;max-width:32ch;margin-top:12px}
@media(max-width:820px){.sectors{grid-template-columns:1fr}.sector{border-left:none;border-top:1px solid var(--hairline);padding-top:22px;padding-bottom:22px}.sector:first-child{border-top:none}}
@media(min-width:1281px){.sector:first-child{padding-left:var(--mx)}}

/* portfolio editorial rows + logo chips */
.pf{border-top:1px solid var(--hairline)}
.pf .row{transition:background .18s ease;display:grid;grid-template-columns:auto minmax(0,5fr) minmax(0,2fr) minmax(0,3fr);gap:clamp(18px,3vw,48px);align-items:center;padding:clamp(28px,4vh,48px) 0;border-bottom:1px solid var(--hairline)}
.pf .num{font:600 .8rem/1 var(--sans);color:var(--slate);letter-spacing:.1em}
.pf.solo .row{grid-template-columns:minmax(0,5fr) minmax(0,2fr) minmax(0,3fr)}
.pf .co{display:flex;align-items:center;gap:18px}
.pf .co img{height:34px;width:auto;filter:grayscale(1);opacity:.85}
.pf h3{font-size:clamp(2rem,4.4vw,3.8rem);font-weight:700;letter-spacing:-.028em}
@media(hover:hover){.pf:hover .row:not(:hover){opacity:.35}.pf .row{transition:opacity .25s ease,background .18s ease}.pf .row:hover .num{color:var(--maple)}}
.pf .meta{font:600 .72rem/1.9 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--slate);border-left:1px solid var(--hairline);padding-left:18px}
.pf .meta span{display:block;color:var(--fog)}
.pf .d{color:var(--ink);font-size:clamp(1rem,1.25vw,1.12rem);line-height:1.55;font-weight:400}
.pf .visit{display:inline-flex;gap:8px;align-items:center;margin-top:12px;font:500 .9rem/1 var(--sans);border-bottom:1px solid var(--indigo);padding-bottom:3px}
.pf .visit .ar{transition:transform .2s}
.pf .visit:hover .ar{transform:translate(3px,-3px)}
@media(hover:hover){.pf .row:hover{background:var(--paper-dim)}}
@media(max-width:820px){.pf .row{grid-template-columns:1fr;gap:10px}.pf .meta{border-left:none;padding-left:0}.pf .co{flex-wrap:wrap;gap:12px}.pf .co img{height:26px;max-width:60vw}.pf h3{overflow-wrap:anywhere}}

/* numbered support columns (Panache system) */
.band{background:var(--bone)}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,4vw,64px);margin-top:clamp(30px,5vh,56px)}
.pillar{border-top:1px solid var(--ink);padding-top:20px}
.pillar .pn{font:700 1.05rem/1 var(--sans);letter-spacing:-.01em;color:var(--ink);display:block;margin-bottom:12px}
.pillar h3{font-size:clamp(1.25rem,1.8vw,1.6rem)}
.pillar p{color:var(--slate);font-size:.95rem;margin-top:10px}
@media(min-width:821px){.pillar:nth-child(2){margin-top:38px}.pillar:nth-child(3){margin-top:76px}}
@media(max-width:820px){.pillars{grid-template-columns:1fr}}

/* insights editorial list */
.ins{border-top:1px solid var(--hairline)}
.ins .it{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,7fr) auto;gap:clamp(16px,3vw,48px);padding:26px 0;border-bottom:1px solid var(--hairline);align-items:baseline;color:var(--ink)}
.ins .dt{font:600 .72rem/1.6 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--fog)}
.ins .dt em{display:block;font-style:normal;color:var(--slate)}
.ins h3{font-size:clamp(1.1rem,1.9vw,1.6rem);font-weight:600;transition:color .15s;letter-spacing:-.01em}
.ins .it:hover h3{color:var(--indigo)}
.ins .d{grid-column:2;color:var(--slate);font-size:.92rem;max-width:60ch}
.ins .ar{color:var(--indigo)}
@media(max-width:700px){.ins .it{grid-template-columns:1fr}.ins .d{grid-column:1}}

/* final CTA :: the arch completes */
.finale{background:var(--night);color:#fff;text-align:left;overflow:hidden}
.finale .in{padding:clamp(80px,14vh,150px) var(--mx) calc(clamp(120px,18vh,210px) + 48px);position:relative;z-index:2}
.finale .mark{width:72px;height:auto;margin-bottom:24px}
.finale h2{font-size:clamp(2rem,4.6vw,3.9rem);color:#fff;max-width:22ch;margin:0;letter-spacing:-.025em}
.finale p{color:var(--bone);opacity:.85;margin:20px 0 42px;max-width:48ch}
.finale .arch{position:absolute;left:50%;bottom:-2px;transform:translateX(-50%);width:104vw;height:clamp(120px,18vh,210px);z-index:1}
.finale .arch path{stroke:var(--maple);stroke-width:3;fill:none;opacity:.95}
.cta-final{display:inline-flex;align-items:center;gap:14px;background:var(--paper);color:var(--ink);font:600 .85rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;padding:20px 38px;position:relative;overflow:hidden;transition:background .15s ease}
.cta-final:hover{background:#fff}
.cta-final .ar{transition:transform .2s}
.cta-final:hover .ar{transform:translateX(6px)}

/* footer */
footer{background:var(--night);color:var(--bone);padding:clamp(48px,7vh,80px) var(--mx) 34px}
.ft{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,2fr) minmax(0,2fr);gap:clamp(28px,5vw,80px)}
.ft .m{max-width:36ch;font-size:1.15rem;line-height:1.5;font-weight:500;letter-spacing:-.01em}
.ft .m img.flogo{height:46px;width:auto}
.ft h4{font:600 .72rem/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--fog-bright);margin-bottom:16px}
.ft ul{list-style:none}
.ft li{margin:9px 0}
.ft a{color:var(--bone);font-size:.92rem;border-bottom:1px solid transparent}
.ft a:hover{border-bottom-color:var(--maple)}
.legal{display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;margin-top:clamp(36px,6vh,60px);padding-top:22px;border-top:1px solid var(--nightline);font-size:.84rem;color:var(--bone)}
.legal{opacity:.9}
.legal a{color:var(--bone);text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.ft{grid-template-columns:1fr}}

/* team: one uniform card format for everyone, so the only hierarchy is the title */
.tgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(28px,4vh,52px) clamp(22px,2.6vw,44px);margin-top:clamp(30px,5vh,56px)}
.tcard .pph img{filter:grayscale(1);aspect-ratio:4/5;object-fit:cover;object-position:50% 18%;width:100%;display:block;background:#fff}
.tcard .nm{font-weight:700;font-size:clamp(1.15rem,1.5vw,1.4rem);letter-spacing:-.02em;line-height:1.1;margin-top:18px}
.tcard .rl{font:600 .66rem/1 var(--sans);letter-spacing:.17em;text-transform:uppercase;color:var(--maple);margin:8px 0 12px}
.tcard p{color:var(--slate);font-size:.95rem;max-width:40ch}
@media(max-width:900px){.tgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.tgrid{gap:24px 14px}.tcard .nm{font-size:1.05rem}.tcard p{font-size:.88rem}}
/* v21: Read More + LinkedIn on the investment team (Eric, Team 5 and 6) */
.tact{display:flex;align-items:center;gap:14px;margin-top:18px}
.tact .more{font:600 .72rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ink);background:transparent;border:1px solid var(--ink);border-radius:999px;padding:12px 18px;cursor:pointer;transition:background .15s,color .15s}
.tact .more span{margin-left:6px;font-size:.95rem;vertical-align:-1px}
.tact .more:hover{background:var(--ink);color:#fff}
.tact .ln,.bio .lnk{display:inline-flex;align-items:center;justify-content:center;color:var(--slate);transition:color .15s}
.tact .ln{width:40px;height:40px;border:1px solid var(--hairline);border-radius:50%}
.tact .ln:hover,.bio .lnk:hover{color:var(--indigo)}
.more:focus-visible,.ln:focus-visible,.bx:focus-visible,.ifilters button:focus-visible,.textlink:focus-visible{outline:2px solid var(--indigo);outline-offset:3px}
/* the profile pop-up (native dialog: Esc closes, focus is held inside) */
dialog.bio{border:none;padding:0;background:transparent;max-width:min(980px,calc(100vw - 32px));width:100%;max-height:calc(100dvh - 32px);margin:auto;overflow:visible}
dialog.bio::backdrop{background:rgba(11,10,30,.72)}
dialog.bio[open]{animation:bioin .35s cubic-bezier(.16,1,.3,1)}
dialog.bio[open]::backdrop{animation:biofade .3s ease}
@keyframes bioin{from{opacity:0;transform:translateY(16px)}}
@keyframes biofade{from{opacity:0}}
@media(prefers-reduced-motion:reduce){dialog.bio[open],dialog.bio[open]::backdrop{animation:none}}
.bio .bin{position:relative;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);background:var(--paper);border-radius:10px;overflow:hidden;max-height:calc(100dvh - 32px)}
.bio .bph{background:#fff}
.bio .bph img{width:100%;height:100%;object-fit:cover;object-position:50% 14%;filter:grayscale(1)}
.bio .btx{padding:clamp(28px,4vw,52px);overflow-y:auto}
.bio h2{font-size:clamp(1.7rem,2.6vw,2.3rem);letter-spacing:-.02em;padding-right:36px}
.bio .rl{font:600 .7rem/1 var(--sans);letter-spacing:.17em;text-transform:uppercase;color:var(--maple);margin:12px 0 22px}
.bio p{color:var(--slate);font-size:.98rem;line-height:1.7;margin-top:14px}
.bio .lnk{gap:8px;margin-top:24px;font:600 .74rem/1 var(--sans);letter-spacing:.14em;text-transform:uppercase}
.bio .bx{position:absolute;top:14px;right:14px;z-index:2;width:42px;height:42px;border-radius:50%;border:1px solid var(--hairline);background:var(--paper);color:var(--ink);font:400 1.6rem/1 var(--sans);cursor:pointer}
.bio .bx:hover{background:var(--ink);color:#fff}
body.dlg-open{overflow:hidden}
@media(max-width:760px){
  dialog.bio{max-width:100vw;max-height:100dvh;height:100dvh;margin:0}
  .bio .bin{grid-template-columns:1fr;border-radius:0;height:100dvh;max-height:none;overflow-y:auto}
  .bio .bph{height:44vh}
  .bio .btx{overflow:visible}
}
.statnote{margin-top:clamp(26px,4vh,40px);padding-top:20px;border-top:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.72);font-size:.95rem;max-width:70ch}

/* team */
/* ---------- team roster: portrait left, bio right (always visible) ---------- */
.roster{margin-top:clamp(30px,5vh,56px)}
.prow{display:grid;grid-template-columns:var(--pw,clamp(200px,22vw,300px)) 1fr;gap:clamp(22px,3.4vw,54px);align-items:start;padding:clamp(26px,4vh,44px) 0;border-top:1px solid var(--hairline)}
.roster .prow:last-child{border-bottom:1px solid var(--hairline)}
.prow .pph img{filter:grayscale(1);aspect-ratio:4/5;object-fit:cover;object-position:50% 22%;width:100%;display:block}
.prow .nm{font-weight:700;font-size:clamp(1.25rem,1.9vw,1.7rem);letter-spacing:-.022em;line-height:1.1}
.prow .rl{font:600 .68rem/1 var(--sans);letter-spacing:.17em;text-transform:uppercase;color:var(--maple);margin:9px 0 15px}
.prow p{color:var(--slate);font-size:1rem;max-width:60ch}
.pfacts{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.pfacts li{font:600 .68rem/1 var(--sans);letter-spacing:.13em;text-transform:uppercase;color:var(--ink);border:1px solid var(--hairline);border-radius:999px;padding:9px 14px}
/* leadership tier reads largest */
.roster.principals{border-bottom:0}
.roster.principals .prow{--pw:clamp(230px,25vw,340px)}
.roster.principals .prow:nth-child(2){--pw:clamp(205px,21vw,286px)}
.roster.principals .prow p{font-size:1.06rem}
/* compact tiers */
.prow.sm{--pw:clamp(150px,16vw,205px);padding:clamp(22px,3.2vh,36px) 0}
.prow.sm .nm{font-size:clamp(1.05rem,1.4vw,1.25rem)}
.prow.sm p{font-size:.93rem}
/* advisors in two columns; the border-top of each cell aligns per grid row */
.roster.cols{display:grid;grid-template-columns:1fr 1fr;column-gap:clamp(30px,4.5vw,72px)}
.roster.cols .prow:last-child{border-bottom:0}
@media(max-width:900px){
  .roster.cols{grid-template-columns:1fr}
  .roster.cols .prow:last-child{border-bottom:1px solid var(--hairline)}
  .roster.principals .prow,.roster.principals .prow:nth-child(2){--pw:clamp(150px,34vw,220px)}
  .prow{gap:clamp(16px,4vw,24px)}
}
@media(max-width:520px){
  .prow,.prow.sm{--pw:104px;gap:16px;padding:22px 0}
  .prow p{font-size:.9rem}
  .roster.principals .prow,.roster.principals .prow:nth-child(2){--pw:132px}
}
.growth{margin-top:clamp(28px,5vh,52px);border-top:1px solid var(--hairline);padding-top:22px;color:var(--slate);font-size:.9rem;max-width:60ch}

/* strategy page */
.crit{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--hairline);border-left:1px solid var(--hairline);margin-top:clamp(28px,5vh,52px)}
.crit>div{border-right:1px solid var(--hairline);border-bottom:1px solid var(--hairline);padding:clamp(20px,2.6vw,36px)}
.crit .k{font:600 .68rem/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--slate)}
.crit .v{font-weight:600;font-size:clamp(1.1rem,1.7vw,1.4rem);margin-top:12px;letter-spacing:-.01em}
.crit.c2{grid-template-columns:repeat(2,1fr)}
.crit.c3{grid-template-columns:repeat(3,1fr)}
@media(max-width:820px){.crit,.crit.c2,.crit.c3{grid-template-columns:1fr}}
.icard .meta span{white-space:nowrap}
.ifeat .meta span{white-space:nowrap}
.sig{margin-top:clamp(26px,4vh,44px)}
.sig>div{display:grid;grid-template-columns:auto minmax(0,3fr) minmax(0,6fr);gap:clamp(16px,3vw,48px);padding:20px 0;border-bottom:1px solid var(--hairline);align-items:baseline}
.sig .n{font-weight:700;font-size:1.1rem;color:var(--slate)}
.sig h3{font-size:1.2rem;font-weight:600}
.sig p{color:var(--slate);font-size:.93rem}
@media(max-width:700px){.sig>div{grid-template-columns:1fr}}

/* pitch form */
.pform{max-width:720px;margin-top:clamp(26px,4vh,44px)}
.pform .fx{margin-bottom:24px}
.pform label{display:block;font:600 .72rem/1 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--slate);margin-bottom:8px}
.pform input,.pform select,.pform textarea{width:100%;border:1px solid var(--hairline);background:#fff;padding:14px 16px;font:400 .95rem/1.5 var(--sans);color:var(--ink)}
.pform input:focus,.pform select:focus,.pform textarea:focus{outline:2px solid var(--indigo);outline-offset:-1px}
.pform .two{display:grid;grid-template-columns:1fr 1fr;gap:20px}
@media(max-width:640px){.pform .two{grid-template-columns:1fr}}
.cta-submit{width:100%;border:none;cursor:pointer;background:var(--indigo);color:#fff;font:600 .9rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;padding:20px;transition:background .15s}
.cta-submit:hover{background:var(--indigo-deep)}
.formnote{font-size:.82rem;color:var(--slate);margin-top:14px}
.pform input[type=file]{padding:12px 14px;background:var(--bone);cursor:pointer}
.pform small{display:block;font:400 .78rem/1.5 var(--sans);color:var(--slate);margin-top:6px;letter-spacing:0;text-transform:none}
.pform label.chk{display:flex;gap:12px;align-items:flex-start;font:400 .9rem/1.55 var(--sans);color:var(--slate);text-transform:none;letter-spacing:0;cursor:pointer}
.pform label.chk input{width:auto;margin-top:5px;flex:none}
.pform .hp{position:absolute;left:-9999px;top:0;width:1px;height:1px;overflow:hidden;opacity:0}
.fstatus{margin-top:16px;font:400 .92rem/1.5 var(--sans)}.fstatus.err{color:var(--maple)}.fstatus ul{margin:0;padding-left:20px}
.fdone{padding:36px;border:1px solid var(--hairline);background:var(--bone)}.fdone h3{font-size:1.5rem;margin:0 0 10px}.fdone p{margin:0;color:var(--slate)}
.cta-submit:disabled{opacity:.6;cursor:wait}

/* reveal micro-motion (screenshot-safe: 2.2s failsafe in site.js) */
.rv{transition:transform .7s cubic-bezier(.2,.7,.2,1),opacity .7s ease}
body.js .rv{opacity:0;transform:translateY(18px)}
body.js .rv.on{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){body.js .rv{opacity:1;transform:none;transition:none}}


/* ---------- v5 cinema layer ---------- */
/* portfolio cursor reveal plate */

/* left editorial rail */
.rail{position:fixed;left:0;top:0;bottom:0;width:64px;z-index:70;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:96px 0 28px;pointer-events:none}
.rail .rleaf{width:22px;opacity:1}
.rail .ridx{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font:600 .76rem/1 var(--sans);letter-spacing:.1em;color:var(--slate);font-variant-numeric:tabular-nums;white-space:nowrap}
.rail.ondark .ridx{color:var(--fog-bright)}
.rail .ridx{transition:color .35s ease}
@media(max-width:1280px){.rail{display:none}}

/* the crossing thread (home) */
.thread{position:absolute;left:0;top:0;pointer-events:none;z-index:1;overflow:visible}
.thread path.cable{stroke:var(--indigo);stroke-width:1.6;fill:none;opacity:.34}
.thread line.susp{stroke:var(--indigo);stroke-width:1;opacity:0;transition:opacity .5s ease}
.thread line.susp.on{opacity:.3}
.thread circle.tip{fill:var(--maple)}
@media(max-width:1100px){.thread{display:none}}

/* plank rules (home sections) */
.plank{display:block;height:1px;background:var(--hairline);transform:scaleX(0);transform-origin:left;transition:transform .9s cubic-bezier(.16,1,.3,1)}
.plank.on{transform:scaleX(1)}
body:not(.js) .plank{transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){.plank{transform:scaleX(1);transition:none}}

/* film grain on night surfaces */
.finale::before,footer::before,#statfilm .sf-stage::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='0.6'/%3E%3C/svg%3E")}
footer{position:relative}
footer>*{position:relative}

/* red scroll progress bar */
#pgbar{position:fixed;top:0;left:0;height:3px;width:100%;background:var(--maple);transform:scaleX(0);transform-origin:left;z-index:90;pointer-events:none}
@media(prefers-reduced-motion:reduce){#pgbar{display:none}}

/* smart sticky nav */
.hd.float{position:fixed;top:0;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--hairline);transform:translateY(-102%);transition:transform .32s cubic-bezier(.16,1,.3,1);z-index:80;color:var(--ink)}
.hd.float.show{transform:none}
.hd.solid{position:sticky;top:0;z-index:80}
@media(prefers-reduced-motion:reduce){.hd.float,.hd.solid{transition:none}}


/* ---------- v7: "The overlooked majority" stat film ---------- */
/* Default (any browser, stale JS, no JS, mobile, reduced motion): static stacked chapter. */
#statfilm{background:var(--night);position:relative;z-index:2}
.sf-stage{position:static;height:auto;display:block;padding:clamp(48px,8vh,90px) var(--mx);color:#fff;overflow:hidden}
.sf-dots,.sf-num,.sf-hero{display:none}
.sf-beat{position:static;opacity:1;transform:none;margin:0 0 clamp(30px,5vh,48px);max-width:56ch}
.sf-beat h2{font-size:clamp(1.8rem,3.4vw,3rem);color:#fff;letter-spacing:-.025em;max-width:20ch}
.sf-beat h2 b{font-weight:700}
.sf-beat .sf-red{color:var(--maple)}
.sf-kick{font:600 .72rem/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--fog);margin-bottom:18px}
.sf-sub{margin-top:16px;color:var(--bone);opacity:.8;font-size:1.05rem}
.sf-kicker{margin-top:20px;font-weight:700;font-size:clamp(1.2rem,2vw,1.6rem);color:var(--maple)}
.sf-beat .mark{width:60px;height:auto;margin-bottom:20px}
/* Live scrub mode (added by current JS on capable desktops only) */
#statfilm.sf-live{height:380vh}
#statfilm.sf-live .sf-stage{position:sticky;top:0;height:100dvh;display:flex;align-items:center;padding:0 var(--mx)}
#statfilm.sf-live .sf-dots{display:block;position:absolute;inset:9% 5%;pointer-events:none;transition:opacity .6s ease}
#statfilm.sf-live .sf-dots.dim{opacity:.3}
#statfilm.sf-live .sf-dots span{position:absolute;width:9px;height:9px;border-radius:50%;background:var(--bone);opacity:.13;transition:opacity .45s ease,background .45s ease,transform .45s ease}
#statfilm.sf-live .sf-dots span.warm{opacity:.55}
#statfilm.sf-live .sf-dots span.lit{background:var(--maple);opacity:.95;transform:scale(1.25)}
#statfilm.sf-live .sf-dots span.quiet{opacity:.04 !important}
#statfilm.sf-live .sf-beat{position:absolute;left:var(--mx);top:50%;transform:translateY(calc(-50% + 26px));margin:0;opacity:0;transition:opacity .5s ease,transform .5s ease;pointer-events:none}
#statfilm.sf-live .sf-beat.on{opacity:1;transform:translateY(-50%)}
#statfilm.sf-live .sf-static{display:none}
#statfilm.sf-live .sf-hero{display:flex;position:absolute;inset:0;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:clamp(12px,2.4vh,24px);padding:0 var(--mx);pointer-events:none;opacity:0;transition:opacity .45s ease}
#statfilm.sf-live[data-sfs="scrub2"] .sf-hero,#statfilm.sf-live[data-sfs="hold2"] .sf-hero,#statfilm.sf-live[data-sfs="scrub3"] .sf-hero,#statfilm.sf-live[data-sfs="hold3"] .sf-hero{opacity:1}
#statfilm.sf-live .sf-num{display:block;font-weight:700;font-size:clamp(4.5rem,13vw,11rem);line-height:1;color:var(--maple);font-variant-numeric:tabular-nums;letter-spacing:-.04em}
#statfilm.sf-live .sf-slot{display:grid;justify-items:center}
#statfilm.sf-live .sf-slot>*{grid-area:1/1}
#statfilm.sf-live .sf-above{font:600 .78rem/1.4 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--fog-bright)}
#statfilm.sf-live .sf-below{font-weight:500;font-size:clamp(1.15rem,2vw,1.7rem);color:var(--bone);max-width:28ch}
#statfilm.sf-live .sf-above,#statfilm.sf-live .sf-below{opacity:0;transform:translateY(8px);transition:opacity .45s ease,transform .45s ease}
#statfilm.sf-live[data-sfs="hold2"] [data-ctx="2"],#statfilm.sf-live[data-sfs="hold3"] [data-ctx="3"]{opacity:1;transform:none}
#statfilm.sf-live .sf-beat[data-b="4"]{left:50%;right:auto;transform:translate(-50%,calc(-50% + 26px));text-align:center;max-width:1120px;width:calc(100% - 2*var(--mx))}
#statfilm.sf-live .sf-beat[data-b="4"].on{transform:translate(-50%,-50%)}
#statfilm.sf-live .sf-beat[data-b="4"] h2{font-size:clamp(2.1rem,4.4vw,3.9rem);max-width:none;margin:0 auto}
#statfilm.sf-live .sf-beat[data-b="4"] .mark{margin:0 auto 20px}


/* v9: stat film scrub on mobile */
@media(max-width:820px){
  #statfilm.sf-live{height:340vh}
  #statfilm.sf-live .sf-stage{padding:0 var(--mx)}
  #statfilm.sf-live .sf-beat{max-width:100%;top:38%}
  #statfilm.sf-live .sf-beat h2{font-size:clamp(1.5rem,6.4vw,2rem)}
  #statfilm.sf-live .sf-num{font-size:clamp(3rem,21vw,5.2rem)}
  #statfilm.sf-live .sf-below{font-size:1.02rem;max-width:92%}
  #statfilm.sf-live .sf-beat[data-b="4"] h2{font-size:clamp(1.55rem,6.6vw,2.1rem)}
  #statfilm.sf-live .sf-dots{inset:6% 4%}
}
.pform fieldset.acc{border:1px solid var(--hairline);padding:16px 18px 6px;margin:0 0 24px}.pform fieldset.acc legend{font:600 .82rem/1.4 var(--sans);color:var(--ink);padding:0 6px;letter-spacing:0;text-transform:none}
.pform fieldset.acc label.chk{margin-bottom:10px}

/* v22: privacy policy page (ported verbatim from the Wix site) */
.policy{max-width:76ch}
.policy h2{font-size:clamp(1.3rem,2vw,1.7rem);letter-spacing:-.02em;line-height:1.15;margin:44px 0 12px}
.policy p{color:var(--slate);line-height:1.62;margin:0 0 14px}
.policy strong{color:var(--ink);font-weight:600}
/* v22: optional impact questions on the pitch form share the investor form's fieldset */
.pform fieldset.impact .fx{margin-bottom:18px}
