# Killer Hub: Initiative Framework & Visual Language

**Last updated:** 2026-05-05
**Purpose:** Complete reference for building Killer Hub initiative pages — structure, reasoning framework, and visual design system.

---

## Initiative Framework (5-Section Structure)

### Purpose
Document current initiatives being actively worked on. Use this for execution, NOT research or future planning (use MRP-5 for pipeline initiatives).

**Strategic context:** Killer Hub is a fluid, living workspace — not a static facts database. Initiatives evolve through quarterly cycles (Q2/Q3/Q4 2026). Each initiative has metadata (`.meta.json`) defining quarter, status (active/research), type (strategic/technical), and sentiment (bull/bear). Quarters are organizational containers, not rigid deadlines.

### Required Sections

1. **Thesis** (2 parts mandatory)
   - **Part 1:** What problem we solve for the user
   - **Part 2:** What Marinade gets from this (competitive advantage, network effects, strategic value)
   - Both parts must be measurable via Impact metrics
   - State the competitive/network effect if present (e.g., "validators compete to share more MEV → Marinade infers validator behavior → transparency drives more competition")

2. **Impact Estimates**
   - Lead with tables showing key metrics (rows = metric name, columns = value + context)
   - Inline narrative is for "why it matters", not "what the numbers are"
   - Present numbers in tables, not inline prose
   - Include P&L/revenue projections where applicable

3. **Positioning & GTM** (Go-To-Market)
   - Positioning: How we frame the product to the market
   - Distribution: Where and how users discover it
   - First 10 customers: Specific outreach strategy with messaging
   - Success metrics: Measurable milestones (30/90/180 days)

4. **Risks**
   - Adoption risk: Why target users might not want this
   - Marketing failure modes: Why GTM strategy might not work
   - Competitive moat: What prevents competitors from replicating (place at END of Risks section)

5. **Mechanism & Tech Implementation**
   - Market dynamics: How the system works economically
   - Examples: Concrete scenarios showing the mechanism in action
   - What exists: Current infrastructure/contracts
   - What has to change: New development required
   - Where to put it: Technical implementation details

### Structure Standards

- **Hub navigation:** Top bar with Q2 2026 | Q3 2026 | Q4 2026 (quarterly indexes)
- **Footer links:** Strategic Arms framework + krons.cx + Arizuko + Atlas About
- **Initiative pages:** Individual HTML files (e.g., `psr-service.html`, `virtual-validator.html`)
- **Index page tiles:** Top-right metric MUST be TVL (Total Value Locked). Format: `<value> SOL` with context in label (e.g., "TVL (10%)" or "TVL (4% jr)"). If initiative has no direct TVL impact, use "N/A" with label "TVL impact". NEVER use revenue, P&L, or other metrics in the top-right tile position.
- **NO collapsibles:** Never use `<details>` or `<summary>` — create subpages for detailed content
- **Subpage linking:** Link to separate pages for deep dives (e.g., `psr-iq.html` from `psr-service.html`)
- **Voice:** Use "Marinade" instead of "we" — third-person perspective, not first-person plural

### Index Page "Path to 30M SOL" Table Consistency

**CRITICAL:** The index.html "Path to 30M SOL" table MUST match individual initiative page hero metrics and Impact section P&L callouts. When updating any page, verify:

1. **TVL column** matches initiative page hero metrics top-right value
2. **P&L column** matches initiative page Impact section P&L callout (the big teal number)
3. **Quarter column** matches initiative page badges
4. **Total row** = sum of all individual initiatives

**Example verification (May 2026):**
- PSR-as-a-Service: index shows ~5M SOL / +481 SOL/yr → page shows "15.2M SOL TVL at 10% pen." hero + "481 SOL/yr P&L" callout ✓
- Junior Yield: index shows 6M SOL / +1,920 SOL/yr → page shows "6M SOL (240k junior)" hero + "1,920 SOL/yr" P&L callout ✓
- Validators as Marketers: index shows ~1.5M SOL / +450 SOL/yr → page shows ??? MUST FIX

**When numbers don't match:** Update the index table OR update the page metrics. Never leave inconsistencies.

---

## Index Page Standards

### Page Structure (Top to Bottom)

**Order of elements:**

1. **Hero Section**
   - Title: "Dominate Solana Staking" (h1, 36px)
   - Subtitle: "Marinade's path to becoming the category killer" (16px, #666)

2. **Executive Summary (Two-Box Layout)**
   - "What Marinade Becomes" (left) + "How to Accomplish It" (right)
   - Side-by-side boxes (1fr 1fr grid, 24px gap)
   - See "Executive Summary Two-Box Layout" section for full pattern

3. **Growth Targets + Core Thesis (Two-Box Layout)**
   - "2026 Growth Targets" (left table) + "Core Thesis" (right narrative)
   - Side-by-side boxes (1fr 1fr grid, 24px gap)
   - See "Side-by-Side Content Boxes" section for full pattern

4. **Path to 30M SOL Table**
   - Standard 2-column data table
   - Columns: Initiative | TVL Impact | P&L Impact | Quarter
   - Shows incremental TVL (e.g., "+3M SOL" not "9M SOL total")
   - Total row at bottom with aggregate metrics

5. **Initiative Cards Grid**
   - Standard card grid pattern (described below)
   - Quarterly badges (Q2/Q3/Q4) + status badges (ACTIVE/RESEARCH)

**Key principle:** Maximize expressiveness, minimize clutter. Two-box layouts create visual balance between data (left) and narrative (right).

### Initiative Cards

**Card header structure:**
```html
<div class="card-header">
  <div style="display: flex; gap: 8px; align-items: center; flex-wrap: wrap;">
    <!-- P&L badge (teal) -->
    <span style="background: rgba(48, 141, 138, 0.1); color: #308D8A; font-size: 10px; font-weight: 600; padding: 3px 6px; border-radius: 3px;">+481 SOL/yr</span>
    <!-- Quarter badge (teal solid) -->
    <span style="background: #308D8A; color: white; font-size: 10px; font-weight: 600; padding: 3px 6px; border-radius: 3px;">Q3</span>
    <!-- Status badge (teal for ACTIVE, gray for RESEARCH) -->
    <span style="background: rgba(48, 141, 138, 0.1); color: #308D8A; font-size: 10px; font-weight: 600; padding: 3px 6px; border-radius: 3px;">ACTIVE</span>
  </div>
  <div class="card-revenue">
    <div class="revenue-value">~5M SOL</div>
    <div class="revenue-label">TVL (est)</div>
  </div>
</div>
```

**Badge styling (standardized pattern for all 3 badge types):**
- **Font size:** `10px` (consistent across all badges)
- **Font weight:** `600`
- **Padding:** `3px 6px` (consistent, minimal)
- **Border radius:** `3px`
- **Gap:** `8px` between badges
- **Flex-wrap:** `wrap` (prevents overflow on narrow screens)

**Badge color variants:**
1. **P&L badge:** Teal background `rgba(48, 141, 138, 0.1)`, teal text `#308D8A`
2. **Quarter badge:** Solid teal background `#308D8A`, white text
3. **Status badge (ACTIVE):** Teal background `rgba(48, 141, 138, 0.1)`, teal text `#308D8A`
4. **Status badge (RESEARCH):** Gray background `rgba(102, 102, 102, 0.1)`, gray text `#666`

**TVL metric (top-right corner):** Always TVL or "N/A"

### Interactive Features

**Portfolio toggle:** Button switches between card grid and comparison table (Initiative | TVL | P&L | Quarter | Status)

**Quarterly filter:** All | Q2 | Q3 buttons. Active = teal `#308D8A`, inactive = gray `#fafafa`

### Core Thesis

Two parts:
1. **Build for the bulk market** — rapid capital flow into high-APY opportunities
2. **Validators → APY → TVL → Profits** — flywheel + stake pool layer infrastructure

---

## Core Visual Principle

**Tables for data, prose for narrative.** If it has >3 numbers, use a table. Keep explanatory text separate from metric presentation.

---

## Color Palette (5 colors only)

| Color | Hex | Usage | Frequency |
|-------|-----|-------|-----------|
| **Marinade Teal** | `#308D8A` | Logo, primary accents, ALL badges, metric values, links, emphasis | High |
| **Error Red** | `#dc2626` | Negative indicators, warnings, graph decline trends | Low |
| **Text Gray** | `#666` | Secondary text, table labels, body copy | Medium |
| **Border Gray** | `#e5e5e5` | Table row borders, card borders, separators | High |

**Teal is the single primary color (May 2026 update):** `#308D8A` unified across ALL uses — metrics, badges (P&L, quarter, status), accents, links. NO green (`#059669`) — fully replaced by teal.

**CUT:** `#059669` (green), `#778A96`, `#151A1A`, `#1a1a1a`, `#333`, `#CCEFED`, `white`, `#ccc`

---

## Two-Box Grid Layout Pattern

**NEW (May 2026):** Executive summary and key metrics use side-by-side gray boxes for visual prominence and scannability.

**When to use:**
- Executive summary sections ("What Marinade Becomes" / "How to Accomplish It")
- Hero metrics paired with narrative context (Growth Targets + Core Thesis)
- Two conceptually related but distinct pieces of information that deserve equal visual weight

**Pattern:**

```html
<div style="display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin: 32px 0;">
  <div style="background: #fafafa; border: 1px solid #e5e5e5; border-radius: 6px; padding: 20px;">
    <h2 style="font-size: 18px; margin-bottom: 16px;">Left Box Title</h2>
    <ol style="font-size: 14px; line-height: 1.8; margin: 0 0 0 1.2rem;">
      <li>First item</li>
      <li>Second item</li>
    </ol>
  </div>

  <div style="background: #fafafa; border: 1px solid #e5e5e5; border-radius: 6px; padding: 20px;">
    <h2 style="font-size: 18px; margin-bottom: 16px;">Right Box Title</h2>
    <div style="font-size: 14px; line-height: 1.6;">
      <p>Content here</p>
    </div>
  </div>
</div>
```

**Structure:**
- Grid: `1fr 1fr` (equal width columns), `24px` gap
- Box background: `#fafafa` (light gray)
- Border: `1px solid #e5e5e5`
- Border radius: `6px`
- Padding: `20px`
- Margin: `32px 0` (vertical spacing from surrounding content)
- H2 inside box: `18px` font size, `16px` margin-bottom
- Content: `14px` font, `1.6-1.8` line-height

**Example use cases:**
1. **Executive summary (index.html lines 394-415):**
   - Left: "What Marinade Becomes" (3-4 strategic outcomes)
   - Right: "How to Accomplish It" (6 tactical actions)

2. **Metrics + Thesis (index.html lines 428-460):**
   - Left: "2026 Growth Targets" (callout table with TVL/P&L metrics)
   - Right: "Core Thesis" (2-part narrative explanation)

**Rules:**
- NEVER use for single-item content (use standard callout box instead)
- Content in each box should be roughly equal in length/density
- Both boxes must share same visual styling (background, border, padding)
- On mobile (<768px), grid collapses to single column automatically via CSS `@media` query
- Maximum expressiveness, minimum clutter — two boxes side-by-side, no more

---

## Typography

### Hierarchy (3 levels)

```
h1: hub-hero-title        (atlas.css class, don't override)
h2: Card section headers  (atlas.css class, don't override)
p:  Body text            (atlas.css class, don't override)
```

### Table Text (inline styles required)

```css
/* Header row */
font-weight: 600;
font-size: inherit;      /* no explicit size */

/* Metric values (right-aligned) */
font-weight: 600;
text-align: right;

/* Context/notes (left-aligned) */
font-weight: normal;
text-align: left;
```

**Font weights used:** 600 (semibold, primary), 700 (bold, cut—use 600), 500 (medium, cut—use 600 or normal)

**REDUCE TO:** 600 for emphasis, normal (400) for body. Cut 700 and 500.

---

## Table Styling (Standard Format)

### PREFERRED: Data Table (NO header row, clean 2-column)

**Reference:** `/workspace/web/pub/killer/junior-yield.html` (lines 78-91)

This is the PREFERRED style for all standard data tables. Use this pattern for metric/value pairs.

```html
<table style="width: 100%; font-size: 13px; border-collapse: collapse; margin-bottom: 8px;">
  <tr style="border-bottom: 1px solid #e5e5e5;">
    <td style="padding: 6px 0; color: #666;">Senior: SAM stakers</td>
    <td style="padding: 6px 0; text-align: right; font-weight: 500;">5.76M SOL @ SSI+0.6% floor</td>
  </tr>
  <tr style="border-bottom: 1px solid #e5e5e5;">
    <td style="padding: 6px 0; color: #666;">Junior: leveraged</td>
    <td style="padding: 6px 0; text-align: right; font-weight: 500;">240k SOL @ -100% to +43% APY</td>
  </tr>
  <tr>
    <td style="padding: 6px 0; color: #333; font-weight: 600;">Blended yield</td>
    <td style="padding: 6px 0; text-align: right; font-weight: 600;">~7.6% APY</td>
  </tr>
</table>
```

**Key characteristics:**
- **NO header row** — NO teal border, NO `<th>` tags, data starts immediately
- **Font size:** `13px` on `<table>` element (not inherited)
- **Padding:** `6px 0` (vertical only, no horizontal padding)
- **Left column:** `color: #666` (gray text), descriptive labels
- **Right column:** `font-weight: 500` for data rows, `text-align: right`
- **Summary row:** `color: #333; font-weight: 600` on left, `font-weight: 600` on right
- **Row borders:** `border-bottom: 1px solid #e5e5e5` (gray, 1px) on all but last row
- **Margin:** `margin-bottom: 8px` on table
- **Width:** `100%` (always full-width)
- **NO background colors** on rows — clean white background

### DEPRECATED: Header-based table (only for complex multi-column data)

Use ONLY when you have 3+ columns and need explicit column headers.

```html
<table style="width: 100%; margin: 1rem 0; border-collapse: collapse;">
  <tr style="border-bottom: 2px solid #308D8A;">
    <th style="text-align: left; padding: 8px; font-weight: 600;">Segment</th>
    <th style="text-align: right; padding: 8px; font-weight: 600;">Target TVL</th>
    <th style="text-align: right; padding: 8px; font-weight: 600;">Yield</th>
  </tr>
  <tr style="border-bottom: 1px solid #e5e5e5;">
    <td style="padding: 8px;">Senior: SAM stakers</td>
    <td style="padding: 8px; text-align: right; color: #308D8A;">5.76M SOL</td>
    <td style="padding: 8px; text-align: right;">SSI+0.6% floor</td>
  </tr>
  <tr style="border-bottom: 1px solid #e5e5e5;">
    <td style="padding: 8px;">Junior: leveraged</td>
    <td style="padding: 8px; text-align: right; color: #308D8A;">240k SOL</td>
    <td style="padding: 8px; text-align: right;">-100% to +43% APY</td>
  </tr>
  <tr style="font-weight: 600;">
    <td style="padding: 8px;">Total pool</td>
    <td style="padding: 8px; text-align: right; color: #308D8A;">6M SOL</td>
    <td style="padding: 8px; text-align: right;">~7.6% blended</td>
  </tr>
</table>
```

**When to use header-based tables:**
- 3+ columns with non-obvious meanings
- Complex data requiring explicit column labels
- Comparison tables where headers add clarity

**Differences from PREFERRED style:**
- Has header row with `border-bottom: 2px solid #308D8A`
- Uses `<th>` tags in first row
- Padding: `8px` (uniform) instead of `6px 0`
- Margin: `1rem 0` instead of `margin-bottom: 8px`
- NO `font-size` on table (inherits from parent)

### Rules

- **PREFER the headerless style** for simple 2-column metric/value tables
- **2-3 columns maximum** — use 2 for simple metric/value, 3 when breakdown requires it (segment/TVL/yield)
- **NO `<thead>` wrapper** — just `<tr>` tags directly in `<table>`
- **Row borders:** `1px solid #e5e5e5` (gray, 1px) on data rows via `style="border-bottom: 1px solid #e5e5e5;"`
- **Last row:** NO border-bottom, optionally `font-weight: 600;` for summary
- **NO alternating backgrounds** — keep table rows clean, white background only
- **Summary rows:** Use `font-weight: 600;` + `color: #333` for emphasis
- **Width:** `100%` (always full-width)
- **NO "Key risk:" statements** — risks belong ONLY in the dedicated Risks section, never in table footnotes or P&L explanations

**CUT:** `<thead>` and `<tbody>` wrappers — simpler structure, no semantic containers needed

---

## Backgrounds (1 pattern only)

| Pattern | Hex | Usage |
|---------|-----|-------|
| **Card background** | `var(--bg-card)` | From atlas.css, don't override |

**CUT:** All table row backgrounds (`#F0F9F9`, `#f5f5f5`, `#fafafa`, `rgba(...)`) — tables use clean white background with borders only

---

## Spacing

### Padding (1 value only)

- **Table cells:** `8px` (always)
- **Everything else:** Use atlas.css card/container spacing

**CUT:** Custom padding on cards, containers, divs. Use atlas.css defaults.

### Margin

- **Tables:** `margin: 1rem 0;` (vertical only)
- **Paragraphs:** `margin-top: 12px;` or `1.5rem` for section breaks
- **Everything else:** Atlas.css defaults

---

## Card Patterns

### Standard Card (from atlas.css)

```html
<div class="card">
  <h2>Section Title</h2>
  <p>Body text...</p>
</div>
```

### Callout Card (sparingly)

```html
<div class="callout">
  <p><strong>Note:</strong> Single-sentence takeaway.</p>
</div>
```

**RULE:** Callouts for emphasis ONLY. Not for warnings or general notes. Keep minimal — prefer inline tables and prose.

---

## What We Cut

### Colors
- ❌ `#778A96`, `#151A1A`, `#1a1a1a`, `#333`, `#CCEFED`, `white`, `#ccc`
- ✅ Keep: `#308D8A` (teal), `#059669` (green), `#dc2626` (red), `#666` (text gray), `#e5e5e5` (border gray)

### Backgrounds
- ❌ ALL table row backgrounds: `#F0F9F9`, `#f5f5f5`, `#fafafa`, `rgba(...)` tints
- ✅ Keep: `var(--bg-card)` (atlas.css cards only) — tables are clean white with borders

### Font Weights
- ❌ `700` (bold), `500` (medium)
- ✅ Keep: `600` (semibold for emphasis), `400` (normal body)

### Borders
- ❌ Dashed borders, `1px solid #CCEFED`, `2px solid var(--border)`
- ✅ Keep: `2px solid #308D8A` (table headers), `1px solid #e5e5e5` (rows)

### Padding Variants
- ❌ `4px 0`, `6px 0`, `6px 12px`, `16px`, `24px`, `28px 24px`, etc.
- ✅ Keep: `8px` (table cells only), atlas.css defaults elsewhere

---

## Mobile Responsiveness

**DO NOT** add custom mobile breakpoints or inline media queries. Atlas.css handles this.

Tables are readable at small sizes with `font-size: 11px` at 640px (atlas.css handles it).

---

## Reference Implementation

**Best example:** `/workspace/web/pub/killer/junior-yield.html`

### Two-column layout on wide displays (lines 49-59)
```css
@media (min-width: 1200px) {
  .two-column-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
  }
  .two-column-layout .card {
    margin-bottom: 0;
  }
}
```

Wrap all `.card` sections in `<div class="two-column-layout">` and add this CSS in `<style>` tag after hero section.

### Tables (lines 60-81, reference pattern)
- 2-3 columns max (segment/TVL/yield when breakdown needed)
- NO `<thead>` or `<tbody>` — just `<tr>` tags directly
- First row gets `border-bottom: 2px solid #308D8A;` (header)
- Data rows get `border-bottom: 1px solid #e5e5e5;`
- Last row: NO border-bottom, optional `font-weight: 600;` for summary
- `8px` padding throughout
- Teal values: `color: #308D8A;`

### Callout boxes (lines 75-95, 97-121)
- Gray background `#fafafa`, border, 16px padding
- 13px uppercase label (gray, letter-spacing 0.05em)
- 28px bold green value `#059669`
- 13px breakdown table with 6px padding
- Summary row: `background: #f5f5f5;`, font-weight 600
- Footnote: 12px gray with border-top separator

### Removed parentheses
- Changed inline parenthetical notes to natural phrasing
- "around 7% average" instead of "(~7% average)"
- "at 6% no matter what" instead of "(6% no matter what)"
- Keep parentheses only for essential numerical context

**Graph reference:** `/workspace/web/pub/killer/validator-marketers.html` (lines 143-203)
- SVG line graph, `viewBox="0 0 800 400"`
- Teal `#308D8A` for positive trends, red `#dc2626` for decline
- Grid lines `#e5e5e5`, stroke-width 2.5 for data line

**Copy these patterns everywhere.**

---

## Anti-Patterns (Don't Do This)

❌ Inline styles for colors outside the 5-color palette
❌ Custom padding/margin on cards or containers
❌ Table row background colors (NO `#F0F9F9`, `#f5f5f5`, or any background — clean white only)
❌ Font weights other than 600 or normal
❌ Dense paragraphs with >3 embedded numbers (use tables)
❌ Callouts for anything except thesis/key insights
❌ Custom mobile breakpoints
❌ **3-column or 4-column tables** — ONLY 2-column (METRIC | VALUE) allowed

---

## When to Use Tables vs. Prose

### Use a table when:
- ≥3 numeric values to compare
- Data has clear rows/columns structure
- Showing pricing, P&L, market sizing, technical specs
- Reader needs to scan/compare values quickly

### Use prose when:
- Explaining why something matters
- Narrative/storytelling
- Single-value statements
- Qualitative descriptions

**Example:**

❌ BAD (dense paragraph):
> At 240k SOL junior TVL, if average yield is 10% APY (after shortfall epochs factored in), management fee = 240k * 10% * 20% = 4,800 SOL/yr. Conservative estimate assumes 3-4 shortfall epochs per year reducing average APY to ~8%, yielding 3,840 SOL/yr.

✅ GOOD (table):

| Metric | Value | Note |
|--------|-------|------|
| Junior TVL target | 240k SOL | 4% of 6M pool |
| Average APY (optimistic) | 10% | Before shortfall epochs |
| Revenue (optimistic) | 4,800 SOL/yr | 240k × 10% × 20% |
| Average APY (conservative) | 8% | 3-4 shortfall epochs/yr |
| Revenue (conservative) | 3,840 SOL/yr | 240k × 8% × 20% |

---

## Enforcement

When editing any Killer Hub page:

1. Read psr-service.html first (reference implementation for tables)
2. Read validator-marketers.html (reference implementation for graphs)
3. Use only the 5 colors from the palette
4. Use only `8px` padding in tables
5. NO background colors on table rows — clean white only
6. VALUE column gets `color: #308D8A;` (teal numbers)
7. Convert dense metric paragraphs to tables
8. **MANDATORY: ONLY 2-column tables** — merge context into metric labels (use parentheses)
9. Don't add custom styles unless documented here

**Table reference:** `/workspace/web/pub/killer/psr-service.html` (lines 187-214) — P&L table, 2-column only
**Graph reference:** `/workspace/web/pub/killer/validator-marketers.html` (lines 143-203) — Validator decline graph

---

## Hub Metrics (Top of Page)

Hero metrics below the hub-hero title use `.hub-metrics` / `.hub-metric` classes styled to match callout boxes.

**Pattern (auto-styled by atlas.css):**
```html
<div class="hub-metrics">
  <div class="hub-metric">
    <div class="hub-metric-label">TVL at 10% penetration</div>
    <div class="hub-metric-value">15.2M SOL</div>
  </div>
  <div class="hub-metric">
    <div class="hub-metric-label">P&L at 10% penetration</div>
    <div class="hub-metric-value">+481 SOL/yr</div>
  </div>
</div>
```

**Styling (atlas.css lines 193-226):**
- Background: `#fafafa`, border `1px solid #e5e5e5`, `border-radius: 6px`, `padding: 16px`
- Label FIRST, then value (reversed from old pattern)
- Label: 13px uppercase gray `#666`, letter-spacing 0.05em, font-weight 600, margin-bottom 8px
- Value: 28px bold teal `#308D8A`, line-height 1
- Grid: `repeat(auto-fit, minmax(240px, 1fr))`, gap 1.5rem

**Mobile responsive:**
- `@media (max-width: 640px)`: value 24px, label 11px, padding 12px
- `@media (max-width: 480px)`: value 22px, label 12px, padding 14px

### Label Length Guidelines

Keep labels concise to prevent overflow/cramping. Target 25-35 characters max.

**Abbreviation patterns:**
- "penetration" → "pen."
- "conservative" → "cons."
- "management" → "mgmt"
- Remove redundant words where context is clear

**Before/After examples:**
```
❌ "Referral earnings (200k SOL validator)"        → 39 chars
✅ "Referral earnings per 200k validator"          → 38 chars (clearer)

❌ "TVL (76 validators × 200k SOL)"                 → 31 chars
✅ "TVL at 10% pen."                                → 16 chars

❌ "SAM pool TVL, 300k junior"                      → 26 chars
✅ "SAM TVL (300k junior)"                          → 22 chars

❌ "Addressable market (478 validators)"            → 36 chars
✅ "Market (478 validators >100k)"                  → 30 chars
```

**When context allows, use parentheses for clarification:**
- "SAM TVL (300k junior)" — parentheses group related detail
- "Market (478 validators >100k)" — clarifies segment without repeating "addressable"

**Consistency check (May 2026):**
- psr-service.html: ✅ "TVL at 10% penetration" (24 chars), "P&L at 10% penetration" (24 chars)
- validator-marketers.html: ✅ Updated to "TVL at 10% pen." (16 chars), "Net revenue (post-referrals)" (29 chars)
- virtual-validator.html: ✅ Good lengths, no changes needed
- junior-yield.html: ✅ Updated to "SAM TVL (300k junior)" (22 chars)
- validator-insurance.html: ✅ Updated to "Market (478 validators >100k)" (30 chars)

---

## Executive Summary Two-Box Layout

**Purpose:** Present strategic vision ("What Marinade Becomes") and tactical execution ("How to Accomplish It") side by side at the top of the page, immediately after the hero section.

**Pattern (reference: index.html lines 394-416):**

```html
<div style="display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin: 32px 0;">
  <div style="background: #fafafa; border: 1px solid #e5e5e5; border-radius: 6px; padding: 20px;">
    <h2 style="font-size: 18px; margin-bottom: 16px;">What Marinade Becomes</h2>
    <ol style="font-size: 14px; line-height: 1.8; margin: 0 0 0 1.2rem;">
      <li>Strategic position 1 — <strong>Initiative Name</strong></li>
      <li>Strategic position 2 — <strong>Initiative Name</strong></li>
      <li>Strategic position 3 — <strong>Initiative Name</strong></li>
    </ol>
  </div>

  <div style="background: #fafafa; border: 1px solid #e5e5e5; border-radius: 6px; padding: 20px;">
    <h2 style="font-size: 18px; margin-bottom: 16px;">How to Accomplish It</h2>
    <ol style="font-size: 14px; line-height: 1.8; margin: 0 0 0 1.2rem;">
      <li>Tactical step 1</li>
      <li>Tactical step 2</li>
      <li>Tactical step 3</li>
      <li>Tactical step 4</li>
      <li>Tactical step 5</li>
      <li>Tactical step 6</li>
    </ol>
  </div>
</div>
```

**Structure:**
- Two equal-width columns (1fr 1fr) with 24px gap
- Gray background (#fafafa), border (#e5e5e5), 6px border-radius, 20px padding
- H2 headers at 18px, 16px margin-bottom
- Ordered lists with 1.2rem left margin, 14px font, 1.8 line-height
- Left box: strategic outcomes (3-4 items), right box: tactical steps (5-6 items)
- Initiative names in `<strong>` tags after em dashes

**When to use:**
- Landing page only (index.html)
- Immediately after hero title/subtitle, before metrics
- CEO-level strategic summary

**Responsive:** On mobile (<768px), boxes should stack (grid-template-columns: 1fr).

---

## Side-by-Side Content Boxes (Growth Targets + Core Thesis)

**Purpose:** Present quantitative targets alongside qualitative strategic reasoning.

**Pattern (reference: index.html lines 428-462):**

```html
<div style="display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin: 32px 0;">
  <div style="background: #fafafa; border: 1px solid #e5e5e5; border-radius: 6px; padding: 20px;">
    <div style="font-size: 13px; color: #666; text-transform: uppercase; letter-spacing: 0.05em; font-weight: 600; margin-bottom: 12px;">2026 Growth Targets</div>
    <table style="width: 100%; font-size: 14px; border-collapse: collapse;">
      <tr style="border-bottom: 1px solid #e5e5e5;">
        <td style="padding: 10px 0; color: #666;">Current TVL</td>
        <td style="padding: 10px 0; text-align: right; font-weight: 600; font-size: 16px; color: #333;">10.4M SOL</td>
      </tr>
      <tr style="border-bottom: 1px solid #e5e5e5;">
        <td style="padding: 10px 0; color: #666;">Target TVL</td>
        <td style="padding: 10px 0; text-align: right; font-weight: 600; font-size: 16px; color: #333;">30M SOL</td>
      </tr>
      <tr style="border-bottom: 1px solid #e5e5e5;">
        <td style="padding: 10px 0; color: #666;">Growth required</td>
        <td style="padding: 10px 0; text-align: right; font-weight: 600; font-size: 16px; color: #333;">+19.6M SOL</td>
      </tr>
      <tr>
        <td style="padding: 10px 0; color: #333; font-weight: 600;">Projected P&L</td>
        <td style="padding: 10px 0; text-align: right; font-weight: 700; font-size: 18px; color: #308D8A;">+5,611 SOL/yr</td>
      </tr>
    </table>
  </div>

  <div style="background: #fafafa; border: 1px solid #e5e5e5; border-radius: 6px; padding: 20px;">
    <div style="font-size: 13px; color: #666; text-transform: uppercase; letter-spacing: 0.05em; font-weight: 600; margin-bottom: 12px;">Core Thesis</div>
    <div style="font-size: 14px; line-height: 1.6;">
      <strong>1. Build for the bulk market</strong><br>
      Position for explosive market growth. During bull cycles, capital flows rapidly into where it can 1000x — Marinade captures disproportionate share by removing friction and enabling fast TVL deployment into high-APY opportunities.<br>
      <br>
      <strong>2. Validators → APY → TVL → Profits</strong><br>
      Marinade builds what validators cannot: infrastructure only possible at the stake pool layer, while preserving their independence and strengthening network decentralization.
    </div>
  </div>
</div>
```

**Structure:**
- Two equal-width columns (1fr 1fr) with 24px gap
- Gray background (#fafafa), border (#e5e5e5), 6px border-radius, 20px padding
- Uppercase label at top (13px, #666, letter-spacing 0.05em, font-weight 600)
- Left box: table with metrics (14px body, 16px values, 18px highlighted P&L in teal)
- Right box: narrative text (14px, line-height 1.6) with numbered sections in `<strong>`
- Final P&L row uses teal (#308D8A) color and 18px font size for emphasis

**When to use:**
- Pairing quantitative data with qualitative reasoning
- Landing page (index.html) after executive summary
- Maximum expressiveness: data table + narrative in equal visual weight

**Responsive:** On mobile (<768px), boxes should stack (grid-template-columns: 1fr).

---

## Callout Metrics / P&L Boxes

Use gray callout boxes for high-impact metrics that deserve visual prominence. These are EXCEPTIONS to the standard 2-column table rule.

**Callout box pattern (reference: junior-yield.html lines 75-95, 97-121):**

```html
<div style="background: #fafafa; border: 1px solid #e5e5e5; border-radius: 6px; padding: 16px; margin: 1.5rem 0;">
  <div style="font-size: 13px; color: #666; text-transform: uppercase; letter-spacing: 0.05em; font-weight: 600; margin-bottom: 8px;">Label describing the metric</div>
  <div style="font-size: 28px; font-weight: 700; line-height: 1; color: #308D8A; margin-bottom: 12px;">+3,840 SOL/yr</div>
  <table style="width: 100%; font-size: 13px; border-collapse: collapse; margin-bottom: 8px;">
    <tr style="border-bottom: 1px solid #e5e5e5;">
      <td style="padding: 6px 0; color: #666;">Metric breakdown item</td>
      <td style="padding: 6px 0; text-align: right; font-weight: 500;">Value</td>
    </tr>
    <tr style="background: #f5f5f5;">
      <td style="padding: 6px 0; color: #333; font-weight: 600;">Summary row</td>
      <td style="padding: 6px 0; text-align: right; font-weight: 600;">Summary value</td>
    </tr>
  </table>
  <div style="margin-top: 8px; padding-top: 8px; border-top: 1px solid #e5e5e5; font-size: 12px; color: #666;">
    Footnote explaining assumptions, data sources, or context.
  </div>
</div>
```

**Structure:**
- Same visual style as hub-metrics (gray bg, border, radius, padding)
- Label: 13px uppercase gray, letter-spacing 0.05em, font-weight 600
- Large value: 28px bold teal `#308D8A`, line-height 1, margin-bottom 12px
- Breakdown table: 13px font, 6px padding, `border-bottom: 1px solid #e5e5e5` between rows
- Summary row: `background: #f5f5f5`, font-weight 600
- Footnote: 12px gray, border-top separator

**When to use:**
- P&L projections with revenue breakdown
- Pool segment visualizations (senior/junior splits)
- High-impact metrics that deserve visual prominence (1-2 per page MAX)

**When NOT to use:**
- Regular data tables (use 2-column standard table)
- Simple single-value metrics (use inline prose or table row)
- More than 2 callout boxes per page (visual clutter)

---

## Graphs (SVG)

Use inline SVG for time-series data, trend visualization, or historical metrics.

**Standard graph pattern (reference: validator-marketers.html lines 143-203):**
```html
<p style="margin-top: 1.5rem;"><strong>Validator Network Decline (Epochs 782-882)</strong></p>
<svg viewBox="0 0 800 400" style="max-width: 100%; height: auto; margin: 1.5rem 0; border: 1px solid #e5e5e5; border-radius: 8px;" xmlns="http://www.w3.org/2000/svg">
  <!-- Background -->
  <rect width="800" height="400" fill="#ffffff"/>

  <!-- Grid lines (horizontal + vertical dashed) -->
  <line x1="60" y1="340" x2="740" y2="340" stroke="#e5e5e5" stroke-width="1"/>
  <line x1="60" y1="60" x2="60" y2="340" stroke="#e5e5e5" stroke-width="1" stroke-dasharray="2,2"/>

  <!-- Y-axis labels (font-size 12, fill #666) -->
  <text x="50" y="65" text-anchor="end" font-size="12" fill="#666">5,472</text>
  <text x="50" y="345" text-anchor="end" font-size="12" fill="#666">3,284</text>
  <text x="15" y="200" text-anchor="middle" font-size="14" font-weight="600" fill="#333" transform="rotate(-90 15 200)">Total Validators</text>

  <!-- X-axis labels -->
  <text x="60" y="360" text-anchor="middle" font-size="12" fill="#666">782</text>
  <text x="740" y="360" text-anchor="middle" font-size="12" fill="#666">882</text>
  <text x="400" y="390" text-anchor="middle" font-size="14" font-weight="600" fill="#333">Epoch</text>

  <!-- Data line (stroke-width 2.5 for decline, use #dc2626 for negative trends) -->
  <polyline points="60,83 128,136 196,155 ..." fill="none" stroke="#dc2626" stroke-width="2.5"/>

  <!-- Data points (r=4) -->
  <circle cx="60" cy="83" r="4" fill="#dc2626"/>
  <circle cx="740" cy="317" r="4" fill="#dc2626"/>

  <!-- Title + subtitle -->
  <text x="400" y="25" text-anchor="middle" font-size="16" font-weight="600" fill="#333">Solana Validator Network Decline</text>
  <text x="400" y="45" text-anchor="middle" font-size="13" fill="#666">Total active validators: 5,290 → 3,467 (-1,823 over 100 epochs)</text>
</svg>
<p style="margin-top: 0.5rem; font-size: 14px; color: #666;">Caption with interpretation, data source, time period.</p>
```

**Rules:**
- `viewBox="0 0 800 400"` (standard dimensions, 2:1 aspect ratio)
- White background (`<rect fill="#ffffff"/>`)
- Border: `1px solid #e5e5e5`, `border-radius: 8px`
- Grid: `#e5e5e5` (horizontal solid, vertical dashed `stroke-dasharray="2,2"`)
- Data line: `stroke-width="2.5"` (thinner than old 4px), `#308D8A` (positive trends), `#dc2626` (negative/decline)
- Axis labels: font-size 12-14, `fill="#666"` (gray) or `fill="#333"` (darker for emphasis)
- Title + subtitle inside SVG at top
- Caption below graph for interpretation
- Always include axis labels, title, and data source

---

## Initiative Page Structure

Each initiative page should have:

**Impact section:**
- **2-3 tables** — market landscape, pricing model, P&L example
- **1-2 graphs** — historical data, trends, projections
- **2-3 callout metrics** (converted to table rows with teal/green values)

**This is the law. Ship it.**

---

## CEO Final Edit Protocol

**When to invoke:** User asks to "redo the CEO critique", "make it CEO-ready", "final edit for executive review", or "out-of-the-box impressive."

**Essence distilled from 2026-05-04 session:**

### 1. Lead with "Why Now"
CEOs need market timing anchored above-the-fold. Don't bury bull market positioning in thesis — make it a callout:
- "Solana TVL 2024: $5B → 2025 (bull): est. $50B. Marinade captures 3% today, targets 6% at peak."
- Position BEFORE metrics, not buried in core thesis part 1

### 2. Close the Math Gaps
If "Path to 30M SOL" table shows 12.5M total but target is 30M:
- **Either:** Explain the 17.5M delta (organic growth + market expansion multiplier)
- **Or:** Revise target to match initiatives
- CEO will ask. Answer preemptively.

### 3. Break Dense Prose into Bullets with Numbers
Competitive moats in one sentence = skim-skip. CEO scans, doesn't parse. Convert to:
```
- PSR bond infrastructure: 2,374 settlements, zero exploits, 3+ years production
- Junior yield: First leveraged SOL staking product (no competitors)
- Validator exits: 72/year churn, capture 10% (7-8 validators)
- Virtual validator: 50-100 bps APY lift, vote account sharing
```

### 4. Replace "Research" Language with "Execution" Language
- ❌ "research hub for Marinade's 3x TVL growth strategy"
- ✅ "These initiatives are live (Q2) or entering build phase (Q3 2026)"

### 5. Add Momentum Metrics to Cards
Status badges (ACTIVE/RESEARCH) show state, not progress. Add concrete momentum:
- PSR: "15 validators enrolled"
- Junior Yield: "3 DeFi partners committed"
- Virtual Validator: "spec complete + hackathon ready"

### 6. Make Timelines Explicit
"Q2 2026" is vague. CEO wants:
- Q2: PSR live May 2026, Junior Yield pilot June 2026
- Q3: Virtual Validator build starts July, Validator Marketers outreach August

### 7. Shift Metrics Order
Current: Current TVL → Target TVL → Growth Goal → Projected P&L

CEO-optimized: Market Timing callout → Current TVL → Target TVL → Projected P&L → Path breakdown

**Anti-patterns:**
- Defensive language ("research", "planning", "exploring")
- Vague timelines ("2026" without month)
- Math gaps (showing 12.5M when target is 30M)
- Dense prose moats (one sentence, 4 moats)
- Missing momentum (status without progress metrics)
