<!DOCTYPE html>
<html lang="en-GB">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>{{ BRAND_NAME }} — Prospectus | {{ DOC_MONTH_YEAR }}</title>
  <link rel="preconnect" href="https://fonts.googleapis.com">
  <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
  <link
    href="https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400;1,500;1,600&family=Lora:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Inter:wght@400;500;600&display=swap"
    rel="stylesheet">
  <style>
    /* Kappa — editorial theme. Strict monochrome. */
    :root {
      --paper: #FFFFFF;
      --paper-2: #F4F4F4;
      --ink: #000000;
      --ink-2: #222222;
      --slate: #666666;
      --rule: rgba(0, 0, 0, 0.14);
      --rule-fine: #DDDDDD;
      --gold: #000000;
      --gold-soft: #999999;
      --serif: 'Cormorant Garamond', 'EB Garamond', Garamond, serif;
      --body-serif: 'Lora', 'Source Serif Pro', Georgia, serif;
      --sans: 'Inter', system-ui, -apple-system, sans-serif;
      --color-accent: #ecf1f2;
      --bg-accent: var(--color-accent);
    }

    * {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
    }

    html {
      font-size: 16px;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
    }

    body {
      font-family: var(--body-serif);
      background: var(--paper);
      color: var(--ink);
      line-height: 1.55;
    }

    img,
    svg {
      display: block;
      max-width: 100%;
      height: auto;
    }

    a {
      color: inherit;
    }

    /* HERO — first A4 page */
    .page {
      max-width: 920px;
      margin: 0 auto;
      padding: 32px 36px 28px;
    }

    .topbar {
      background: var(--paper);
      display: flex;
      justify-content: space-between;
      align-items: center;
      border-bottom: 1px solid var(--ink);
      padding: 10px 0;
      margin-bottom: 18px;
      font-family: var(--sans);
      font-size: 10px;
      font-weight: 500;
      letter-spacing: 0.28em;
      text-transform: uppercase;
      color: var(--ink-2);
    }

    /* Screen-only fixed topbar that sits outside any .page section, so it stays put
       through the whole scroll instead of vanishing once the cover scrolls out. */
    .fixed-topbar {
      position: fixed; top: 0; left: 0; right: 0; z-index: 50;
      background: var(--paper);
      border-bottom: 1px solid var(--ink);
    }
    .fixed-topbar-inner {
      max-width: 920px;
      margin: 0 auto;
      padding: 10px 36px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      font-family: var(--sans);
      font-size: 10px;
      font-weight: 500;
      letter-spacing: 0.28em;
      text-transform: uppercase;
      color: var(--ink-2);
    }
    .fixed-topbar-inner .brand {
      font-family: var(--serif); font-style: italic; font-size: 18px;
      letter-spacing: 0.01em; color: var(--ink); text-transform: none;
      display: inline-flex; align-items: center; gap: 8px;
    }
    .fixed-topbar-inner .brand .mark { width: 22px; height: 22px; }
    .fixed-topbar-inner .meta { flex: 1 1 auto; text-align: center; }
    .fixed-topbar-inner .pdf-btn {
      background: var(--ink); color: var(--paper);
      padding: 7px 14px; font-family: var(--sans);
      font-size: 10px; font-weight: 500;
      letter-spacing: 0.18em; text-transform: uppercase;
      display: inline-flex; align-items: center; gap: 6px;
    }
    .fixed-topbar-inner .pdf-btn svg { width: 13px; height: 13px; }
    @media print { .fixed-topbar { display: none !important; } }

    /* Mobile: brand + button on row 1; document title drops to row 2; PDF button shows icon only. */
    @media (max-width: 720px) {
      .fixed-topbar-inner {
        flex-wrap: wrap;
        padding: 8px 16px;
        gap: 4px 12px;
      }
      .fixed-topbar-inner .meta {
        order: 99;
        flex: 1 1 100%;
        text-align: left;
        font-size: 9px;
        letter-spacing: 0.18em;
        padding-top: 4px;
        border-top: 1px solid var(--rule);
      }
      .fixed-topbar-inner .pdf-btn .label { display: none; }
      .fixed-topbar-inner .pdf-btn { padding: 7px 9px; }
      .fixed-topbar-inner .brand { font-size: 15px; gap: 6px; }
      .fixed-topbar-inner .brand .mark { width: 18px; height: 18px; }
      body { padding-top: 78px !important; }
    }

    .topbar .brand {
      font-family: var(--serif);
      font-style: italic;
      font-size: 18px;
      letter-spacing: 0.01em;
      color: var(--ink);
      text-transform: none;
      display: inline-flex;
      align-items: center;
      gap: 8px;
    }

    .topbar .brand .mark {
      width: 22px;
      height: 22px;
      display: inline-block;
      vertical-align: middle;
    }

    .topbar .right {
      display: flex;
      align-items: center;
      gap: 16px;
    }

    .topbar .pdf-btn {
      background: var(--ink);
      color: var(--paper);
      border: none;
      cursor: pointer;
      padding: 7px 14px;
      font-family: var(--sans);
      font-size: 10px;
      font-weight: 500;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      transition: background 180ms;
      display: inline-flex;
      align-items: center;
      gap: 6px;
    }
    .topbar .pdf-btn svg { width: 13px; height: 13px; }
    .topbar .pdf-btn:hover { background: #333; }
    .topbar .meta { flex: 1 1 auto; text-align: center; }

    /* On screen: hide ALL per-section topbars (the fixed topbar above replaces them);
       on print: show them at the top of every A4 page so each printed page is self-labelled. */
    @media screen {
      .topbar { display: none; }
      body { padding-top: 48px; }
      .page+.page { padding-top: 12px; }
    }
    @media print {
      .topbar .pdf-btn { display: none; }
    }


    .hero {
      display: grid;
      grid-template-columns: 1.6fr 1fr;
      gap: 28px;
      padding-bottom: 18px;
      border-bottom: 1px solid var(--rule);
      margin-bottom: 18px;
    }

    .hero .stage .eyebrow {
      font-family: var(--sans);
      font-size: 9.5px;
      font-weight: 600;
      letter-spacing: 0.32em;
      text-transform: uppercase;
      color: var(--slate);
      margin-bottom: 8px;
    }

    .hero .stage h1 {
      font-family: var(--serif);
      font-style: italic;
      font-weight: 400;
      font-size: 38px;
      line-height: 1.04;
      letter-spacing: -0.012em;
      color: var(--ink);
      margin-bottom: 10px;
    }

    .hero .stage h1 .upright {
      font-style: normal;
    }

    .hero .stage .deck {
      font-family: var(--body-serif);
      font-size: 13.5px;
      line-height: 1.55;
      color: var(--ink-2);
      margin-bottom: 14px;
    }

    .hero .stage .chart {
      background: var(--paper);
      border: 1px solid var(--rule-fine);
      padding: 10px 12px 6px;
    }

    .hero .stage .chart-caption {
      font-family: var(--sans);
      font-size: 9px;
      font-weight: 600;
      letter-spacing: 0.22em;
      text-transform: uppercase;
      color: var(--slate);
      margin-top: 4px;
      text-align: right;
    }

    /* Cover hero image — full-width landscape band above the title/info-card grid. */
    .cover-band {
      width: 100%;
      margin-bottom: 16px;
    }
    .cover-band img {
      display: block;
      width: 100%;
      height: auto;
      border: 1px solid var(--rule-fine);
    }

    /* Info-card — the ask */
    .info-card {
      background: var(--bg-accent);
      padding: 20px 22px 22px;
      border-top: 1px solid var(--ink);
      display: flex;
      flex-direction: column;
    }

    .info-card .tag {
      font-family: var(--sans);
      font-size: 9px;
      font-weight: 600;
      letter-spacing: 0.32em;
      text-transform: uppercase;
      color: var(--ink-2);
      margin-bottom: 8px;
    }

    .info-card .title {
      font-family: var(--serif);
      font-style: italic;
      font-weight: 400;
      font-size: 30px;
      line-height: 1.0;
      color: var(--ink);
      margin-bottom: 4px;
    }

    .info-card .subtitle {
      font-family: var(--body-serif);
      font-size: 12.5px;
      color: var(--ink-2);
      line-height: 1.45;
      margin-bottom: 12px;
    }

    .info-card table {
      width: 100%;
      border-collapse: collapse;
      font-variant-numeric: tabular-nums;
      border-top: 1px solid var(--rule);
      border-bottom: 1px solid var(--rule);
      margin-bottom: 12px;
    }

    .info-card th {
      text-align: left;
      padding: 6px 0;
      font-family: var(--body-serif);
      font-style: italic;
      font-weight: 400;
      font-size: 12px;
      color: var(--ink);
    }

    .info-card td {
      text-align: right;
      padding: 6px 0;
      font-family: var(--sans);
      font-size: 11px;
      color: var(--ink);
      white-space: nowrap;
    }

    .info-card tr+tr th,
    .info-card tr+tr td {
      border-top: 1px solid var(--rule);
    }

    .info-card .note {
      font-family: var(--body-serif);
      font-style: italic;
      font-size: 11.5px;
      color: var(--slate);
      line-height: 1.4;
    }

    /* Body blocks */
    .block {
      margin-bottom: 16px;
    }

    .block h2 {
      font-family: var(--serif);
      font-style: italic;
      font-weight: 400;
      font-size: 20px;
      color: var(--ink);
      margin-bottom: 8px;
      letter-spacing: -0.005em;
      line-height: 1.2;
    }

    .block h2::before {
      content: '';
      display: block;
      width: 28px;
      height: 1px;
      background: var(--ink);
      margin-bottom: 8px;
    }

    .block p {
      font-family: var(--body-serif);
      font-size: 12.5px;
      line-height: 1.62;
      color: var(--ink-2);
      margin-bottom: 8px;
    }

    /* Drop cap on the first paragraph of each body block and the hero deck (Kappa editorial convention). */
    .block > p:first-of-type::first-letter,
    .hero .stage .deck::first-letter {
      font-family: var(--serif);
      font-weight: 400;
      font-style: normal;
      font-size: 3.4em;
      line-height: 0.85;
      float: left;
      margin: 0.08em 0.12em -0.04em 0;
      color: var(--ink);
      letter-spacing: -0.02em;
    }
    /* Opt-out: paragraphs that start with a proper noun (a name) read badly with a drop cap. */
    .block > p.no-dropcap:first-of-type::first-letter { all: unset; }

    .block p strong {
      color: var(--ink);
      font-weight: 500;
    }

    .block p em {
      font-style: italic;
    }

    .block ul {
      font-family: var(--body-serif);
      font-size: 12.5px;
      line-height: 1.55;
      color: var(--ink-2);
      padding-left: 18px;
      margin-bottom: 8px;
    }

    .block ul li {
      margin-bottom: 3px;
    }

    .block ul li strong {
      color: var(--ink);
      font-weight: 500;
    }

    .two-col {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 24px;
    }

    /* Asset (Platform — already built) block */
    .asset-block {
      background: var(--bg-accent);
      padding: 18px 22px;
      margin: 0 0 18px;
      border-top: 1px solid var(--ink);
    }

    .asset-block p {
      margin-bottom: 14px;
    }

    .asset-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 24px;
    }

    .asset-grid .asset-head {
      font-family: var(--sans);
      font-size: 9.5px;
      font-weight: 600;
      letter-spacing: 0.28em;
      text-transform: uppercase;
      color: var(--ink);
      margin-bottom: 8px;
    }

    .asset-grid ul {
      font-family: var(--body-serif);
      font-size: 12px;
      line-height: 1.5;
      color: var(--ink-2);
      padding-left: 16px;
    }

    .asset-grid ul li {
      margin-bottom: 5px;
    }

    .asset-grid ul li strong {
      color: var(--ink);
      font-weight: 500;
    }

    /* Page break */
    .page-break {
      page-break-after: always;
      break-after: page;
    }

    /* Section heading */
    .section-rule {
      display: flex;
      align-items: baseline;
      justify-content: space-between;
      border-top: 1px solid var(--ink);
      padding-top: 10px;
      margin-top: 4px;
      margin-bottom: 14px;
    }

    .section-rule h2 {
      font-family: var(--serif);
      font-style: italic;
      font-weight: 400;
      font-size: 22px;
      color: var(--ink);
    }

    .section-rule .nav {
      font-family: var(--sans);
      font-size: 9.5px;
      font-weight: 600;
      letter-spacing: 0.28em;
      text-transform: uppercase;
      color: var(--slate);
    }

    /* Param section (trajectory) */
    .traj {
      display: grid;
      grid-template-columns: 1.1fr 1fr;
      gap: 24px;
      margin-bottom: 16px;
      align-items: start;
    }

    .traj .visual {
      background: var(--paper);
      border: 1px solid var(--rule-fine);
      padding: 12px;
    }

    .traj .visual svg {
      width: 100%;
      height: auto;
      display: block;
    }

    .traj .visual-caption {
      font-family: var(--sans);
      font-size: 9px;
      font-weight: 600;
      letter-spacing: 0.22em;
      text-transform: uppercase;
      color: var(--slate);
      margin-top: 4px;
    }

    .traj .meta h3 {
      font-family: var(--serif);
      font-style: italic;
      font-weight: 400;
      font-size: 16px;
      color: var(--ink);
      margin-bottom: 6px;
    }

    .traj .meta p.lead {
      font-family: var(--body-serif);
      font-size: 12px;
      color: var(--ink-2);
      margin-bottom: 12px;
      line-height: 1.5;
    }

    .traj .grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 8px 18px;
      border-top: 1px solid var(--rule);
      padding-top: 12px;
      font-variant-numeric: tabular-nums;
    }

    .traj .grid .row .k {
      display: block;
      font-family: var(--sans);
      font-size: 8.5px;
      font-weight: 600;
      letter-spacing: 0.22em;
      text-transform: uppercase;
      color: var(--slate);
      margin-bottom: 2px;
    }

    .traj .grid .row .v {
      font-family: var(--serif);
      font-size: 15px;
      color: var(--ink);
      font-style: italic;
    }

    /* Horizon table (Beyond Year 1) */
    .horizon {
      width: 100%;
      border-collapse: collapse;
      margin-bottom: 14px;
      font-variant-numeric: tabular-nums;
      font-family: var(--body-serif);
      font-size: 12px;
    }

    .horizon thead th {
      font-family: var(--sans);
      font-size: 9.5px;
      font-weight: 600;
      letter-spacing: 0.16em;
      text-transform: uppercase;
      color: var(--slate);
      text-align: right;
      padding: 8px 8px;
      border-bottom: 1px solid var(--ink);
    }

    .horizon thead th.l {
      text-align: left;
    }

    .horizon tbody td {
      padding: 9px 8px;
      border-bottom: 1px solid var(--rule);
      text-align: right;
      color: var(--ink);
      white-space: nowrap;
      font-family: var(--serif);
      font-style: italic;
      font-size: 14px;
    }

    .horizon tbody td.l {
      text-align: left;
      white-space: normal;
      font-family: var(--body-serif);
      font-style: normal;
      font-size: 12px;
      color: var(--ink-2);
    }

    .horizon tbody tr:last-child td {
      border-bottom: 1px solid var(--ink);
    }

    /* Tables (use-of-funds, founders) */
    .data-table {
      margin-bottom: 18px;
    }

    .data-table h3 {
      font-family: var(--serif);
      font-style: italic;
      font-weight: 400;
      font-size: 16px;
      color: var(--ink);
      margin-bottom: 8px;
    }

    .data-table table {
      width: 100%;
      border-collapse: collapse;
      font-variant-numeric: tabular-nums;
      font-family: var(--body-serif);
      font-size: 12px;
    }

    .data-table thead th {
      font-family: var(--sans);
      font-size: 9.5px;
      font-weight: 600;
      letter-spacing: 0.16em;
      text-transform: uppercase;
      color: var(--slate);
      text-align: right;
      padding: 8px 6px;
      border-bottom: 1px solid var(--ink);
    }

    .data-table thead th.l {
      text-align: left;
    }

    .data-table tbody td {
      padding: 7px 6px;
      border-bottom: 1px solid var(--rule);
      text-align: right;
      color: var(--ink-2);
      white-space: nowrap;
    }

    .data-table tbody td.l {
      text-align: left;
      white-space: normal;
      color: var(--ink);
    }

    .data-table tbody tr:last-child td {
      border-bottom: 1px solid var(--ink);
    }

    .data-table tbody tr.total td {
      font-weight: 600;
      color: var(--ink);
      background: var(--paper-2);
    }

    /* Two-table layout */
    .tables-row {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 24px;
      margin-bottom: 14px;
    }

    /* Footer */
    footer {
      border-top: 1px solid var(--ink);
      padding-top: 10px;
      margin-top: 14px;
      display: flex;
      justify-content: space-between;
      align-items: baseline;
      font-family: var(--sans);
      font-size: 9px;
      font-weight: 500;
      letter-spacing: 0.18em;
      text-transform: uppercase;
      color: var(--slate);
    }

    footer .legal {
      font-family: var(--body-serif);
      font-style: italic;
      font-size: 10.5px;
      color: var(--slate);
      letter-spacing: 0;
      text-transform: none;
      max-width: 540px;
      line-height: 1.45;
    }

    /* Print — A4 single-sheet enforcement */
    /* Image-PDF print pipeline (per a4-print-documents skill). Each .page locked to A4.
       Browser headers/footers (date, URL, page X/Y) can only be suppressed by the user toggling
       "Headers and footers" off in the print dialog — they are not CSS-controllable. For a fully
       image-only PDF (no metadata, no browser print dialog), use the Playwright + img2pdf + qpdf
       pipeline (see a4-print-documents skill); the PDF download button can then link to a static
       {{ PROSPECTUS_PDF }} instead of calling window.print(). */
    @page { size: A4; margin: 0; }

    /* Compact page-number indicator — print-only. Hidden on screen so the HTML reads as a
       continuous web document; shown in the rendered PDF where readers expect pagination. */
    .page { position: relative; }
    .page-num { display: none; }

    @media print {
      html, body { background: white; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
      .screen-only { display: none !important; }
      /* The topbar's bottom border already separates the page from the section below;
         drop the section-rule's top border to avoid the double-line stack in PDF. */
      .section-rule { border-top: none; padding-top: 0; }
      .page-num {
        display: block;
        position: absolute;
        bottom: 6mm;
        right: 14mm;
        font-family: var(--sans);
        font-size: 9px;
        font-weight: 500;
        letter-spacing: 0.18em;
        text-transform: uppercase;
        color: var(--slate);
      }
      .page {
        width: 210mm;
        height: 297mm;
        max-width: none;
        margin: 0;
        padding: 10mm 14mm;
        box-sizing: border-box;
        overflow: hidden;
        page-break-after: always;
        break-after: page;
      }
      .page:last-child { page-break-after: auto; break-after: auto; }
      .page-break { display: none; }
      .topbar.repeat { display: flex !important; }
      .hero, .traj, .tables-row, .two-col, .asset-grid, .asset-block { break-inside: avoid; }
      .pdf-btn { display: none !important; }
      a { color: inherit; text-decoration: none; }
    }

    @media (max-width: 760px) {

      .hero,
      .traj,
      .tables-row,
      .two-col,
      .asset-grid {
        grid-template-columns: 1fr;
      }

      /* Topbar: stack brand+button on row 1, meta wraps to row 2. */
      .topbar { flex-wrap: wrap; gap: 8px; align-items: center; }
      .topbar .brand { font-size: 15px; gap: 6px; }
      .topbar .brand .mark { width: 18px; height: 18px; }
      .topbar .meta { flex: 1 1 100%; order: 99; text-align: left; font-size: 9px; letter-spacing: 0.18em; padding-top: 4px; border-top: 1px solid var(--rule); }
      .topbar .pdf-btn { padding: 6px 10px; }
      .topbar .pdf-btn .label { display: none; }

      /* Section-rule heading: stack title + nav. */
      .section-rule { flex-direction: column; align-items: flex-start; gap: 4px; }
      .section-rule h2 { font-size: 20px; line-height: 1.2; }
      .section-rule .nav { padding-left: 0; }

      /* Footer: stack the three blocks. */
      footer { flex-direction: column; align-items: flex-start; gap: 8px; }
      footer .legal { max-width: 100%; }

      /* Hero stage: tighten H1 + deck. */
      .hero { gap: 16px; }
      .hero .stage h1 { font-size: 28px; }
      .hero .stage .deck { font-size: 12.5px; }

      /* Tables: smaller font, allow horizontal scroll where needed. */
      .data-table { overflow-x: auto; }
      .data-table table { font-size: 11px; min-width: 100%; }
      .data-table thead th { padding: 6px 4px; font-size: 8.5px; letter-spacing: 0.10em; }
      .data-table tbody td { padding: 6px 4px; }

      .horizon-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
      .horizon { font-size: 11px; min-width: 640px; }
      .horizon thead th { padding: 6px 8px; font-size: 8.5px; letter-spacing: 0.10em; }
      .horizon tbody td { padding: 8px; }
      .horizon tbody td.l { font-size: 11px; }
      /* Favour the long "What it means" column when scrolling — give the other cells just enough. */
      .horizon th:nth-child(1), .horizon td:nth-child(1) { white-space: nowrap; }
      .horizon th:nth-child(2), .horizon td:nth-child(2) { white-space: nowrap; }
      .horizon th:nth-child(3), .horizon td:nth-child(3) { white-space: nowrap; }
      .horizon th:nth-child(4), .horizon td:nth-child(4) { white-space: nowrap; }
      .horizon th:nth-child(5), .horizon td:nth-child(5) { min-width: 280px; }

      /* Info-card: tighten padding + table density. */
      .info-card { padding: 16px 18px; }
      .info-card .title { font-size: 26px; }
      .info-card table { font-size: 11px; }

      /* Asset block: tighter padding on mobile. */
      .asset-block { padding: 14px 16px; }
      .asset-grid { gap: 16px; }

      /* Trajectory grid: 2-col already, but tighter on small screens. */
      .traj .grid { gap: 6px 12px; }

      /* Param block: keep KV pairs as 2-col if there's room, else 1-col. */
      .block h2 { font-size: 18px; }
      .block p { font-size: 12.5px; }
      .block ul { font-size: 12.5px; }

      .page {
        padding: 22px 18px;
      }
    }
  </style>
</head>

<body>

  <!-- Screen-only fixed topbar — stays at the viewport top through the whole scroll. -->
  <div class="fixed-topbar">
    <div class="fixed-topbar-inner">
      <span class="brand">
        <img class="mark" src="{{ BRAND_ICON }}" alt="{{ BRAND_NAME }}"> {{ BRAND_NAME }}
      </span>
      <span class="meta">Prospectus &middot; {{ DOC_MONTH_YEAR }} &middot; Private</span>
      <a class="pdf-btn" href="{{ PROSPECTUS_PDF }}" download aria-label="Download PDF">
        <svg viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true">
          <path d="M8 2v8M4 7l4 4 4-4M3 13h10" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/>
        </svg>
        <span class="label">Download PDF</span>
      </a>
    </div>
  </div>

  <!-- ─────────────── PAGE 1 ─────────────── -->
  <section class="page cover">

    <div class="topbar">
      <span class="brand"><img class="mark" src="{{ BRAND_ICON }}" alt="{{ BRAND_NAME }}"> {{ BRAND_NAME }}</span>
      <span class="meta">Prospectus &middot; {{ DOC_MONTH_YEAR }} &middot; Private</span>
      <a class="pdf-btn" href="{{ PROSPECTUS_PDF }}" download aria-label="Download PDF">
        <svg viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true">
          <path d="M8 2v8M4 7l4 4 4-4M3 13h10" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/>
        </svg>
        <span class="label">Download PDF</span>
      </a>
    </div>

    <div class="cover-band">
      <img src="{{ HERO_IMAGE }}" alt="{{ BRAND_NAME }}" />
    </div>

    <div class="hero">
      <div class="stage">
        <div class="eyebrow">Prospectus — {{ DOC_MONTH_YEAR }}</div>
        <h1>Operating System for <span class="upright">Estate Agents</span></h1>
        <p class="deck">{{ BRAND_NAME }} is built for the UK self-employed estate agent &mdash; a cohort on track to reach
          ~10% of the UK property market by 2030. One admin agent runs the business through a chat. Other agents handle
          the admin no-one wants to do: qualifying enquiries, chasing vendor updates, booking viewings, keeping the
          chain moving. The agent's day
          stays in front of customers, not the keyboard. £500 a month &mdash; less than a Virtual Assistant (VA).</p>

        <div class="chart">
          <!-- Two-panel chart driven by the operator's financial model worksheet.
             Recompute SVG coordinates from the new model: cash polyline, MRR bars, burn step-lines.
             See Stage 4b § "How to apply answers" step 7 for the recomputation formulae. -->
          <svg viewBox="0 0 520 320" xmlns="http://www.w3.org/2000/svg" role="img"
            aria-label="Cash balance, monthly MRR and burn">
            <defs>
              <pattern id="halftone" x="0" y="0" width="6" height="6" patternUnits="userSpaceOnUse">
                <circle cx="3" cy="3" r="0.55" fill="#000000" opacity="0.22" />
              </pattern>
            </defs>

            <!-- ── PANEL 1: cash balance y 22–140 (span 118). Scale -£50k → £400k. Zero line y=128. -->
            <line x1="48" y1="22" x2="48" y2="140" stroke="#000" stroke-width="0.8" />
            <line x1="48" y1="140" x2="500" y2="140" stroke="#000" stroke-width="0.8" />
            <line x1="48" y1="128" x2="500" y2="128" stroke="#000" stroke-width="0.4" stroke-dasharray="2 3" />
            <g font-family="Inter, sans-serif" font-size="8.5" fill="#666" text-anchor="end">
              <text x="44" y="25">£400k</text>
              <text x="44" y="76">£200k</text>
              <text x="44" y="131">£0</text>
              <text x="44" y="143">−£50k</text>
            </g>
            <polyline points="48,43 86,55 123,65 161,77 199,87 236,97 274,104 312,109 349,113 387,115 425,117 462,118 500,117"
              fill="none" stroke="#000" stroke-width="1.7" />
            <polygon
              points="48,43 86,55 123,65 161,77 199,87 236,97 274,104 312,109 349,113 387,115 425,117 462,118 500,117 500,140 48,140"
              fill="url(#halftone)" />
            <g fill="#000">
              <circle cx="48" cy="43" r="2.6" />
              <circle cx="462" cy="118" r="2.6" />
              <circle cx="500" cy="117" r="2.6" />
            </g>
            <g font-family="Inter, sans-serif" font-size="9.5" fill="#000">
              <text x="56" y="38">£321k after capex</text>
              <text x="332" y="132" font-size="8.5">low £34k · M11 (Round 2 closes M10)</text>
              <text x="450" y="110">£36k · M12</text>
            </g>

            <!-- ── PANEL 2: monthly MRR (bars) and burn (dashed) y 170–290 (span 120). Scale £0–£60k. -->
            <line x1="48" y1="170" x2="48" y2="290" stroke="#000" stroke-width="0.8" />
            <line x1="48" y1="290" x2="500" y2="290" stroke="#000" stroke-width="0.8" />
            <g font-family="Inter, sans-serif" font-size="8.5" fill="#666" text-anchor="end">
              <text x="44" y="293">£0</text>
              <text x="44" y="233">£30k</text>
              <text x="44" y="173">£60k</text>
            </g>
            <g fill="#000">
              <rect x="81"  y="278" width="10" height="12"  />
              <rect x="118" y="276" width="10" height="14"  />
              <rect x="156" y="272" width="10" height="18"  />
              <rect x="194" y="264" width="10" height="26"  />
              <rect x="231" y="254" width="10" height="36"  />
              <rect x="269" y="242" width="10" height="48"  />
              <rect x="307" y="228" width="10" height="62"  />
              <rect x="344" y="214" width="10" height="76"  />
              <rect x="382" y="202" width="10" height="88"  />
              <rect x="420" y="190" width="10" height="100" />
              <rect x="457" y="178" width="10" height="112" />
              <rect x="495" y="170" width="10" height="120" />
            </g>
            <line x1="48" y1="194" x2="124" y2="194" stroke="#000" stroke-width="1.5" stroke-dasharray="5 3" />
            <line x1="124" y1="194" x2="124" y2="184" stroke="#000" stroke-width="1" stroke-dasharray="2 2" />
            <line x1="124" y1="184" x2="424" y2="184" stroke="#000" stroke-width="1.5" stroke-dasharray="5 3" />
            <line x1="424" y1="184" x2="424" y2="174" stroke="#000" stroke-width="1" stroke-dasharray="2 2" />
            <line x1="424" y1="174" x2="500" y2="174" stroke="#000" stroke-width="1.5" stroke-dasharray="5 3" />
            <text x="56" y="190" font-family="Inter, sans-serif" font-size="9.5" font-weight="600" fill="#000">BURN £48k</text>
            <text x="120" y="180" font-family="Inter, sans-serif" font-size="9.5" font-weight="600" fill="#000">£53k (i)</text>
            <text x="420" y="170" font-family="Inter, sans-serif" font-size="9.5" font-weight="600" fill="#000">£58k (ii)</text>
            <line x1="495" y1="170" x2="495" y2="290" stroke="#999" stroke-width="0.6" stroke-dasharray="2 3" />
            <text x="520" y="150" font-family="Inter, sans-serif" font-size="8.5" fill="#666" text-anchor="end">Break-even · M12</text>
            <g font-family="Inter, sans-serif" font-size="9" fill="#666" text-anchor="middle">
              <text x="48" y="306">M0</text>
              <text x="161" y="306">M3</text>
              <text x="274" y="306">M6</text>
              <text x="387" y="306">M9</text>
              <text x="500" y="306">M12</text>
            </g>
          </svg>
          <div class="chart-caption">
            <svg width="22" height="6" viewBox="0 0 22 6"
              style="display:inline-block;vertical-align:middle;margin-right:4px">
              <line x1="0" y1="3" x2="22" y2="3" stroke="#000" stroke-width="1.6" />
            </svg>Cash balance
            &middot;
            <svg width="8" height="10" viewBox="0 0 8 10"
              style="display:inline-block;vertical-align:middle;margin:0 4px">
              <rect x="1" y="2" width="6" height="8" fill="#000" />
            </svg>Monthly revenue
            &middot;
            <svg width="22" height="6" viewBox="0 0 22 6"
              style="display:inline-block;vertical-align:middle;margin:0 4px">
              <line x1="0" y1="3" x2="22" y2="3" stroke="#000" stroke-width="1.2" stroke-dasharray="4 3" />
            </svg>Monthly costs
          </div>
        </div>
      </div>

      <aside class="info-card">
        <span class="tag">Equity
          Capital Raise
        </span>
        <div class="title">{{ ROUND_SIZE }}</div>
        <div class="subtitle">Priced equity in a new UK Ltd. 20% post-money. Single tranche. Minimum cheque {{ MIN_CHEQUE }}; we
          will not proceed unless we raise at least {{ MIN_AGGREGATE }} in aggregate.</div>

        <table>
          <tr>
            <th>Instrument</th>
            <td>Priced equity</td>
          </tr>
          <tr>
            <th>Post-money cap</th>
            <td>{{ POST_MONEY_CAP }}</td>
          </tr>
          <tr>
            <th>Founders retained</th>
            <td>80%</td>
          </tr>
          <tr>
            <th>Minimum cheque</th>
            <td>{{ MIN_CHEQUE }}</td>
          </tr>
          <tr>
            <th>Round closes</th>
            <td>{{ ROUND_CLOSE_DATE }}</td>
          </tr>
          <tr>
            <th>Funds expected</th>
            <td>{{ FUNDS_EXPECTED_DATE }}</td>
          </tr>
          <tr>
            <th>SEIS/EIS</th>
            <td>Post-funding pursuit</td>
          </tr>
        </table>

        <p class="note">After we close, we will apply to HMRC for SEIS/EIS advance assurance. That is a post-funding
          commitment, not a condition of this round. No eligibility work has been done. This round is not contingent on
          SEIS/EIS eligibility.</p>
        <p class="note screen-only" style="margin-top: 10px;">→ <a href="{{ TERM_SHEET_HTML }}" style="border-bottom: 1px solid var(--ink); color: var(--ink); font-style: normal;">Open the term sheet</a> — principal financing terms and the FCA self-certification forms.</p>
      </aside>
    </div>

    <div class="page-num">Page 1 / 7</div>
  </section>

  <div class="page-break"></div>

  <!-- ─────────────── PAGE 2 — Executive summary + Architecture intro ─────────────── -->
  <section class="page">

    <div class="topbar repeat">
      <span class="brand"><img class="mark" src="{{ BRAND_ICON }}" alt="{{ BRAND_NAME }}"> {{ BRAND_NAME }}</span>
      <span class="meta">Prospectus &middot; {{ DOC_MONTH_YEAR }} &middot; Private</span>
    </div>

    <!-- Executive summary -->
    <section class="block">
      <h2>Executive summary.</h2>
      <p><strong>The market.</strong> {{ BRAND_NAME }}'s primary target customer is the self-employed UK estate agent. A
        cohort whose
        transaction share has grown 7.5&times; since 2019 (TwentyEA), reached ~2.5% of UK property transactions
        in 2025, and is on track to account for ~10% of the market by 2030 (Worth Recruiting). The wider industry sits
        behind it: 26,374 estate-agency businesses, ~388,000 workforce (ONS / IBISWorld 2026).</p>
      <p><strong>The opportunity.</strong> More and more UK estate agents are leaving agencies to run their own book.
        When
        they do, all the admin that used to be split across an office lands on one person: enquiries, CRM, vendor
        reports, chasing sales through to completion, the regulatory paperwork. The current alternatives are to hire a
        VA, at £500 to £1,500 a month or subscribe to a range of expensive SaaS tools. A new VA
        starts knowing nothing about the agent's business; every client quirk, every process, every property has to be
        taught
        from scratch. When the VA leaves, all of it walks out with them. Saas tools have steep learning curves, with
        every new feature loading as much burden on the user as benefit, so much of the value, especially in CRMs, is
        untapped.</p>
      <p><strong>{{ BRAND_NAME }} value proposition.</strong> {{ BRAND_NAME }} starts at £500 a month for a solo operator. It
        learns the agent's business once and keeps everything organised. No handover, no slow first month, no knowledge
        walking out of
        the door. It is also on the agent's side by design: every minute of admin it takes off their plate is a minute
        they spend
        in front of a customer, a vendor or a buyer in the chain. The data stays with them. Customer conversations sit
        between their customers and the model provider (Anthropic); {{ BRAND_NAME }} is not in the middle holding the data.
        That is a much lighter compliance footprint than competitors who pass throiugh the AI costs and keep the agent's
        data on their servers. <em>For information:</em> the model itself is Anthropic's Claude, paid for on the
        customer's own
        subscription. That is a build choice, not what makes {{ BRAND_NAME }} different &mdash; any competitor could pick the
        same model.</p>
    </section>

    <!-- Architecture (intro + subagent fleets) flows on the same A4 page -->
    <section class="block">
      <h2>Architecture &amp; differentiation.</h2>
      <p><strong>The architecture &mdash; every role you play. Amplified.</strong> {{ BRAND_NAME }} is built around one
        <strong>AI Operations Manager</strong> &mdash; the chief of staff &mdash; that orchestrates the business: runs
        the workflows, manages the schedule, prepares the briefings, generates the documents. Underneath it sit two
        fleets of role-specific subagents (see <a href="{{ PRODUCT_URL }}">{{ PRODUCT_URL_LABEL }}</a> for the
        live articulation):
      </p>
      <ul>
        <li><strong>Admin specialist subagents</strong> (private, ring-fenced &mdash; one per role the human estate
          agent
          plays in their day): <em>Negotiator</em> logs call notes from a voice message with no CRM typing;
          <em>Chain Progressor</em> monitors every open transaction and flags when a milestone is overdue;
          <em>Valuer</em> assembles pre-built valuation packs, ranked call lists and automated vendor reports;
          <em>Branch Manager</em> delivers morning pipeline briefings, automated progression tracking, team activity
          digests; <em>Prospector</em> runs ranked call lists, farming letters, market triggers and database follow-up
          sequences; <em>Compliance</em> handles legislation, listing audit, AML and citations (internal only).
        </li>
        <li><strong>Public specialist subagents</strong> (customer-facing): <em>Buyer Enquiry Agent</em> onboards new
          buyers through natural conversation &mdash; not inconvenient forms &mdash; 24/7; <em>Viewing Booking
            Agent</em>
          schedules, sends confirmations, groups viewings for efficiency; <em>Sales Progression Agent</em> (one per
          transaction, gated to buyer, seller and solicitors, knows the full chain); <em>Vendor Update Agent</em> (gated
          to a specific vendor, real-time status on their property); and the on-platform <em>{{ BRAND_NAME }} Sales</em> agent
          that qualifies leads for {{ BRAND_NAME }} itself 24/7.</li>
      </ul>
    </section>

    <div class="page-num">Page 2 / 7</div>
  </section>

  <div class="page-break"></div>

  <!-- ─────────────── PAGE 3 — Architecture cont. ─────────────── -->
  <section class="page">

    <div class="topbar repeat">
      <span class="brand"><img class="mark" src="{{ BRAND_ICON }}" alt="{{ BRAND_NAME }}"> {{ BRAND_NAME }}</span>
      <span class="meta">Prospectus &middot; {{ DOC_MONTH_YEAR }} &middot; Private</span>
    </div>

    <section class="block">
      <h2>Architecture &amp; differentiation (cont.).</h2>
      <p>Every subagent is briefed, scoped and access-controlled like a junior member of staff &mdash; given one clear
        job, one identity, and the data needed to do it, nothing more. The agent <em>delegates</em> rather than
        operates;
        the subagents carry the load; the agent's time and judgement go to the relationships that win instructions and
        close transactions. This is the architectural reason an estate agent can hit the ground running on day one:
        nothing needs to be learned beyond the chat &mdash; the platform is run the same way the agent already runs a
        team of people. {{ BRAND_NAME }} handles the admin that fills the gaps between, and gives the agent back the work
        that only they can do, in every role they play. <strong>The public agents are the interface. Not the
          product.</strong></p>
      <p><strong>What we do that nobody else does.</strong> Most software, and most AI tools, work the same way: they
        pull the customer's data onto the supplier's server, then make the customer learn a dashboard to get any value
        out of it. {{ BRAND_NAME }} does the opposite. The data stays with the agent. The AI does the work that frees the
        agent up, instead of sitting between the agent and their own customer. The whole platform runs through a natural
        language chat interface,
        not a dashboard. The chat can be text or voice driven, according to the working pattern of the user. The real
        defence, however, is the structure
        underneath, where the human is in the middle and not the platform. That is also why 60% of agents using current
        AI tools say they don't really understand them &mdash; those tools are still built the old way, not intuitively.
      </p>
      <p><strong>Cross-CRM AI &mdash; the structural differentiator.</strong> Every CRM in UK estate agency is now
        bolting AI onto its own product &mdash; AI features that only work inside that one CRM, with that one vendor's
        roadmap, locking the customer in. {{ BRAND_NAME }} is built the opposite way: it integrates every CRM through its open
        API, so the agent keeps their CRM choice and {{ BRAND_NAME }} makes whichever one they use materially more powerful.
        Every agent on every CRM is therefore addressable. This is the structural funnel driver as the AI-in-CRM trend
        accelerates.</p>
      <p><strong>Wedge &middot; beachhead &middot; blitzscale.</strong> Our entry into the market has already begun with
        a brochure flywheel strategy, designed to hook agents into the utility of the product without having to make a
        firm commitment. We then leverage this to generate early revenue and upsell to pre-val presentations. The
        brochure flywheel and pre-val
        product are
        <em>the wedge</em> &mdash; narrow entry, fast proof, low-friction adoption into the agent's day. The Loop
        integration into eXp UK (3,000+ agents on a mandated CRM) is <em>the beachhead</em> &mdash; one decisively
        winnable segment chosen to gather repeatable wins. The Round 2 raise at month 9 (£500k&ndash;£1m on hit
        milestones) funds <em>the blitzscale</em>: integrate every property CRM in the UK, market into the whole UK
        estate-agency workforce, and {{ BRAND_NAME }} becomes the operating system for UK estate agency &mdash; not
        aspirationally, concretely. At that point, <strong>an agent cannot compete effectively with an agent who has
          {{ BRAND_NAME }} operating their CRM &mdash; whichever CRM either of them happens to use.</strong> The race is to
        that establishing position.
      </p>
    </section>

    <div class="page-num">Page 3 / 7</div>
  </section>

  <div class="page-break"></div>

  <!-- ─────────────── PAGE 3 — How we get customers ─────────────── -->
  <section class="page">

    <div class="topbar repeat">
      <span class="brand"><img class="mark" src="{{ BRAND_ICON }}" alt="{{ BRAND_NAME }}"> {{ BRAND_NAME }}</span>
      <span class="meta">Prospectus &middot; {{ DOC_MONTH_YEAR }} &middot; Private</span>
    </div>

    <!-- Body block 2: Funnel -->
    <section class="block">
      <h2>Business development.</h2>
      <p>{{ BRAND_NAME }} acquires customers by producing the artefacts agents already need, at a fraction of the time and
        cost
        the agent would otherwise spend, and at better quality too. This is the revolutionary outcome that only AI can
        achieve in the right hands. Each artefact demonstrates the platform's capability and earns revenue in its
        own right, before the agent commits to their own subscription. There are two such products today and a third
        strategic channel that opens at scale.</p>
      <ul>
        <li><strong>The brochure flywheel (live).</strong> A property brochure is the standard sales document an estate
          agent prepares for every listing &mdash; photography, floorplan, room descriptions, EPC, location narrative.
          Producing one well, in regulatory compliance, takes hours. {{ BRAND_NAME }} produces a brochure from the listing URL
          and a short brief in
          minutes, and only a few seconds of the operator's time. A free LinkedIn campaign has delivered five brochures
          to date. The brochures themselves are
          discoverable artefacts &mdash; agents publish them to win the instruction, other agents see them, demand
          compounds. The next step is to convert delivery into a low-cost monthly service or pay-per-brochure, with
          gross margin near 100%.</li>
        <li><strong>The pre-valuation product (next).</strong> A pre-val presentation is the higher-value private
          document an agent walks into a homeowner's kitchen with to win a listing instruction: comparable sales,
          marketing plan, recommended price, the agent's pitch. It is high-stakes, time-consuming and currently done by
          hand. Same architecture as the brochure flywheel, much higher willingness-to-pay. Because the data is
          sovereign, this is what will drive {{ BRAND_NAME }} conversion from the service-based brochure production.</li>
        <li><strong>The Loop CRM integration &mdash; the first of many (Q3 2026).</strong> Loop is the only CRM
          integration today and it is the right place to start: Loop is the CRM every eXp UK agent has to use &mdash;
          3,000+ agents &mdash; and is releasing an open API to which we have early access. {{ BRAND_NAME }} already
          integrates
          natively with email, Outlook, WhatsApp and Telegram, so agents and their customers communicate on the channel
          they already use. CRM vendors are racing to bolt AI onto their own products, locked to their stack. {{ BRAND_NAME }}
          does the opposite: AI that will work with whichever CRM the agent already uses (Reapit, Alto, Street,
          GoHighLevel and any other open-API CRM under Round 2). The whole UK estate-agency CRM base becomes
          addressable,
          not just one vendor's.</li>
      </ul>
    </section>

    <div class="page-num">Page 4 / 7</div>

  </section>

  <div class="page-break"></div>

  <!-- ─────────────── PAGE 2 ─────────────── -->
  <section class="page">

    <div class="topbar repeat">
      <span class="brand"><img class="mark" src="{{ BRAND_ICON }}" alt="{{ BRAND_NAME }}"> {{ BRAND_NAME }}</span>
      <span class="meta">Prospectus &middot; {{ DOC_MONTH_YEAR }} &middot; Private</span>
    </div>

    <div class="section-rule">
      <h2>The {{ BRAND_NAME }} platform</h2>
      <span class="nav">Asset transferred at closing</span>
    </div>

    <section class="block asset-block">
      <p>{{ BRAND_NAME }} is not a slide-ware concept. The platform is in production today, built over months of senior
        engineering by Joel Smalley before incorporation. <strong>At closing it transfers outright to {{ BRAND_NAME }}
          Systems Ltd</strong> &mdash; with no licence-back, no royalty, and no encumbrance. The {{ ROUND_SIZE }} raise funds
        go-to-market and
        product hardening, not greenfield engineering. The difficult architectural choices have already been made and
        the core components are already working in production.</p>
      <div class="asset-grid">
        <div class="asset-col">
          <div class="asset-head">Working today</div>
          <ul>
            <li><strong>Admin agent.</strong> One conversation runs the whole business &mdash; briefings, CRM updates,
              document generation, follow-ups, scheduling.</li>
            <li><strong>Unlimited specialist public agents.</strong> Lead qualifiers, vendor-update agents, viewing
              bookers, sales-progression chasers &mdash; each with its own identity, knowledge, and access control.</li>
            <li><strong>Workflow orchestration.</strong> Continuous, AI-initiated &mdash; the platform monitors business
              state and acts without being asked.</li>
            <li><strong>CRM integration.</strong> Loop is the live CRM integration today; every other open-API CRM
              follows under Round 2.</li>
            <li><strong>Communication channels (live).</strong> Native email, Outlook, WhatsApp and Telegram &mdash;
              agents and their customers reach {{ BRAND_NAME }} on the channel they already use, with no new app to install.
            </li>
            <li><strong>Customer-owned model subscription.</strong> Customers hold their own Claude subscription &mdash;
              zero AI compute on {{ BRAND_NAME }}'s P&amp;L, customer data stays with the customer.</li>

          </ul>
        </div>
        <div class="asset-col">
          <div class="asset-head">Implications for this round</div>
          <ul>
            <li><strong>The hard engineering risk is mitigated.</strong> The architecture, agent orchestration, and the
              admin/public split are designed and shipped.</li>
            <li><strong>£350k goes to commercial work, not R&amp;D.</strong> Hardening, the Loop API integration,
              marketing, training, legal &mdash; not greenfield build.</li>
            <li><strong>Replacement cost exceeds the raise.</strong> Building this from a blank canvas at UK
              senior-engineering rates would cost more than {{ ROUND_SIZE }} and take 9&ndash;12 months.</li>
            <li><strong>Time-to-revenue is short.</strong> Two pilots run from week 1 because the platform exists:
              Muvin (Adam &amp; Jamie's agency) and Beacons (Alex's agency). Both are founder-operated &mdash; the
              people promoting {{ BRAND_NAME }} are active users of it.</li>
          </ul>
        </div>
      </div>
    </section>

    <div class="page-num">Page 5 / 7</div>
  </section>

  <div class="page-break"></div>

  <!-- ─────────────── PAGE 3 ─────────────── -->
  <section class="page">

    <div class="topbar repeat">
      <span class="brand"><img class="mark" src="{{ BRAND_ICON }}" alt="{{ BRAND_NAME }}"> {{ BRAND_NAME }}</span>
      <span class="meta">Prospectus &middot; {{ DOC_MONTH_YEAR }} &middot; Private</span>
    </div>

    <div class="section-rule">
      <h2>The 12-month operating plan.</h2>
      <span class="nav">Driven by model_worksheet.md</span>
    </div>

    <div class="traj">
      <div class="visual">
        <!-- MRR by month — exponential ramp to £60k by M12. Three-step burn line. -->
        <svg viewBox="0 0 480 320" xmlns="http://www.w3.org/2000/svg" role="img"
          aria-label="MRR by month with monthly burn line">
          <line x1="40" y1="40" x2="40" y2="280" stroke="#000000" stroke-width="0.8" />
          <line x1="40" y1="280" x2="464" y2="280" stroke="#000000" stroke-width="0.8" />
          <!-- Y ticks: £0, £20k, £40k, £60k. Scale 0→60k mapped 280→40, span 240. -->
          <g font-family="Inter, sans-serif" font-size="9" fill="#666666" text-anchor="end">
            <text x="36" y="283">£0</text>
            <text x="36" y="203">£20k</text>
            <text x="36" y="123">£40k</text>
            <text x="36" y="43">£60k</text>
          </g>
          <!-- X ticks M0-M12 -->
          <g font-family="Inter, sans-serif" font-size="8.5" fill="#666666" text-anchor="middle">
            <text x="40" y="296">M0</text>
            <text x="146" y="296">M3</text>
            <text x="252" y="296">M6</text>
            <text x="358" y="296">M9</text>
            <text x="464" y="296">M12</text>
          </g>
          <!-- MRR bars M1-M12: 6,7,9,13,18,24,31,38,44,50,56,60 (£k). y = 280-(m/60)*240. -->
          <g fill="#000000">
            <rect x="75"  y="256" width="22" height="24"  /> <!-- M1:  6k -->
            <rect x="110" y="252" width="22" height="28"  /> <!-- M2:  7k -->
            <rect x="145" y="244" width="22" height="36"  /> <!-- M3:  9k -->
            <rect x="180" y="228" width="22" height="52"  /> <!-- M4: 13k -->
            <rect x="215" y="208" width="22" height="72"  /> <!-- M5: 18k -->
            <rect x="250" y="184" width="22" height="96"  /> <!-- M6: 24k -->
            <rect x="285" y="156" width="22" height="124" /> <!-- M7: 31k -->
            <rect x="320" y="128" width="22" height="152" /> <!-- M8: 38k -->
            <rect x="355" y="104" width="22" height="176" /> <!-- M9: 44k -->
            <rect x="390" y="80"  width="22" height="200" /> <!-- M10: 50k -->
            <rect x="425" y="56"  width="22" height="224" /> <!-- M11: 56k -->
            <rect x="460" y="40"  width="22" height="240" /> <!-- M12: 60k -->
          </g>
          <!-- Three-step burn line: M1–M2 £48k (y=88), M3–M9 £53k (y=68), M10–M12 £58k (y=48). -->
          <line x1="40" y1="88" x2="132" y2="88" stroke="#000000" stroke-width="1.6" stroke-dasharray="5 3" />
          <line x1="132" y1="88" x2="132" y2="68" stroke="#000" stroke-width="1" stroke-dasharray="2 2" />
          <line x1="132" y1="68" x2="412" y2="68" stroke="#000000" stroke-width="1.6" stroke-dasharray="5 3" />
          <line x1="412" y1="68" x2="412" y2="48" stroke="#000" stroke-width="1" stroke-dasharray="2 2" />
          <line x1="412" y1="48" x2="482" y2="48" stroke="#000000" stroke-width="1.6" stroke-dasharray="5 3" />
          <text x="46" y="84" font-family="Inter, sans-serif" font-size="10" font-weight="600" fill="#000">BURN £48k</text>
          <text x="138" y="64" font-family="Inter, sans-serif" font-size="10" font-weight="600" fill="#000">£53k (i)</text>
          <text x="418" y="44" font-family="Inter, sans-serif" font-size="10" font-weight="600" fill="#000">£58k (ii)</text>
          <!-- Break-even marker at M12 -->
          <line x1="471" y1="40" x2="471" y2="280" stroke="#999" stroke-width="0.6" stroke-dasharray="2 3" />
          <text x="475" y="30" font-family="Inter, sans-serif" font-size="9" fill="#666" text-anchor="end">Break-even · M12</text>
        </svg>
        <div class="visual-caption">Monthly MRR (bars) vs. monthly burn (dashed line)</div>
      </div>
      <div class="meta">
        <h3>Subscriptions only.</h3>
        <p class="lead">Solo £500 a month, Office £2,000 a month from month four, Annual £6,000 a year. A free tier
          capped at 50 stays in place for early evangelists and KOLs. £60k closing MRR is the M12 target: <strong>100
            Solo + 5 Office customer relationships, 105 Pi devices to support.</strong></p>
        <div class="grid">
          <div class="row"><span class="k">Cash at incorporation</span><span class="v">£5,000</span></div>
          <div class="row"><span class="k">Cash after raise</span><span class="v">£355,000</span></div>
          <div class="row"><span class="k">Capex at M0</span><span class="v">£34,000</span></div>
          <div class="row"><span class="k">Cash after capex</span><span class="v">£321,000</span></div>
          <div class="row"><span class="k">Burn (M1–M2 / M3–M9 / M10+)</span><span class="v">£48k / £53k / £58k</span>
          </div>
          <div class="row"><span class="k">MRR · Month 6</span><span class="v">£24,000</span></div>
          <div class="row"><span class="k">MRR · Month 12</span><span class="v">£60,000</span></div>
          <div class="row"><span class="k">Customers · M12 (Solo / Office)</span><span class="v">100 / 5</span></div>
          <div class="row"><span class="k">Break-even month</span><span class="v">M12</span></div>
          <div class="row"><span class="k">Cash · Month 12</span><span class="v">£36,000</span></div>
        </div>
      </div>
    </div>

    <section class="block">
      <h2>Beyond Year 1.</h2>
      <div class="horizon-wrap">
      <table class="horizon">
        <thead>
          <tr>
            <th class="l">Horizon</th>
            <th class="l">Funding state</th>
            <th>Paying agents</th>
            <th>ARR target</th>
            <th class="l">What it means</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td class="l">Y1 close (M12)</td>
            <td class="l">Round 1 deployed</td>
            <td>105 (100 Solo + 5 Office)</td>
            <td>£0.72m (£60k MRR)</td>
            <td class="l">Loop integration proven; Muvin (Adam &amp; Jamie) and Beacons (Alex) both running as
              founder-operated pilots; 100+ production systems live across the customer base.</td>
          </tr>
          <tr>
            <td class="l">Y2 close (M24)</td>
            <td class="l">Round 2 (M9, £1m) deployed</td>
            <td>~500</td>
            <td>£3m</td>
            <td class="l">Every UK property CRM integrated; marketing into the full UK estate-agency workforce; senior
              hires added on top of the Y1 junior engineer (senior platform engineer, head of customer success, head of
              growth); {{ BRAND_NAME }} established as the operating layer.</td>
          </tr>
          <tr>
            <td class="l">Y3 (M25+)</td>
            <td class="l">Internationalisation round</td>
            <td>&mdash;</td>
            <td>&mdash;</td>
            <td class="l">International expansion. Primary candidate: North America. Same conversational architecture;
              different CRM landscape; the playbook is replicable.</td>
          </tr>
        </tbody>
      </table>
      </div>
    </section>

    <div class="page-num">Page 6 / 7</div>
  </section>

  <div class="page-break"></div>

  <!-- ─────────────── PAGE 4 ─────────────── -->
  <section class="page">

    <div class="topbar repeat">
      <span class="brand"><img class="mark" src="{{ BRAND_ICON }}" alt="{{ BRAND_NAME }}"> {{ BRAND_NAME }}</span>
      <span class="meta">Prospectus &middot; {{ DOC_MONTH_YEAR }} &middot; Private</span>
    </div>

    <div class="tables-row">
      <div class="data-table">
        <h3>Use of funds.</h3>
        <table>
          <thead>
            <tr>
              <th class="l">Bucket</th>
              <th>%</th>
              <th>£</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td class="l">Product &amp; engineering</td>
              <td>40%</td>
              <td>£140,000</td>
            </tr>
            <tr>
              <td class="l">Business development &amp; GTM (events, training delivery, travel)</td>
              <td>30%</td>
              <td>£105,000</td>
            </tr>
            <tr>
              <td class="l">Infrastructure &amp; operations (hosting, compute, Pi inventory)</td>
              <td>15%</td>
              <td>£52,500</td>
            </tr>
            <tr>
              <td class="l">Working capital, legal &amp; compliance (corporate, data, AI regs, SEIS/EIS)</td>
              <td>15%</td>
              <td>£52,500</td>
            </tr>
            <tr class="total">
              <td class="l">Total raise</td>
              <td>100%</td>
              <td>{{ ROUND_SIZE }}</td>
            </tr>
          </tbody>
        </table>
      </div>
      <div class="data-table">
        <h3>Founders &middot; post-dilution.</h3>
        <table>
          <thead>
            <tr>
              <th class="l">Founder</th>
              <th>Role</th>
              <th>%</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td class="l">Joel Smalley</td>
              <td>Product, CTO</td>
              <td>24.95%</td>
            </tr>
            <tr>
              <td class="l">Adam Mackay</td>
              <td>BD, CEO &middot; Muvin</td>
              <td>24.95%</td>
            </tr>
            <tr>
              <td class="l">Alex Pelosi-Buchanan</td>
              <td>Distribution</td>
              <td>16.00%</td>
            </tr>
            <tr>
              <td class="l">Jamie Fisher</td>
              <td>Pilot &middot; Muvin</td>
              <td>7.10%</td>
            </tr>
            <tr>
              <td class="l">Roger Black / Steve Backley</td>
              <td>BackelyBlack Distribution</td>
              <td>7.00%</td>
            </tr>
            <tr class="total">
              <td class="l">Founders</td>
              <td>&mdash;</td>
              <td>{{ FOUNDERS_PCT }}</td>
            </tr>
            <tr>
              <td class="l">New investors (this round)</td>
              <td>&mdash;</td>
              <td>{{ NEW_INVESTOR_PCT }}</td>
            </tr>
          </tbody>
        </table>
      </div>
    </div>

    <section class="block">
      <h2>The team.</h2>
      <p class="no-dropcap"><strong>Joel Smalley</strong> runs product and engineering. He built the underlying architecture of the
        platform from the ground up and assigns the {{ BRAND_NAME }} version to {{ COMPANY_LEGAL_NAME }} at incorporation, with
        full, exclusive rights. Joel also runs <em>The Maxy
          Institute</em>, where he teaches professionals &mdash; solicitors, accountants, architects, recruiters, estate
        agents, etc. &mdash; how to use
        AI effectively in their day-to-day work.</p>
      <p><strong>Adam Mackay</strong> runs sales and business development. He is a working estate agent and co-founder
        of <em>Muvin</em> with Jamie Fisher. Adam, Jamie, Alex Pelosi-Buchanan, Roger Black and Steve Backley work
        together informally as <em>Real Agency</em>, an estate agency network, offering elite coaching and access to
        network products, like {{ BRAND_NAME }}.</p>
      <p><strong>Two founder-operated pilots run concurrently from week 1: Muvin and Beacons.</strong>
        <em>Muvin</em> (Adam &amp; Jamie Fisher) is the first agency on the platform. <em>Beacons</em> (Alex
        Pelosi-Buchanan's own agency) is the second, running in parallel. Both are real, paying estate-agency businesses
        operated by {{ BRAND_NAME }} founders &mdash; demonstrating that the people promoting the product are active users
        of it. They generate the first case studies; they are not the funnel itself.
      </p>
    </section>

    <section class="block">
      <h2>Headcount cover.</h2>
      <p>The plan above is Joel and Adam only at start. Two founders can comfortably serve 10 paying users. Past that,
        a product engineer (i) joins around month 3 (forward deployment, support, training, dev support); a customer success
        hire (ii) joins around month 10, coinciding with Round 2 close. Each hire fires when the paying-user count justifies
        it.</p>
    </section>

    <div class="page-num">Page 7 / 7</div>

  </section>

</body>

</html>