/* Investors page only. Uses the latest Vision design tokens and shared site chrome. */
.inv-page { --inv-edge:rgba(23,50,41,.2); --inv-cream-edge:rgba(251,248,240,.22); }
.inv-page h1,.inv-page h2,.inv-page h3 { text-wrap:balance; }
.inv-page .inv-kicker { font:700 .72rem/1.4 var(--font-head); letter-spacing:.16em; text-transform:uppercase; color:var(--gold-ink); margin:0 0 20px; }
.inv-page .inv-icon { width:32px;height:32px;flex:none; }
.inv-page .inv-section { padding:76px 0; scroll-margin-top:65px; }
.inv-page .inv-section h2 { font:900 clamp(2rem,3.2vw,3.05rem)/1.06 var(--font-head); letter-spacing:-.035em; }
.inv-page h2 em { font-style:normal;color:var(--forest); }
.inv-page .inv-section h3 { font-size:1.2rem;line-height:1.25; }
.inv-page .inv-section p { font-size:.98rem;line-height:1.7; }
.inv-page .inv-text-link { display:inline-flex;align-items:center;gap:12px;font-weight:700;font-size:.87rem;text-decoration:underline;text-underline-offset:5px; }
.inv-page .inv-text-link .inv-icon { width:22px;height:22px; }
.inv-page .inv-tag { display:inline-flex;align-items:center;width:max-content;max-width:100%;font:600 .68rem/1.25 var(--font-body);letter-spacing:.01em;padding:6px 9px;border:1px solid var(--hairline);border-radius:var(--r-s);background:var(--cream-2);color:var(--ink-soft); }
.inv-page .inv-tag--tested { color:var(--step-2-ink);background:var(--wash-2);border-color:var(--edge-2); }
.inv-page .inv-tag--planned { color:var(--gold-ink);background:var(--wash-1);border-color:var(--edge-1); }
.inv-hero { background:var(--forest);color:var(--cream);padding:70px 0 74px;position:relative;overflow:hidden; }
.inv-hero:after { content:"";position:absolute;bottom:0;left:0;width:100%;height:4px;background:var(--gold); }
.inv-hero-grid { display:grid;grid-template-columns:1.12fr 1fr;gap:72px;align-items:center; }
.inv-page .inv-hero .inv-kicker { color:var(--gold); }
.inv-hero h1 { font:900 clamp(2.9rem,4.75vw,4.8rem)/1.015 var(--font-head);letter-spacing:-.045em;color:var(--cream); }
.inv-hero h1 span { color:var(--gold); }
.inv-hero-lead { margin:27px 0 17px;font-size:1.12rem;line-height:1.65; }
.inv-hero-lead strong { font-weight:600; }
.inv-hero-desc { font-size:.94rem;line-height:1.75;max-width:460px;color:var(--mist); }
.inv-hero-actions { display:flex;align-items:flex-start;gap:22px;flex-direction:column;margin-top:28px; }
.inv-hero-actions .btn { gap:24px; }
.inv-page .inv-hero-actions .inv-text-link { color:var(--cream); }
.inv-demand { margin:0;position:relative;padding:27px 0 0; }
.inv-demand-top { display:flex;align-items:center;justify-content:space-between;color:var(--cream);font:700 .75rem var(--font-head);letter-spacing:.12em;text-transform:uppercase;margin-bottom:20px; }
.inv-demand-top .inv-icon { width:30px; }
.inv-plan-sheet { background:var(--cream);color:var(--ink);padding:25px 25px 0;border-radius:3px 3px 12px 3px;box-shadow:9px 9px 0 var(--forest-2);transform:rotate(-1.5deg); }
.inv-sheet-title { display:flex;gap:14px;align-items:center;font:700 1.03rem var(--font-head);border-bottom:2px solid var(--forest);padding-bottom:21px; }
.inv-sheet-title small { display:block;font:400 .7rem var(--font-body);margin-top:6px;color:var(--ink-soft); }
.inv-sheet-mark { width:36px;height:36px;border:2px solid var(--forest);border-radius:50%;display:grid;place-items:center;font:900 1.25rem var(--font-head); }
.inv-sheet-line { display:grid;grid-template-columns:30px 1fr;column-gap:12px;border-bottom:1px solid var(--hairline);padding:18px 0; }
.inv-sheet-line >span { grid-row:1/3;color:var(--gold-ink);font:.72rem var(--font-head);padding-top:4px; }
.inv-sheet-line b { font:700 .98rem var(--font-head); }
.inv-sheet-line small { font-size:.74rem;color:var(--ink-soft);margin-top:5px; }
.inv-sheet-bottom { display:flex;align-items:center;justify-content:space-between;padding:16px 0;font:700 .84rem var(--font-head); }
.inv-sheet-bottom .inv-icon { width:24px; }
.inv-branches { height:36px;display:flex;justify-content:center; }
.inv-branches span { width:25%;border-bottom:1px solid var(--gold);height:18px; }
.inv-branches span:first-child { border-right:1px solid var(--gold); }
.inv-branches span:after { content:"";display:block;height:18px;width:1px;background:var(--gold);position:relative;top:18px; }
.inv-branches span:last-child:after { margin-left:auto; }
.inv-demand-outputs { display:grid;grid-template-columns:1fr 1fr;gap:16px; }
.inv-demand-outputs >div { border:1px solid var(--inv-cream-edge);background:var(--forest-2);padding:18px;display:grid;grid-template-columns:30px 1fr;gap:13px 10px;align-items:center; }
.inv-demand-outputs b { font:700 .95rem var(--font-head);color:var(--cream); }
.inv-demand-outputs .inv-icon { width:26px;height:26px;color:var(--gold); }
.inv-demand-outputs .inv-tag { grid-column:1/3; }
.inv-demand figcaption { font-size:.69rem;color:var(--mist);margin-top:16px;line-height:1.6; }
.inv-nav { position:sticky;top:var(--header-h);z-index:20;background:var(--cream);border-bottom:1px solid var(--hairline); }
.inv-nav .container { display:flex;align-items:center;gap:29px;min-height:60px;overflow-x:auto;scrollbar-width:thin; }
.inv-nav-label { font:700 .67rem var(--font-head);text-transform:uppercase;letter-spacing:.12em;margin-right:auto;white-space:nowrap;color:var(--ink-soft); }
.inv-nav a { font:700 .8rem var(--font-head);text-decoration:none;white-space:nowrap;padding:20px 0 17px;border-bottom:3px solid transparent; }
.inv-nav a:hover,.inv-nav a[aria-current="location"] { border-bottom-color:var(--gold);color:var(--forest); }
.inv-revenue-intro { display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:36px; }
.inv-revenue-intro >p { color:var(--ink-soft);margin:0;max-width:480px; }
.inv-revenue-grid { display:grid;grid-template-columns:1.3fr 1fr;gap:52px;align-items:start; }
.inv-stream { display:grid;grid-template-columns:44px 1fr;gap:16px;padding:26px 0;border-top:1px solid var(--inv-edge); }
.inv-stream:last-child { border-bottom:1px solid var(--inv-edge); }
.inv-stream-icon { color:var(--forest);padding-top:4px; }
.inv-stream-head { display:flex;align-items:flex-start;gap:10px;flex-direction:column;margin-bottom:13px; }
.inv-page .inv-stream h3 { font-size:1.35rem; }
.inv-page .inv-stream p { color:var(--ink-soft);font-size:.9rem; }
.inv-example { background:var(--cream-2);border:1px solid var(--hairline);padding:27px 29px 22px;position:relative; }
.inv-example-top { display:flex;justify-content:space-between;align-items:flex-start; }
.inv-example-symbol { font:300 2rem/.6 var(--font-head);color:var(--gold-ink); }
.inv-page .inv-example h3 { font-size:1.85rem;letter-spacing:-.03em;margin-bottom:24px; }
.inv-control { margin:18px 0; }
.inv-control label { display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:.73rem;font-weight:600; }
.inv-control output { font:700 1rem var(--font-head);color:var(--forest);white-space:nowrap; }
.inv-control input { width:100%;margin:15px 0 0;accent-color:var(--forest);cursor:pointer;height:22px; }
.inv-example-result { margin-top:23px;border-top:1px solid var(--inv-edge);padding:20px 0 15px; }
.inv-example-result>span { display:block;font-size:.77rem;color:var(--ink-soft); }
.inv-example-result strong { display:block;font:900 clamp(2.8rem,4vw,4rem)/1.15 var(--font-head);color:var(--forest);letter-spacing:-.05em; }
.inv-page .inv-example-result p { margin:4px 0 0;font-size:.76rem; }
.inv-page .inv-fine { font-size:.72rem;line-height:1.6;color:var(--ink-soft); }
.inv-reset { border:0;background:transparent;padding:5px 0;font-size:.74rem;text-decoration:underline;text-underline-offset:4px;cursor:pointer; }
.inv-page .inv-example .evidence-banner { display:block;background:transparent;border:0;padding:0;margin:0 0 14px; }
.inv-details { border-bottom:1px solid var(--inv-edge);margin-top:28px; }
.inv-details summary,.inv-source-note summary { display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;padding:18px 0;font-size:.9rem;font-weight:700;list-style:none; }
.inv-details summary::-webkit-details-marker,.inv-source-note summary::-webkit-details-marker,.inv-mini-details summary::-webkit-details-marker { display:none; }
.inv-details summary>span,.inv-source-note summary>span,.inv-mini-details summary>span { font-size:1.4rem;font-weight:400;transition:transform .2s; }
.inv-details[open] summary>span,.inv-source-note details[open] summary>span,.inv-mini-details[open] summary>span { transform:rotate(45deg); }
.inv-detail-body { padding:0 0 25px; }
.inv-table-wrap { overflow-x:auto;margin:20px 0; }
.inv-table-wrap table { width:100%;border-collapse:collapse;font-size:.8rem; }
.inv-table-wrap caption { text-align:left;font-weight:700;margin-bottom:10px; }
.inv-table-wrap th,.inv-table-wrap td { text-align:left;vertical-align:top;padding:14px 12px;border-bottom:1px solid var(--hairline); }
.inv-table-wrap thead { background:var(--cream-2); }
.inv-neutral { background:var(--forest);color:var(--cream); }
.inv-neutral-grid { display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center; }
.inv-page .inv-neutral .inv-kicker { color:var(--gold); }
.inv-page .inv-neutral h2,.inv-page .inv-neutral h3 { color:var(--cream); }
.inv-page .inv-neutral h2 em { color:var(--gold); }
.inv-neutral h2 { margin-bottom:26px; }
.inv-neutral p { color:var(--mist); }
.inv-neutral .inv-text-link { color:var(--cream);margin-top:8px; }
.inv-firewall { border:1px solid var(--inv-cream-edge);padding:30px;background:var(--forest-2); }
.inv-firewall-layer { display:grid;grid-template-columns:26px 1fr;gap:16px; }
.inv-layer-number { font:700 .73rem var(--font-head);width:25px;height:25px;border:1px solid var(--inv-cream-edge);border-radius:50%;display:grid;place-items:center; }
.inv-page .inv-firewall-layer h3 { font-size:1.05rem; }
.inv-page .inv-firewall-layer p { font-size:.75rem;margin:10px 0 0; }
.inv-rule-chips { display:flex;gap:6px;flex-wrap:wrap;margin-top:16px; }
.inv-rule-chips span { border:1px solid var(--inv-cream-edge);padding:4px 8px;font-size:.63rem; }
.inv-firewall-rule { display:flex;align-items:center;gap:16px;margin:28px 0;padding:19px 0;border-top:1px dashed var(--gold);border-bottom:1px dashed var(--gold);color:var(--gold);font-size:.77rem;font-weight:600; }
.inv-page .inv-firewall-note { font-size:.69rem;margin:24px 0 0;color:var(--mist); }
.inv-section-head { max-width:760px; }
.inv-evidence-date { color:var(--ink-soft);margin-top:18px; }
.inv-page .inv-evidence-date { font-size:.75rem; }
.inv-proof-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:28px;border:1px solid var(--inv-edge); }
.inv-proof-grid>article { padding:27px 26px 23px; }
.inv-proof-grid>article+article { border-left:1px solid var(--inv-edge); }
.inv-proof-top { display:flex;align-items:center;justify-content:space-between;gap:10px; }
.inv-proof-top>span:last-child { font:.72rem var(--font-head);color:var(--ink-soft); }
.inv-proof-number { display:block;font:900 clamp(3rem,5vw,4.65rem)/1 var(--font-head);color:var(--forest);letter-spacing:-.05em;margin:30px 0 15px; }
.inv-page .inv-proof-grid h3 { font-size:1.08rem;margin-bottom:14px; }
.inv-page .inv-proof-grid p { font-size:.86rem;color:var(--ink-soft); }
.inv-proof-next { background:var(--cream-2); }
.inv-proof-next .inv-text-link { font-size:.8rem; }
.inv-mini-details { border-top:1px solid var(--hairline);margin-top:23px; }
.inv-mini-details summary { cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:12px 0 0;font-size:.78rem;font-weight:600;list-style:none; }
.inv-page .inv-mini-details p { font-size:.77rem;margin-top:14px; }
.inv-evidence-link { margin-top:22px; }
.inv-growth { background:var(--cream-2); }
.inv-growth-grid { display:grid;grid-template-columns:1.05fr 1fr;gap:90px;align-items:center; }
.inv-growth h2 { margin-bottom:25px; }
.inv-growth p { color:var(--ink-soft); }
.inv-growth-list { list-style:none; }
.inv-growth-list li { display:grid;grid-template-columns:42px 1fr;gap:20px;padding:27px 0;border-bottom:1px solid var(--inv-edge); }
.inv-growth-list li:first-child { border-top:1px solid var(--inv-edge); }
.inv-growth-list li>span { color:var(--gold-ink);font:700 .9rem var(--font-head);padding-top:3px; }
.inv-page .inv-growth-list p { font-size:.87rem;margin:7px 0 0; }
.inv-page .inv-founder { padding:44px 0; }
.inv-founder-grid { display:grid;grid-template-columns:1.12fr 1fr;gap:60px;align-items:center; }
.inv-founder-person { display:flex;gap:22px;align-items:center; }
.inv-founder-person img { width:95px;height:110px;object-fit:cover;object-position:50% 20%;border-radius:4px; }
.inv-page .inv-founder .inv-kicker { font-size:.63rem;margin-bottom:10px; }
.inv-page .inv-founder h2 { font-size:1.55rem;letter-spacing:-.02em; }
.inv-page .inv-founder p { font-size:.8rem;color:var(--ink-soft);margin:10px 0 0; }
.inv-founder .inv-text-link { margin-top:10px; }
.inv-next { background:var(--forest);color:var(--cream); }
.inv-next-grid { display:grid;grid-template-columns:1.1fr 1fr;gap:85px;align-items:start; }
.inv-page .inv-next .inv-kicker { color:var(--gold); }
.inv-page .inv-next h2,.inv-page .inv-next h3 { color:var(--cream); }
.inv-next h2 { margin-bottom:24px; }
.inv-next p { color:var(--mist); }
.inv-next .btn { margin-top:16px;gap:25px; }
.inv-contact { display:block;width:fit-content;color:var(--cream);font-size:.8rem;margin-top:19px;text-underline-offset:4px; }
.inv-milestones { list-style:none; }
.inv-milestones li { display:grid;grid-template-columns:25px 1fr;gap:20px;border-top:1px solid var(--inv-cream-edge);padding:23px 0; }
.inv-milestones li>span { font:700 .77rem var(--font-head);color:var(--gold);padding-top:3px; }
.inv-page .inv-milestones h3 { font-size:1.05rem; }
.inv-page .inv-milestones p { font-size:.85rem;margin:8px 0 0; }
.inv-source-note { padding-top:12px;padding-bottom:12px; }
.inv-source-note summary { font-size:.76rem;color:var(--ink-soft); }
.inv-source-note p { font-size:.76rem;line-height:1.7;max-width:940px; }
.inv-page .preview-badge { display:none; }
@media(min-width:1440px) { .inv-hero-grid { gap:100px; } }
@media(max-width:1023px) {
  .inv-hero-grid { gap:35px;grid-template-columns:1.05fr 1fr; }
  .inv-hero { padding:52px 0 56px; }
  .inv-hero h1 { font-size:clamp(2.65rem,5.5vw,3.9rem); }
  .inv-sheet-title { font-size:.88rem; }
  .inv-plan-sheet { padding:20px 20px 0; }
  .inv-demand-outputs { gap:10px; }
  .inv-demand-outputs>div { padding:13px;gap:10px; }
  .inv-demand-outputs b { font-size:.85rem; }
  .inv-revenue-grid { gap:28px;grid-template-columns:1.15fr 1fr; }
  .inv-revenue-intro { gap:40px; }
  .inv-example { padding:24px 20px; }
  .inv-neutral-grid,.inv-growth-grid,.inv-next-grid { gap:40px; }
  .inv-firewall { padding:24px; }
  .inv-proof-grid>article { padding:22px 18px; }
  .inv-proof-top { flex-wrap:wrap; }
  .inv-founder-grid { gap:35px; }
  .inv-page .inv-section { padding:58px 0; }
}
@media(max-width:767px) {
  .inv-hero-grid { grid-template-columns:1fr;gap:35px; }
  .inv-hero { padding:42px 0 35px; }
  .inv-hero h1 { font-size:clamp(3rem,10vw,4.4rem); }
  .inv-hero-lead { font-size:1.02rem;margin-top:24px; }
  .inv-hero-desc { max-width:none;font-size:.9rem; }
  .inv-hero-actions { gap:22px; }
  .inv-demand { max-width:500px;width:100%;margin:auto;padding-top:8px; }
  .inv-demand-top { font-size:.65rem; }
  .inv-plan-sheet { transform:rotate(-.8deg);margin:0 4px; }
  .inv-sheet-line { padding:14px 0; }
  .inv-sheet-title { font-size:1rem; }
  .inv-demand-outputs>div { padding:17px; }
  .inv-demand-outputs b { font-size:.94rem; }
  .inv-nav .container { gap:22px;min-height:53px; }
  .inv-nav-label { display:none; }
  .inv-nav a { font-size:.76rem;padding:17px 0 14px; }
  .inv-page .inv-section { padding:44px 0; }
  .inv-page .inv-section h2 { font-size:clamp(1.9rem,7.7vw,2.7rem); }
  .inv-page .inv-kicker { font-size:.65rem;margin-bottom:16px; }
  .inv-revenue-intro,.inv-revenue-grid,.inv-neutral-grid,.inv-growth-grid,.inv-founder-grid,.inv-next-grid { grid-template-columns:1fr;gap:27px; }
  .inv-revenue-intro { margin-bottom:26px; }
  .inv-revenue-intro>p { max-width:none; }
  .inv-stream { padding:23px 0;grid-template-columns:32px 1fr;gap:13px; }
  .inv-stream .inv-icon { width:27px; }
  .inv-page .inv-stream h3 { font-size:1.2rem; }
  .inv-example { padding:24px; }
  .inv-example-result strong { font-size:3.5rem; }
  .inv-control label { font-size:.73rem; }
  .inv-details summary { font-size:.83rem; }
  .inv-table-wrap { overflow:visible; }
  .inv-table-wrap table,.inv-table-wrap tbody,.inv-table-wrap tr,.inv-table-wrap th,.inv-table-wrap td { display:block; }
  .inv-table-wrap thead { display:none; }
  .inv-table-wrap td { padding:5px 0;border:0; }
  .inv-table-wrap tbody th { padding:15px 0 5px;border:0; }
  .inv-table-wrap tr { padding-bottom:15px;border-bottom:1px solid var(--hairline); }
  .inv-firewall { padding:22px; }
  .inv-proof-grid { grid-template-columns:1fr; }
  .inv-proof-grid>article { padding:25px; }
  .inv-proof-grid>article+article { border-left:0;border-top:1px solid var(--inv-edge); }
  .inv-proof-number { margin:23px 0 12px;font-size:4.3rem; }
  .inv-growth-list li { padding:22px 0; }
  .inv-founder-person img { width:78px;height:92px; }
  .inv-founder-person { gap:17px; }
  .inv-page .inv-founder h2 { font-size:1.45rem; }
  .inv-founder-grid { gap:10px; }
  .inv-page .inv-founder { padding:32px 0; }
  .inv-next .btn { width:100%;justify-content:center; }
  .inv-contact { margin-bottom:9px; }
}
@media(prefers-reduced-motion:reduce) { .inv-page *, .inv-page *:before, .inv-page *:after { scroll-behavior:auto!important;transition:none!important; } }
@media print { .inv-nav,.inv-reset,.site-header,.site-footer,.inv-hero-actions,.inv-next .btn,.inv-contact { display:none!important; } .inv-page .inv-section { padding:25px 0; } .inv-proof-grid>article,.inv-example,.inv-firewall { break-inside:avoid; } }

/* Round 9: a plain-language system overview, followed by one complete revenue model. */
.inv-hero { padding:42px 0 48px; }
.inv-hero-heading { text-align:center; max-width:980px; margin:0 auto 44px; }
.inv-page .inv-hero-heading .inv-kicker { margin-bottom:16px; }
.inv-hero-heading h1 { font-size:clamp(38px,5vw,68px); line-height:1.05; margin:0; }
.inv-hero-heading>p:last-child { font-size:clamp(17px,1.6vw,22px); line-height:1.5; margin:22px auto 0; max-width:72ch; color:var(--mist); }
.inv-hero-grid { grid-template-columns:minmax(0,.94fr) minmax(0,1.16fr); gap:56px; align-items:start; }
.inv-hero-copy { padding-top:7px; }
.inv-hero-copy h2 { color:var(--cream); font:900 clamp(28px,3vw,42px)/1.08 var(--font-head); letter-spacing:-.025em; margin:0 0 20px; }
.inv-hero-desc { max-width:48ch; font-size:16px; line-height:1.6; margin:0 0 24px; }
.inv-hero-steps { list-style:none; margin:0; padding:0; }
.inv-hero-steps li { display:grid; grid-template-columns:32px minmax(0,1fr); gap:14px; padding:13px 0; border-top:1px solid var(--inv-cream-edge); }
.inv-hero-steps li>span { color:var(--gold); font-weight:700; font-size:16px; padding-top:1px; }
.inv-hero-steps strong { font-size:16px; }
.inv-hero-steps p { color:var(--mist); font-size:14px; line-height:1.5; margin:4px 0 0; }
.inv-hero-actions { gap:16px; margin-top:24px; }
.inv-system { margin:0; min-width:0; }
.inv-system-label { font:700 12px/1.4 var(--font-head); letter-spacing:.12em; text-transform:uppercase; margin:0 0 14px; }
.inv-system-sheet { color:var(--ink); background:var(--cream); padding:24px 22px 16px; border:1px solid var(--mist); border-radius:8px; box-shadow:0 0 0 3px var(--inv-cream-edge); }
.inv-system-inputs,.inv-system-outputs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; text-align:center; }
.inv-system-inputs>div,.inv-system-outputs>div { display:flex; flex-direction:column; align-items:center; gap:7px; padding:0 7px; }
.inv-system-inputs>div+div,.inv-system-outputs>div+div { border-left:1px solid var(--hairline); }
.inv-system-inputs strong,.inv-system-outputs strong { font-size:16px; line-height:1.2; }
.inv-system-inputs span,.inv-system-outputs span { color:var(--ink-soft); font-size:12px; line-height:1.45; }
.inv-system-outputs .inv-icon { color:var(--gold-ink); }
.inv-system-connector { height:38px; position:relative; width:69%; margin:0 auto; }
.inv-system-connector span { position:absolute; top:8px; height:10px; width:100%; border:1px solid var(--sage); border-top:0; border-radius:0 0 5px 5px; }
.inv-system-connector b { position:absolute; left:50%; top:13px; transform:translateX(-50%); font-size:23px; line-height:1; color:var(--sage); }
.inv-system-core { text-align:center; background:var(--forest); color:var(--cream); border-radius:6px; padding:17px 12px 0; overflow:hidden; }
.inv-system-core>strong { display:block; font:800 25px/1.2 var(--font-head); }
.inv-system-core>span { display:block; font-size:17px; margin-top:4px; }
.inv-system-core p { color:var(--forest); background:var(--cream-2); font-size:12px; line-height:1.5; margin:15px -12px 0; padding:9px 8px; }
.inv-system-connector--out { height:33px; transform:rotate(180deg); }
.inv-system-connector--out b { transform:translateX(-50%) rotate(180deg); top:3px; }
.inv-system-loop { border-top:1px solid var(--hairline); padding-top:12px; margin:17px 0 0; font-size:12px; line-height:1.4; color:var(--ink-soft); text-align:center; }
.inv-system .inv-demand-outputs { margin-top:16px; gap:12px; }
.inv-system .inv-demand-outputs>div { padding:14px; gap:9px; }
.inv-system .inv-demand-outputs b { font-size:14px; }
.inv-system figcaption { margin-top:12px; color:var(--mist); font-size:12px; line-height:1.5; }
.inv-revenue-grid { display:block; }
.inv-streams { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; margin-bottom:36px; }
.inv-stream { display:block; padding:18px 0 0; }
.inv-stream:last-child { border-bottom:0; }
.inv-stream-icon { display:block; margin-bottom:12px; }
.inv-page .inv-stream h3 { font-size:19px; margin:0 0 9px; }
.inv-page .inv-stream p { font-size:14px; line-height:1.6; margin:0; }
.inv-model { padding:30px; }
.inv-model-heading { display:flex; gap:20px; align-items:flex-start; justify-content:space-between; }
.inv-page .inv-model .inv-kicker { margin-bottom:8px; }
.inv-page .inv-model h3 { font-size:32px; margin:0; }
.inv-page .inv-model-intro { font-size:16px; margin:12px 0 26px; }
.inv-model .inv-reset { flex-shrink:0; font-size:13px; min-height:44px; }
.inv-model-grid { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr); gap:32px; align-items:start; }
.inv-model-inputs { min-width:0; }
.inv-model fieldset { min-width:0; padding:18px 0 22px; margin:0; border:0; border-top:1px solid var(--hairline); }
.inv-model legend { padding:0 12px 0 0; color:var(--forest); font:700 19px/1.3 var(--font-head); }
.inv-page .inv-model .inv-input-help { font-size:13px; color:var(--ink-soft); line-height:1.5; margin:0 0 16px; }
.inv-input-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; align-items:start; }
.inv-number-control { min-width:0; }
.inv-number-control label { display:block; font-size:13px; font-weight:600; line-height:1.4; margin-bottom:7px; min-height:36px; }
.inv-number-control input { display:block; width:100%; min-width:0; height:46px; font:600 17px/1.2 var(--font-body); border:1px solid var(--sage); border-radius:4px; color:var(--forest); background:var(--white); padding:8px 10px; }
.inv-input-money { position:relative; }
.inv-input-money>span { position:absolute; top:11px; left:12px; font-size:17px; color:var(--ink-soft); }
.inv-input-money input { padding-left:28px; }
.inv-number-control .inv-input-help { margin-top:8px!important; }
.inv-model .inv-control { margin:20px 0 12px; }
.inv-model .inv-control label { font-size:13px; }
.inv-model .inv-control input { margin-top:10px; }
.inv-model input:focus-visible { outline:2px solid var(--forest); outline-offset:3px; }
.inv-model input[aria-invalid="true"] { border:2px solid #a23423; }
.inv-page .inv-model .inv-rate-note { font-size:12px; line-height:1.6; margin:0; color:var(--ink-soft); }
.inv-model .inv-input-pair + .inv-input-help { margin-top:12px; }
.inv-optional { border-top:1px solid var(--hairline); border-bottom:1px solid var(--hairline); }
.inv-optional>summary { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:16px 0; color:var(--forest); font-size:16px; font-weight:700; cursor:pointer; list-style:none; }
.inv-optional>summary::-webkit-details-marker { display:none; }
.inv-optional>summary>span { font-size:12px; font-weight:400; }
.inv-optional>div { padding:4px 0 16px; }
.inv-optional .inv-input-pair { margin-bottom:18px; }
.inv-model-results { background:var(--white); border-top:3px solid var(--gold); padding:24px; min-width:0; }
.inv-model-results h4 { color:var(--forest); font:600 17px/1.3 var(--font-head); margin:0; }
.inv-model-total { display:block; color:var(--forest); font:900 clamp(34px,4vw,52px)/1.15 var(--font-head); letter-spacing:-.04em; margin-top:8px; overflow-wrap:anywhere; }
.inv-page .inv-model .inv-result-help { color:var(--ink-soft); font-size:12px; margin:6px 0 20px; }
.inv-breakdown { margin:0; }
.inv-breakdown>div { display:grid; grid-template-columns:minmax(0,1fr) auto; column-gap:8px; padding:13px 0; border-top:1px solid var(--hairline); }
.inv-breakdown dt { font-size:14px; color:var(--forest); font-weight:600; }
.inv-breakdown dd { margin:0; text-align:right; font-size:16px; font-weight:700; color:var(--forest); }
.inv-page .inv-model .inv-breakdown p { grid-column:1/-1; margin:4px 0 0; font-size:12px; color:var(--ink-soft); line-height:1.45; }
.inv-ongoing-result { border-top:2px solid var(--forest); padding-top:16px; margin-top:6px; }
.inv-ongoing-result>span { color:var(--forest); font-size:13px; }
.inv-ongoing-result>strong { display:block; font:800 28px/1.3 var(--font-head); color:var(--forest); margin-top:4px; overflow-wrap:anywhere; }
.inv-page .inv-model .inv-ongoing-result p { font-size:12px; line-height:1.5; margin:6px 0 0; color:var(--ink-soft); }
.inv-page .inv-model .inv-missing-fee { font-size:12px; line-height:1.5; margin:18px 0 0; color:var(--gold-ink); }
.inv-page .inv-model .evidence-banner { margin:24px 0 0; padding-top:18px; border-top:1px solid var(--hairline); max-width:none; }
.inv-page .inv-model-error { font-size:13px; color:#a23423; }
.inv-model [hidden] { display:none!important; }
@media(max-width:1023px) { .inv-hero-grid { gap:28px; } .inv-hero-heading { margin-bottom:36px; } .inv-system-sheet { padding:18px 14px 14px; } .inv-model { padding:24px; } .inv-model-grid { gap:24px; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); } .inv-model-results { padding:20px; } }
@media(max-width:859px) { .inv-model-grid { grid-template-columns:1fr; } .inv-streams { grid-template-columns:repeat(2,minmax(0,1fr)); } .inv-model-results { margin-top:0; } }
@media(max-width:767px) { .inv-hero { padding:36px 0; } .inv-hero-grid { grid-template-columns:1fr; gap:36px; } .inv-hero-heading { text-align:left; margin-bottom:32px; } .inv-hero-heading h1 { font-size:clamp(38px,9vw,56px); } .inv-hero-heading>p:last-child { font-size:17px; } .inv-hero-copy h2 { font-size:30px; } .inv-hero-desc { max-width:none; } .inv-system { width:100%; max-width:560px; margin:auto; } .inv-hero-actions { flex-direction:row; flex-wrap:wrap; align-items:center; } .inv-system-inputs>div,.inv-system-outputs>div { padding:0 3px; } .inv-system-inputs span,.inv-system-outputs span { font-size:11px; } .inv-system .inv-demand-outputs>div { padding:12px; } .inv-model { padding:22px 18px; } .inv-model-heading { display:block; } .inv-model-heading .inv-reset { margin-top:6px; } .inv-page .inv-model h3 { font-size:29px; } }
@media(max-width:459px) { .inv-streams { gap:18px; } .inv-page .inv-stream h3 { font-size:17px; } .inv-page .inv-stream p { font-size:13px; } .inv-model .inv-input-pair { grid-template-columns:1fr; gap:14px; } .inv-number-control label { min-height:0; } .inv-model-results { padding:20px 16px; } .inv-system .inv-demand-outputs b { font-size:13px; } .inv-system .inv-demand-outputs .inv-tag { font-size:10px; } .inv-optional>summary { align-items:flex-start; } }
.inv-page .inv-model .inv-breakdown .inv-formula { grid-column:1/-1; margin:4px 0 0; font-size:12px; font-weight:400; text-align:left; color:var(--ink-soft); line-height:1.45; }
.inv-page .inv-model .evidence-banner { font-size:13px; line-height:1.6; }
