@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,600&family=Inter:wght@400;500;600;700&display=swap');
:root{--m-pe:#c0392b;--m-pe-l:#fbe9e7;--m-listed:#2f5fb0;--m-listed-l:#e6edfa;--m-global:#b07a12;--m-global-l:#f7eedd;--m-jv:#0e8a86;--m-jv-l:#ddf2f1;--m-ind:#1d6f54;--m-ind-l:#e7f3ee;--m-charity:#7a5cc0;--m-charity-l:#efe9f9;--m-corp:#5b6b63;--m-corp-l:#e8ebe9;--m-unk:#74827b;--m-unk-l:#eceeec}
:root{--ink:#15201b;--ink2:#3c4842;--mut:#74827b;--faint:#9aa7a0;--line:#e4e9e6;--line2:#eef1ef;--bg:#f3f5f2;--card:#fff;--green:#1d6f54;--greenL:#e7f3ee;--gold:#9a6b15;--goldL:#faf2df;--red:#a8403a;--redL:#f9eae8;--blue:#3a57c4;--blueL:#eaeefb;--grey:#eceeec}
*{box-sizing:border-box}html,body{margin:0}body{font:13.5px/1.5 Inter,system-ui,sans-serif;color:var(--ink);background:var(--bg)}
h1,h2,h3{font-family:Fraunces,Georgia,serif;font-weight:600;letter-spacing:-.01em;margin:0}
a{color:var(--green)}

/* ---- shared hero / header ---- */
header{background:linear-gradient(160deg,#10271e,#1d6f54);color:#fff;padding:26px 26px 0}
.hw{max-width:1120px;margin:0 auto}
.brand{display:flex;align-items:center;gap:12px}.brand .logomark{flex:none}
header h1{font-size:27px;color:#fff;letter-spacing:-.5px}
header .sub{opacity:.84;font-size:13px;margin-top:8px;max-width:680px;line-height:1.55}

/* ---- journey nav ---- */
.journey{max-width:1120px;margin:22px auto 0;display:flex;gap:8px;flex-wrap:wrap}
.jstep{flex:1;min-width:200px;display:flex;align-items:center;gap:11px;padding:11px 14px;border-radius:11px 11px 0 0;background:rgba(255,255,255,.08);color:#fff;text-decoration:none;border:1px solid transparent;border-bottom:0;transition:background .15s}
.jstep:hover{background:rgba(255,255,255,.15)}
.jstep.on{background:var(--bg);color:var(--ink)}
.jstep .jn{flex:none;width:24px;height:24px;border-radius:50%;background:rgba(255,255,255,.22);color:#fff;font-weight:700;font-size:12px;display:flex;align-items:center;justify-content:center;font-family:Inter}
.jstep.on .jn{background:var(--green);color:#fff}
.jstep .jt{display:block;font-weight:700;font-size:12.5px;line-height:1.2}
.jstep .jd{display:block;font-size:10.5px;opacity:.7;margin-top:2px;line-height:1.2}
.jstep.on .jd{opacity:.6;color:var(--mut)}

main{max-width:1120px;margin:0 auto;padding:22px 26px 60px}

/* ---- 60-second box ---- */
.sixty{background:#10271e;color:#fff;border-radius:16px;padding:22px 26px;margin:0 0 22px;box-shadow:0 6px 24px rgba(16,39,30,.18)}
.sixty h2{font-size:19px;color:#fff;display:flex;align-items:center;gap:9px}
.sixty .stag{font-family:Inter;font-weight:700;font-size:10px;letter-spacing:.08em;text-transform:uppercase;background:var(--green);color:#fff;padding:3px 9px;border-radius:99px}
.sixty p{font-size:13.5px;line-height:1.6;color:#cfe2d8;margin:10px 0 0;max-width:780px}
.sixty ul{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:9px 22px}
.sixty li{font-size:13px;line-height:1.55;color:#e7f1ec;padding-left:22px;position:relative}
.sixty li::before{content:"";position:absolute;left:0;top:7px;width:9px;height:9px;border-radius:50%;background:#9be3c4}
.sixty li b{color:#fff}

/* ---- learn sections ---- */
.ehead{margin:6px 0 18px}.ehead h2{font-size:24px}.ehead p{color:var(--ink2);font-size:14px;line-height:1.7;margin:8px 0 0;max-width:820px}
.lsec{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px 26px;margin:0 0 16px;box-shadow:0 1px 3px rgba(0,0,0,.04)}
.lsec h3{font-size:18px;margin:0 0 10px}
.lsec p{font-size:14px;line-height:1.7;color:var(--ink2);margin:0 0 10px}
.lsec-hl{border:2px solid var(--green);background:#f6fbf8}
.lgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;margin:12px 0 6px}
.lcard{border:1px solid var(--line);border-left:4px solid var(--mut);border-radius:10px;padding:12px 14px;background:#fafbfa}
.lcard b{font-size:14px}.lcard span{display:block;font-size:11px;color:var(--mut);margin-top:2px}
.lcard .lfig{font-family:Fraunces,serif;font-size:13px;font-weight:600;margin:7px 0 4px;color:var(--ink)}.lcard .lfig i{font-weight:400;color:var(--mut);font-size:11.5px}
.lcard p{font-size:12px;line-height:1.5;margin:0;color:var(--ink2)}
.lcard.mc-IVC,.lcard.mc-MEDIVET,.lcard.mc-VETPARTNERS{border-left-color:var(--m-pe)}.lcard.mc-CVS{border-left-color:var(--m-listed)}.lcard.mc-MARS{border-left-color:var(--m-global)}.lcard.mc-PAH{border-left-color:var(--m-listed)}
.lsteps{display:flex;flex-direction:column;gap:11px;margin-top:10px}
.lstep{display:flex;gap:12px;align-items:flex-start}
.lstep .ln{flex:none;width:26px;height:26px;border-radius:50%;background:var(--green);color:#fff;font-weight:700;font-size:13px;display:flex;align-items:center;justify-content:center;font-family:Inter}
.lstep>div{font-size:13px;line-height:1.6;color:var(--ink2)}.lstep i{color:var(--mut)}
.kv2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:10px}.kv2>div{background:#fafbfa;border:1px solid var(--line2);border-radius:9px;padding:11px 13px;font-size:12.5px;line-height:1.55;color:var(--ink2)}
.lul{margin:8px 0 0;padding-left:18px}.lul li{font-size:13px;line-height:1.7;color:var(--ink2);margin-bottom:6px}
.lchecklist{display:flex;flex-direction:column;gap:8px;margin-top:10px}
.lchk{background:#fafbfa;border:1px solid var(--line2);border-radius:9px;padding:10px 13px;font-size:12.5px;line-height:1.55;color:var(--ink2)}.lchk i{color:var(--mut)}
.lgloss{display:grid;grid-template-columns:1fr 1fr;gap:10px 18px;margin-top:8px}.lgloss>div{font-size:12.5px;line-height:1.5;color:var(--ink2)}.lgloss b{color:var(--ink);display:block}
.lsrc{font-size:10.5px;color:var(--faint);margin-top:4px}
.ldis{font-size:11.5px;color:var(--mut);line-height:1.6;padding:0 4px;margin-top:4px}
.callout{border-radius:11px;padding:14px 16px;font-size:13px;line-height:1.6;margin:6px 0 0}
.co-green{background:var(--greenL);color:#13533e}.co-gold{background:var(--goldL);color:#6b4a0f}.co-red{background:var(--redL);color:#7d2f2a}.co-blue{background:var(--blueL);color:#293f9c}

/* ---- hand-off CTA ---- */
.handoff{background:linear-gradient(160deg,#1d6f54,#10271e);color:#fff;border-radius:16px;padding:26px 28px;margin:8px 0 0;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.handoff .ht{font-family:Fraunces,serif;font-size:20px;font-weight:600;line-height:1.25}
.handoff .hd{opacity:.85;font-size:13px;margin-top:6px;max-width:560px;line-height:1.55}
.handoff a.cta{flex:none;background:#fff;color:var(--green);text-decoration:none;font-weight:700;font-size:14px;padding:13px 22px;border-radius:11px;white-space:nowrap;transition:transform .12s}
.handoff a.cta:hover{transform:translateX(3px)}

footer{max-width:1120px;margin:26px auto 0;padding:0 26px;color:var(--mut);font-size:11px;line-height:1.6}

/* ===================================================================
   PAGE 2 — Ownership models (archetype accordion)
   =================================================================== */
.modelintro{margin:0 0 20px}
.archlist{display:flex;flex-direction:column;gap:14px}
.arch{background:#fff;border:1px solid var(--line);border-left:5px solid var(--mut);border-radius:14px;box-shadow:0 1px 3px rgba(0,0,0,.05);overflow:hidden}
.arch.a-pe{border-left-color:var(--m-pe)}.arch.a-listed{border-left-color:var(--m-listed)}.arch.a-global{border-left-color:var(--m-global)}.arch.a-jv{border-left-color:var(--m-jv)}.arch.a-ind{border-left-color:var(--m-ind)}.arch.a-charity{border-left-color:var(--m-charity)}
.archhead{display:flex;align-items:center;gap:18px;padding:18px 22px;cursor:pointer;user-select:none}
.archhead:hover{background:#fafbfa}
.archnum{flex:none;width:34px;height:34px;border-radius:50%;background:var(--ink);color:#fff;font-family:Fraunces,serif;font-weight:600;font-size:16px;display:flex;align-items:center;justify-content:center}
.arch.a-pe .archnum{background:var(--m-pe)}.arch.a-listed .archnum{background:var(--m-listed)}.arch.a-global .archnum{background:var(--m-global)}.arch.a-jv .archnum{background:var(--m-jv)}.arch.a-ind .archnum{background:var(--m-ind)}.arch.a-charity .archnum{background:var(--m-charity)}
.archmain{flex:1;min-width:0}
.archtitle{font-family:Fraunces,serif;font-size:18px;font-weight:600;line-height:1.2}
.archtitle .agroups{font-family:Inter;font-size:11.5px;font-weight:600;color:var(--mut);margin-left:8px}
.archdef{color:var(--ink2);font-size:12.5px;margin-top:4px;line-height:1.5;max-width:680px}
.archstats{display:flex;gap:4px 18px;flex-wrap:wrap;flex:none;align-items:flex-end}
.astat{text-align:center;min-width:52px}
.astat b{display:block;font-family:Fraunces,serif;font-size:17px;font-weight:600;line-height:1;color:var(--ink)}
.astat span{display:block;font-size:8.5px;text-transform:uppercase;letter-spacing:.03em;color:var(--mut);margin-top:4px;line-height:1.2}
.archchev{flex:none;color:var(--mut);font-size:14px;transition:transform .2s;margin-left:4px}
.arch.open .archchev{transform:rotate(180deg)}
.archbody{display:none;border-top:1px solid var(--line2);background:#fafbfa;padding:18px 22px 22px}
.arch.open .archbody{display:block}
.archmeaning{background:#fff;border:1px solid var(--line2);border-radius:10px;padding:13px 16px;font-size:13px;line-height:1.6;color:var(--ink2);margin:0 0 16px}
.archmeaning b{color:var(--ink)}
.archmeaning .pro{color:#13533e}.archmeaning .con{color:#7d2f2a}
@media(max-width:880px){.archstats{width:100%;margin-top:10px;justify-content:flex-start;gap:4px 14px}.archhead{flex-wrap:wrap}}

/* megacards (reused inside archetypes) */
.megagrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:16px}
.megacard{background:#fff;border:1px solid var(--line);border-radius:14px;padding:0 0 16px;box-shadow:0 1px 3px rgba(0,0,0,.05);overflow:hidden;border-top:4px solid var(--mut);display:flex;flex-direction:column}
.megacard.mc-IVC,.megacard.mc-MEDIVET,.megacard.mc-VETPARTNERS{border-top-color:var(--m-pe)}.megacard.mc-CVS{border-top-color:var(--m-listed)}.megacard.mc-MARS{border-top-color:var(--m-global)}.megacard.mc-PAH{border-top-color:var(--m-listed)}.megacard.mc-IND{border-top-color:var(--m-ind)}.megacard.mc-CHARITY{border-top-color:var(--m-charity)}
.megah{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:16px 18px 12px;border-bottom:1px solid var(--line2)}
.meganame{font-family:Fraunces,serif;font-size:20px;font-weight:600;line-height:1.15}
.megatype{color:var(--mut);font-size:11.5px;margin-top:4px}
.megascore{text-align:right;flex:none}.megascore .ms-n{font-family:Fraunces,serif;font-size:19px;font-weight:600;white-space:nowrap}.megascore .ms-l{font-size:8.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--mut);margin-top:2px}
.megastats{display:grid;grid-template-columns:repeat(5,1fr);gap:2px;padding:12px 14px;background:#fafbfa;border-bottom:1px solid var(--line2)}
.mstat{text-align:center}.mstat b{display:block;font-family:Fraunces,serif;font-size:15px}.mstat span{font-size:8px;text-transform:uppercase;letter-spacing:.02em;color:var(--mut);line-height:1.25;display:block;margin-top:3px}
.megasum{font-size:13px;line-height:1.6;color:var(--ink2);padding:13px 18px 0;margin:0}
.megacard .callout{margin:8px 18px 0}
.megacard .ecma{margin:10px 18px 0;background:var(--bg);font-size:11.5px;color:var(--ink2);padding:9px 11px;border-radius:8px;line-height:1.5}
.subwrap{padding:12px 18px 0}.subh{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--mut);margin-bottom:7px}
.subchip{background:var(--grey);border:0;border-radius:7px;padding:5px 10px;font-size:11.5px;font-weight:600;cursor:pointer;font-family:inherit;margin:0 5px 5px 0;color:var(--ink2);text-decoration:none;display:inline-block}.subchip:hover{background:#dde0dd}
.megaecon{font-family:Fraunces,serif;font-size:12px;font-weight:600;color:var(--green);margin-top:5px}
.echip{display:block;margin:14px 18px 0;background:var(--greenL);color:var(--green);border:0;border-radius:8px;padding:9px 13px;font-size:12.5px;font-weight:700;cursor:pointer;font-family:inherit;text-align:left;text-decoration:none}
.echip:hover{background:#d8ebe3}

/* ===================================================================
   PAGE 3 — Explore (filter bar, bench, table, panel, map)
   =================================================================== */
.bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 12px;box-shadow:0 1px 2px rgba(0,0,0,.04);margin-bottom:14px}
.bar input[type=search]{flex:1;min-width:190px;padding:8px 11px;border:1.5px solid var(--line);border-radius:8px;font-size:13.5px;font-family:inherit}
.bar select{padding:8px 9px;border:1.5px solid var(--line);border-radius:8px;font-size:12.5px;background:#fff;font-family:inherit;color:var(--ink2);max-width:165px}
.bar input:focus,.bar select:focus{outline:none;border-color:var(--green)}
.viewtog{display:flex;gap:0;border:1.5px solid var(--line);border-radius:8px;overflow:hidden}
.viewtog button{border:0;background:#fff;padding:8px 14px;font-size:12.5px;font-weight:600;font-family:inherit;color:var(--mut);cursor:pointer}
.viewtog button.on{background:var(--green);color:#fff}
.chip{border:1.5px solid var(--line);background:#fff;border-radius:8px;padding:8px 12px;font-size:12.5px;font-weight:600;font-family:inherit;color:var(--ink2);cursor:pointer}.chip:hover{border-color:var(--green);color:var(--green)}
.filternote{background:var(--greenL);color:var(--green);border-radius:8px;padding:8px 12px;font-size:12px;font-weight:600;display:flex;align-items:center;gap:10px;margin-bottom:12px}
.filternote button{margin-left:auto;background:#fff;border:1px solid #cfe6da;border-radius:6px;padding:3px 9px;font-size:11px;font-weight:700;color:var(--green);cursor:pointer;font-family:inherit}
.benchwrap{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:13px 16px;box-shadow:0 1px 2px rgba(0,0,0,.04);margin:0 0 14px}
.benchwrap .bh{display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:11px}
.benchwrap .bh h3{font-size:13px;font-family:Inter;font-weight:700;color:var(--ink)}
.benchwrap .bh .cap{font-size:11px;color:var(--faint)}
.benchgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.benchcard{background:#fbfdfc;border:1px solid var(--line2);border-radius:9px;padding:9px 13px}
.benchcard .role{color:var(--mut);font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:9.5px}
.benchcard .amt{font-family:Fraunces,serif;font-size:18px;font-weight:600;margin-top:2px;color:var(--ink)}
.benchcard .det{font-family:Inter;font-size:10.5px;color:var(--mut);font-weight:400;display:block;margin-top:1px}
#count{color:var(--mut);font-size:12px;margin:0 3px 8px}
.tw{background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:0 1px 3px rgba(0,0,0,.04);overflow:hidden}
table{width:100%;border-collapse:collapse}
thead th:first-child{border-top-left-radius:12px}thead th:last-child{border-top-right-radius:12px}
thead th{position:sticky;top:0;background:#fafbfa;text-align:left;padding:9px 11px;font-size:10.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--mut);border-bottom:2px solid var(--line);cursor:pointer;white-space:nowrap;user-select:none;z-index:20}
thead th:hover{color:var(--ink)}thead th .ar{opacity:.4;font-size:9px}
tbody tr{border-bottom:1px solid var(--line2);cursor:pointer}tbody tr:hover{background:#fafbf9}tbody tr.sel{background:var(--greenL);box-shadow:inset 3px 0 0 var(--green)}
td{padding:9px 11px;vertical-align:middle}
.pname{font-weight:600;font-size:14px}.paddr{color:var(--mut);font-size:11.5px;margin-top:1px}
.bdg{display:inline-block;padding:2px 9px;border-radius:99px;font-size:10.5px;font-weight:700;white-space:nowrap}
.t-corp{background:var(--blueL);color:var(--blue)}.t-ind{background:var(--greenL);color:var(--green)}.t-cha{background:var(--goldL);color:var(--gold)}.t-unk{background:var(--grey);color:var(--mut)}
.owner{font-size:13px}.owner .pe{display:block;font-size:11px;color:var(--mut)}
.conf{font-size:9px;font-weight:700;color:var(--mut);border:1px solid var(--line);border-radius:4px;padding:0 4px;vertical-align:1px;cursor:help}
.mc{display:flex;align-items:center;gap:6px;font-weight:600;font-size:13px}
.dot{width:8px;height:8px;border-radius:99px;flex:none}.d-hi{background:var(--red)}.d-md{background:var(--gold)}.d-lo{background:var(--green)}
.affl{display:flex;align-items:center;gap:7px}.afflbar{width:40px;height:6px;border-radius:3px;background:#e7ebe8;overflow:hidden}.afflfill{height:100%;border-radius:3px}
.succ{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;padding:2px 9px;border-radius:99px}
.succ-high{background:var(--greenL);color:var(--green)}.succ-medium{background:var(--goldL);color:var(--gold)}.succ-low{background:var(--grey);color:var(--mut)}
.megatag{display:inline-block;margin-top:3px;font-size:10px;font-weight:700;padding:1px 7px;border-radius:5px;letter-spacing:.02em}
.mg-IVC,.mg-MEDIVET,.mg-VETPARTNERS{background:var(--m-pe-l);color:var(--m-pe)}.mg-CVS{background:var(--m-listed-l);color:var(--m-listed)}.mg-MARS{background:var(--m-global-l);color:var(--m-global)}.mg-PAH{background:var(--m-listed-l);color:var(--m-listed)}
.hide-sm{}@media(max-width:900px){.hide-sm{display:none}}
#mapwrap{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:8px;box-shadow:0 1px 3px rgba(0,0,0,.04)}
/* right panel */
#scrim{position:fixed;inset:0;background:rgba(16,39,30,.28);opacity:0;pointer-events:none;transition:opacity .2s;z-index:90}
#scrim.show{opacity:1;pointer-events:auto}
#panel{position:fixed;top:0;right:0;height:100%;width:520px;max-width:94vw;background:#fff;box-shadow:-12px 0 40px rgba(16,39,30,.18);transform:translateX(100%);transition:transform .26s cubic-bezier(.4,0,.2,1);z-index:100;overflow-y:auto}
#panel.show{transform:translateX(0)}
.ph{position:sticky;top:0;background:linear-gradient(160deg,#10271e,#1d6f54);color:#fff;padding:22px 24px 18px;z-index:2}
.ph h2{color:#fff;font-size:21px;line-height:1.2}
.ph .pa{opacity:.85;font-size:12.5px;margin-top:4px}
.ph .pclose{position:absolute;top:16px;right:18px;background:rgba(255,255,255,.15);border:0;color:#fff;width:30px;height:30px;border-radius:8px;cursor:pointer;font-size:17px;line-height:1}
.ph .pclose:hover{background:rgba(255,255,255,.28)}
.pbadges{display:flex;gap:7px;margin-top:12px;flex-wrap:wrap}
.pbadges .b{background:rgba(255,255,255,.16);border-radius:7px;padding:3px 10px;font-size:11.5px;font-weight:600}
.pbody{padding:20px 24px 40px}
.lede{font-size:14.5px;line-height:1.65;color:var(--ink);margin:0 0 20px}.lede b{color:var(--green)}
.sec{margin:22px 0 0}.sec h3{font-size:12px;text-transform:uppercase;letter-spacing:.07em;color:var(--mut);font-family:Inter;font-weight:700;margin:0 0 12px;display:flex;align-items:center;gap:7px}
.metric{margin:0 0 16px}
.metric .top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:5px}
.metric .lab{font-size:13px;font-weight:600}.metric .val{font-size:13px;color:var(--ink2)}
.gauge{height:9px;border-radius:5px;background:#eef1ef;overflow:hidden;position:relative}
.gauge .fill{height:100%;border-radius:5px;transition:width .4s}
.gauge .mark{position:absolute;top:-3px;width:2px;height:15px;background:var(--ink);opacity:.35}
.metric .note{font-size:11.5px;color:var(--mut);margin-top:5px;line-height:1.5}
.agewrap{display:flex;flex-direction:column;gap:7px}
.agerow{display:flex;align-items:center;gap:10px;font-size:12.5px}
.agerow .yl{width:42px;font-weight:600}.agerow .track{flex:1;height:9px;background:#eef1ef;border-radius:5px;overflow:hidden}
.agerow .fl{height:100%;border-radius:5px;background:var(--green)}.agerow .fl.old{background:var(--gold)}.agerow .fl.older{background:var(--red)}
.kv{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:12.5px}.kv .k{color:var(--mut)}.kv .v{color:var(--ink2);text-align:right}
.tags{margin-top:4px}.tag{display:inline-block;background:var(--grey);border-radius:6px;padding:1px 8px;font-size:11px;margin:2px 4px 0 0;color:var(--ink2)}
.srcline{font-size:10.5px;color:var(--faint);margin-top:6px}
a.ext{color:var(--green);text-decoration:none;font-weight:600}a.ext:hover{text-decoration:underline}
.hoursg{display:grid;grid-template-columns:auto 1fr;gap:3px 12px;font-size:12.5px}.hoursg .d{color:var(--mut)}
.payline{font-size:12.5px;line-height:1.5;margin-bottom:4px}
@media(max-width:760px){.kv2,.lgloss,.sixty ul{grid-template-columns:1fr}.journey{flex-direction:column}.jstep{border-radius:11px}.megagrid{grid-template-columns:1fr}}
.archview{margin:0 0 16px}

/* ===== model-colour badges (one colour per ownership model) ===== */
.bdg.om-pe{background:var(--m-pe-l);color:var(--m-pe)}
.bdg.om-listed{background:var(--m-listed-l);color:var(--m-listed)}
.bdg.om-global{background:var(--m-global-l);color:var(--m-global)}
.bdg.om-ind{background:var(--m-ind-l);color:var(--m-ind)}
.bdg.om-charity{background:var(--m-charity-l);color:var(--m-charity)}
.bdg.om-corp{background:var(--m-corp-l);color:var(--m-corp)}
.bdg.om-unk{background:var(--m-unk-l);color:var(--m-unk)}
/* model legend (Models page) */
.mlegend{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:12px}
.mlchip{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:var(--ink2)}
.mldot{width:12px;height:12px;border-radius:3px;flex:none}
.mldot.d-pe{background:var(--m-pe)}.mldot.d-listed{background:var(--m-listed)}.mldot.d-global{background:var(--m-global)}.mldot.d-ind{background:var(--m-ind)}.mldot.d-charity{background:var(--m-charity)}
/* contract-type layer (Models page) */
.ctypes{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin-top:14px}
.ctype{background:#fafbfa;border:1px solid var(--line);border-radius:11px;padding:14px 16px;border-top:3px solid var(--green)}
.ctype h4{font-family:Fraunces,serif;font-size:15px;font-weight:600;margin:0 0 6px}
.ctype p{font-size:12.5px;line-height:1.55;color:var(--ink2);margin:0 0 8px}
.ctype .cwho{font-size:11px;color:var(--mut);border-top:1px solid var(--line2);padding-top:7px}
/* contract tag in detail panel */
.ctag{display:inline-block;background:var(--bg);border:1px solid var(--line);border-radius:7px;padding:3px 10px;font-size:12px;font-weight:700;color:var(--ink)}

/* ===== Explore: prominent search + first-level view toggle + header filters ===== */
.exptools{display:flex;align-items:center;gap:12px;margin:0 0 14px}
.exptools .viewtog{border:1.5px solid var(--line)}
.searchbig{position:relative;margin:0 0 16px}
.searchbig .si{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-size:18px;opacity:.4;pointer-events:none}
.searchbig input{width:100%;padding:15px 16px 15px 46px;border:2px solid var(--line);border-radius:12px;font-size:16px;font-family:inherit;color:var(--ink);box-shadow:0 1px 4px rgba(0,0,0,.05)}
.searchbig input:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 4px var(--greenL)}
.searchbig input::placeholder{color:var(--faint)}
thead th{vertical-align:top;cursor:default}
.thsort{cursor:pointer;display:inline-flex;align-items:center;gap:4px}
.thsort:hover{color:var(--ink)}
.thtip{cursor:help;color:var(--faint);font-weight:700;font-size:9px;border:1px solid var(--line);border-radius:50%;width:13px;height:13px;display:inline-flex;align-items:center;justify-content:center;margin-left:3px;vertical-align:1px}
.thf{display:block;width:100%;margin-top:7px;padding:4px 6px;border:1px solid var(--line);border-radius:6px;font-size:11px;font-family:inherit;color:var(--ink2);background:#fff;font-weight:400;text-transform:none;letter-spacing:0;cursor:pointer}
.thf:focus{outline:none;border-color:var(--green)}

/* ===== Explore table — readability upgrade (v9) ===== */
.tw{overflow:hidden}
table{font-size:13px;table-layout:auto}
thead th{padding:11px 12px 10px;background:#eef3f0;border-bottom:1.5px solid var(--line);color:var(--ink2)}
thead th .thsort{font-size:10.5px;letter-spacing:.05em}
.thtip{color:var(--mut);border-color:var(--line)}
.thf{margin-top:8px;background:#fff}
tbody td{padding:13px 12px;vertical-align:middle;border-bottom:1px solid var(--line2)}
tbody tr:nth-child(even){background:#fbfcfb}
tbody tr:hover{background:#eef5f1}
tbody tr.sel{background:var(--greenL);box-shadow:inset 3px 0 0 var(--green)}
.pname{font-size:14px;font-weight:600;line-height:1.25;color:var(--ink)}
.paddr{font-size:11px;color:var(--mut);margin-top:2px;line-height:1.35}
td .owner{font-size:12.5px;line-height:1.4;font-weight:600;color:var(--ink2)}
td .owner .pe{font-size:10.5px;font-weight:400;margin-top:2px}
.megatag{margin-top:5px}
.mc{display:inline-flex}
/* min widths so the 8 columns sit comfortably without a scrollbar */
thead th:first-child{min-width:210px}
thead th:nth-child(4){min-width:150px}
/* centre the single-pill columns: Opportunity(2), Ownership(3), Succession(7), Distress(8) */
thead th:nth-child(2),thead th:nth-child(3),thead th:nth-child(7),thead th:nth-child(8),
tbody td:nth-child(2),tbody td:nth-child(3),tbody td:nth-child(7),tbody td:nth-child(8){text-align:center}
tbody td:nth-child(6) .affl{justify-content:flex-start}

/* ===== shortlist stars, show-more, approach list (v10) ===== */
.pcell{display:flex;gap:9px;align-items:flex-start;text-align:left}
.star{background:none;border:0;cursor:pointer;font-size:16px;line-height:1;color:var(--faint);padding:0;flex:none;margin-top:1px}
.star:hover,.star.on{color:#e0a82e}
.star.big{font-size:22px;position:absolute;top:17px;right:54px;color:rgba(255,255,255,.72)}
.star.big:hover,.star.big.on{color:#ffd24a}
.slchip{white-space:nowrap}
.slchip.on{background:#fff7e0;border-color:#e0c050;color:#8a6d00}
.showmore{display:block;width:100%;margin:12px 0 0;padding:12px;background:#fff;border:1.5px solid var(--line);border-radius:10px;font-family:inherit;font-size:13px;font-weight:600;color:var(--green);cursor:pointer}
.showmore:hover{border-color:var(--green);background:var(--greenL)}
.allshown{text-align:center;color:var(--faint);font-size:11.5px;margin-top:12px}
.alist{margin:10px 0 0;padding-left:20px}.alist li{font-size:13px;line-height:1.6;color:var(--ink2);margin-bottom:7px}

/* ===== offer-benchmarking tool ===== */
.bmwrap{max-width:760px;margin:0 auto}
.bmcard{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px 26px;box-shadow:0 1px 3px rgba(0,0,0,.05)}
.bmrow{display:flex;gap:14px;flex-wrap:wrap}
.bmfield{flex:1;min-width:150px;margin-bottom:14px}
.bmfield label{display:block;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--mut);margin-bottom:5px}
.bmfield select,.bmfield input{width:100%;padding:11px 12px;border:1.5px solid var(--line);border-radius:9px;font-size:14px;font-family:inherit;color:var(--ink);background:#fff}
.bmfield select:focus,.bmfield input:focus{outline:none;border-color:var(--green);box-shadow:0 0 0 3px var(--greenL)}
.bmresult{margin-top:8px}
.bmverdict{font-family:Fraunces,serif;font-size:22px;font-weight:600;line-height:1.2;margin-bottom:4px}
.bmverdict.below{color:var(--m-pe)}.bmverdict.at{color:var(--gold)}.bmverdict.above{color:var(--green)}
.bmbar{position:relative;height:42px;background:linear-gradient(90deg,#f4d6d2 0%,#f7ecd6 50%,#e2f0e9 100%);border-radius:9px;margin:20px 0 6px;border:1px solid var(--line2)}
.bmtick{position:absolute;top:-7px;bottom:-7px;width:3px;background:var(--ink);border-radius:2px}
.bmtick .lab{position:absolute;top:-22px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:11px;font-weight:700;color:var(--ink);background:#fff;padding:1px 6px;border-radius:6px;border:1px solid var(--line)}
.bmscale{display:flex;justify-content:space-between;font-size:11px;color:var(--mut);margin-top:4px}
.bmnote{font-size:13px;line-height:1.65;color:var(--ink2);margin-top:14px}
.bmnote b{color:var(--ink)}
.bmchips{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.bmchip{background:var(--bg);border:1px solid var(--line2);border-radius:8px;padding:7px 11px;font-size:12px;color:var(--ink2)}
.bmchip b{font-family:Fraunces,serif}
