zoe-pitches/evergreen-business-plan/index.html

936 lines
62 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="Evergreen — a warm AI voice that calls an aging parent every morning, screens what she hears on her calls for scam patterns and texts the family; licensed emergency response is the partner path ahead. Business plan.">
<meta name="color-scheme" content="light dark">
<meta name="robots" content="noindex, nofollow">
<link rel="icon" href="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20100%20100'%3E%3Ctext%20y='.9em'%20font-size='90'%3E%F0%9F%8C%BF%3C/text%3E%3C/svg%3E">
<title>Evergreen — Business Plan</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=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,500;0,9..144,600;1,9..144,400;1,9..144,500&family=Mulish:ital,wght@0,400;0,500;0,600;0,700;0,800&display=swap" rel="stylesheet">
<style>
:root {
--bg: #F3EBD9;
--surface: #FFFDF8;
--surface-2: #F6EFE0;
--ink: #1F2C25;
--muted: #55665C;
--faint: #8A9187;
--line: #E4DCC8;
--line-strong: #D6CCB2;
--brand: #22543D; /* forest — primary */
--brand-soft: #E5EEE6;
--brand-strong: #173B2B;
--accent: #C9821F; /* gold-deep — AA on cream */
--accent-soft: #F8ECD4;
--good: #2F9E5F;
--good-soft: #E2F0E6;
--warn: #B5730F;
--warn-soft: #F7EBD1;
--slate: #6B7A6F;
--slate-soft: #E9E4D6;
--rose: #C2553F;
--rose-deep: #9E3F2C;
--shadow: 0 1px 2px rgba(23,59,43,.05), 0 10px 30px rgba(23,59,43,.08);
--shadow-lg: 0 2px 6px rgba(23,59,43,.08), 0 26px 62px rgba(23,59,43,.16);
--radius: 18px;
--maxw: 1120px;
--serif: "Fraunces", "Iowan Old Style", Palatino, Georgia, serif;
--sans: "Mulish", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
--mono: ui-monospace, "SF Mono", "JetBrains Mono", "Roboto Mono", Menlo, monospace;
}
@media (prefers-color-scheme: dark) {
:root {
--bg: #0E1712;
--surface: #14201A;
--surface-2: #1A2820;
--ink: #EBF1EA;
--muted: #A3B0A6;
--faint: #74847A;
--line: #26332B;
--line-strong: #35443A;
--brand: #7FB891;
--brand-soft: #182821;
--brand-strong: #A7D2B4;
--accent: #E0A44C;
--accent-soft: #2A2213;
--good: #4FBB7E;
--good-soft: #14261C;
--warn: #DDA24C;
--warn-soft: #2A2211;
--slate: #93A398;
--slate-soft: #202B24;
--rose: #D97359;
--rose-deep: #E08a72;
--shadow: 0 1px 2px rgba(0,0,0,.35), 0 10px 30px rgba(0,0,0,.4);
--shadow-lg: 0 2px 8px rgba(0,0,0,.45), 0 30px 70px rgba(0,0,0,.55);
}
}
:root[data-theme="light"] {
--bg:#F3EBD9; --surface:#FFFDF8; --surface-2:#F6EFE0; --ink:#1F2C25; --muted:#55665C;
--faint:#8A9187; --line:#E4DCC8; --line-strong:#D6CCB2; --brand:#22543D; --brand-soft:#E5EEE6;
--brand-strong:#173B2B; --accent:#C9821F; --accent-soft:#F8ECD4; --good:#2F9E5F; --good-soft:#E2F0E6;
--warn:#B5730F; --warn-soft:#F7EBD1; --slate:#6B7A6F; --slate-soft:#E9E4D6; --rose:#C2553F; --rose-deep:#9E3F2C;
--shadow:0 1px 2px rgba(23,59,43,.05),0 10px 30px rgba(23,59,43,.08);
--shadow-lg:0 2px 6px rgba(23,59,43,.08),0 26px 62px rgba(23,59,43,.16);
}
:root[data-theme="dark"] {
--bg:#0E1712; --surface:#14201A; --surface-2:#1A2820; --ink:#EBF1EA; --muted:#A3B0A6;
--faint:#74847A; --line:#26332B; --line-strong:#35443A; --brand:#7FB891; --brand-soft:#182821;
--brand-strong:#A7D2B4; --accent:#E0A44C; --accent-soft:#2A2213; --good:#4FBB7E; --good-soft:#14261C;
--warn:#DDA24C; --warn-soft:#2A2211; --slate:#93A398; --slate-soft:#202B24; --rose:#D97359; --rose-deep:#E08A72;
--shadow:0 1px 2px rgba(0,0,0,.35),0 10px 30px rgba(0,0,0,.4);
--shadow-lg:0 2px 8px rgba(0,0,0,.45),0 30px 70px rgba(0,0,0,.55);
}
* { box-sizing: border-box; }
body {
margin: 0; background: var(--bg); color: var(--ink);
font-family: var(--sans); font-size: 17px; line-height: 1.6;
-webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility;
overflow-x: hidden;
}
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
.wrap { max-width: var(--maxw); margin: 0 auto; padding: 0 24px; }
section { padding: 76px 0; border-top: 1px solid var(--line); scroll-margin-top: 68px; }
section:first-of-type { border-top: none; }
/* ---------- sticky nav + reading progress ---------- */
.progress { position: fixed; top: 0; left: 0; height: 3px; width: 0; z-index: 60;
background: linear-gradient(90deg, var(--brand), var(--accent)); }
.topnav { position: sticky; top: 0; z-index: 50;
background: color-mix(in srgb, var(--bg) 80%, transparent);
backdrop-filter: saturate(1.5) blur(14px); -webkit-backdrop-filter: saturate(1.5) blur(14px);
border-bottom: 1px solid var(--line); }
.topnav .in { max-width: var(--maxw); margin: 0 auto; padding: 11px 24px; display: flex; align-items: center; gap: 16px; }
.topnav .nb { display: flex; align-items: center; gap: 9px; font-weight: 800; font-size: 16px; letter-spacing: -0.01em; font-family: var(--serif); }
.topnav .nb .m { width: 24px; height: 24px; border-radius: 7px; flex: none;
background: linear-gradient(150deg, var(--brand), var(--brand-strong)); color: #fff;
display: grid; place-items: center; font-size: 13px; font-weight: 700; font-family: var(--serif); }
.topnav nav { margin-left: auto; display: flex; gap: 2px; }
.topnav nav a { font-family: var(--mono); font-size: 12px; letter-spacing: .02em; color: var(--muted);
text-decoration: none; padding: 6px 10px; border-radius: 7px; white-space: nowrap; transition: background .15s, color .15s; }
.topnav nav a:hover { color: var(--ink); background: var(--surface-2); }
.topnav .cta { font-family: var(--sans); font-size: 13px; font-weight: 700; color: #fff;
background: var(--brand); padding: 7px 13px; border-radius: 8px; text-decoration: none; white-space: nowrap; }
.topnav .cta:hover { background: var(--brand-strong); }
@media (max-width: 860px) { .topnav nav { display: none; } .topnav .nb { margin-right: auto; } }
h1, h2, h3 { font-family: var(--serif); text-wrap: balance; letter-spacing: -0.015em; line-height: 1.08; margin: 0; }
h2 { font-size: clamp(28px, 4vw, 42px); font-weight: 600; color: var(--brand-strong); }
h3 { font-size: 20px; font-weight: 600; letter-spacing: -0.005em; }
p { margin: 0; }
a { color: var(--brand-strong); text-decoration-color: color-mix(in srgb, var(--brand) 40%, transparent); text-underline-offset: 3px; }
.eyebrow {
font-family: var(--mono); font-size: 12px; font-weight: 600;
letter-spacing: 0.16em; text-transform: uppercase; color: var(--accent);
}
.lede { font-size: clamp(18px, 2.2vw, 21px); color: var(--muted); max-width: 64ch; margin-top: 4px; }
.lede b { color: var(--ink); font-weight: 700; }
/* ---------- Hero ---------- */
.hero { position: relative; overflow: hidden; padding: 84px 0 70px; border-top: none; }
.hero::before {
content: ""; position: absolute; inset: -40% 26% auto -12%; height: 640px;
background: radial-gradient(52% 60% at 30% 30%, color-mix(in srgb, var(--brand) 24%, transparent), transparent 70%);
filter: blur(10px); pointer-events: none; z-index: 0;
}
.hero::after {
content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none;
background-image: linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);
background-size: 46px 46px;
-webkit-mask-image: radial-gradient(70% 60% at 74% 18%, #000, transparent 75%);
mask-image: radial-gradient(70% 60% at 74% 18%, #000, transparent 75%);
opacity: .5;
}
.hero .wrap { position: relative; z-index: 1; }
.brandrow { display: flex; align-items: center; gap: 12px; margin-bottom: 28px; }
.mark {
width: 36px; height: 36px; border-radius: 10px; flex: none;
background: linear-gradient(150deg, var(--brand), var(--brand-strong));
display: grid; place-items: center; color: #fff; font-weight: 700; font-size: 19px; font-family: var(--serif);
box-shadow: 0 6px 16px color-mix(in srgb, var(--brand) 45%, transparent);
}
.brandname { font-weight: 700; font-family: var(--serif); letter-spacing: -0.01em; font-size: 19px; }
.brandname span { color: var(--faint); font-weight: 500; font-family: var(--sans); font-size: 15px; }
.hero h1 {
font-size: clamp(40px, 7.4vw, 74px); font-weight: 600; letter-spacing: -0.025em;
margin: 10px 0 0; color: var(--brand-strong);
}
.hero h1 em { font-style: italic; color: var(--rose-deep); }
.hero .thesis { margin-top: 26px; font-size: clamp(19px, 2.4vw, 23px); line-height: 1.45; max-width: 52ch; color: var(--ink); font-weight: 500; font-family: var(--sans); }
.hero .thesis b { font-weight: 700; }
.herometa { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 30px; align-items: center; }
.badge {
display: inline-flex; align-items: center; gap: 7px;
font-family: var(--mono); font-size: 12.5px; font-weight: 600; letter-spacing: .02em;
padding: 7px 12px; border-radius: 999px; border: 1px solid var(--line-strong);
background: var(--surface); color: var(--muted);
}
.badge .dot { width: 8px; height: 8px; border-radius: 50%; background: var(--good); box-shadow: 0 0 0 3px var(--good-soft); }
.badge.live { color: var(--good); border-color: color-mix(in srgb, var(--good) 40%, var(--line-strong)); }
/* fade-up */
.fu { opacity: 0; transform: translateY(14px); animation: fu .7s cubic-bezier(.2,.7,.2,1) forwards; }
.fu.d1{animation-delay:.05s}.fu.d2{animation-delay:.13s}.fu.d3{animation-delay:.22s}.fu.d4{animation-delay:.32s}.fu.d5{animation-delay:.42s}
@keyframes fu { to { opacity: 1; transform: none; } }
@media (prefers-reduced-motion: reduce) { .fu { animation: none; opacity: 1; transform: none; } }
/* ---------- metric strip ---------- */
.metrics {
display: grid; grid-template-columns: repeat(5, 1fr); gap: 0;
margin-top: 48px; border: 1px solid var(--line); border-radius: var(--radius);
background: var(--surface); box-shadow: var(--shadow); overflow: hidden;
}
.metric { padding: 22px 20px; border-left: 1px solid var(--line); }
.metric:first-child { border-left: none; }
.metric .n { font-family: var(--serif); font-size: 30px; font-weight: 600; letter-spacing: -0.02em; color: var(--brand); font-variant-numeric: tabular-nums; }
.metric .n .u { color: var(--accent); }
.metric .l { font-family: var(--mono); font-size: 11.5px; letter-spacing: .05em; text-transform: uppercase; color: var(--faint); margin-top: 6px; line-height: 1.35; }
/* ---------- generic grid ---------- */
.grid { display: grid; gap: 18px; }
.g2 { grid-template-columns: repeat(2, 1fr); }
.g3 { grid-template-columns: repeat(3, 1fr); }
.g4 { grid-template-columns: repeat(2, 1fr); }
.card {
background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius);
padding: 24px; box-shadow: var(--shadow);
}
.card h3 { margin-bottom: 8px; color: var(--brand-strong); }
.card p { color: var(--muted); font-size: 15.5px; }
.card p b { color: var(--ink); }
.card .ic { font-size: 22px; margin-bottom: 12px; display: inline-grid; place-items: center; width: 46px; height: 46px; border-radius: 13px; }
.ic.grn { background: rgba(63,122,90,.14); color: var(--good); }
.ic.gld { background: rgba(201,130,31,.16); color: var(--accent); }
.ic.ros { background: rgba(194,85,63,.15); color: var(--rose-deep); }
.ic.fst { background: rgba(23,59,43,.10); color: var(--brand); }
.tag {
display: inline-block; font-family: var(--mono); font-size: 11px; font-weight: 600;
letter-spacing: .04em; text-transform: uppercase; padding: 3px 8px; border-radius: 6px;
background: var(--brand-soft); color: var(--brand-strong); margin-right: 6px; margin-top: 10px;
}
.sechead { max-width: 64ch; margin-bottom: 40px; }
.sechead h2 { margin: 12px 0 14px; }
/* stat band */
.statband { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; margin-top: 8px; }
.statband .card { padding: 26px 24px; }
.statband .big { font-family: var(--serif); font-size: 42px; font-weight: 600; letter-spacing: -0.02em; color: var(--brand); font-variant-numeric: tabular-nums; }
.statband .cap { color: var(--muted); font-size: 15px; margin-top: 6px; }
.statband .cap b { color: var(--ink); }
/* why-list */
.why { display: grid; gap: 14px; }
.whyrow {
display: grid; grid-template-columns: 44px 1fr; gap: 18px; align-items: start;
padding: 22px 24px; background: var(--surface); border: 1px solid var(--line);
border-radius: var(--radius); box-shadow: var(--shadow);
}
.whyrow .num { font-family: var(--serif); font-weight: 600; font-size: 18px; color: #fff; background: var(--brand);
border-radius: 11px; width: 44px; height: 44px; display: grid; place-items: center; }
.whyrow.red .num { background: var(--rose-deep); }
.whyrow h3 { margin-bottom: 5px; color: var(--brand-strong); }
.whyrow p { color: var(--muted); font-size: 15.5px; }
.whyrow p b { color: var(--ink); }
/* status table */
.tablewrap { overflow-x: auto; -webkit-overflow-scrolling: touch; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow); background: var(--surface); }
table { border-collapse: collapse; width: 100%; min-width: 640px; font-size: 15px; }
thead th {
text-align: left; font-family: var(--mono); font-size: 11.5px; letter-spacing: .06em;
text-transform: uppercase; color: var(--faint); font-weight: 600;
padding: 15px 18px; border-bottom: 1px solid var(--line); background: var(--surface-2);
}
tbody td { padding: 15px 18px; border-bottom: 1px solid var(--line); vertical-align: top; }
tbody tr:last-child td { border-bottom: none; }
td.feat { font-weight: 700; }
td.note { color: var(--muted); font-size: 14px; }
td.note b { color: var(--ink); }
.pill {
display: inline-flex; align-items: center; gap: 6px; font-family: var(--mono);
font-size: 11.5px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase;
padding: 4px 10px; border-radius: 999px; white-space: nowrap;
}
.pill .d { width: 7px; height: 7px; border-radius: 50%; }
.pill.live { background: var(--good-soft); color: var(--good); }
.pill.live .d { background: var(--good); }
.pill.next { background: var(--accent-soft); color: var(--warn); }
.pill.next .d { background: var(--warn); }
/* competitive matrix marks */
table td.c, table th.c { text-align: center; white-space: nowrap; }
th.me, td.me { background: var(--brand-soft); }
th.me { color: var(--brand-strong) !important; }
td.me { font-weight: 700; }
.mk { font-weight: 800; font-size: 15px; font-family: var(--mono); }
.mk.y { color: var(--good); }
.mk.p { color: var(--accent); }
.mk.n { color: var(--faint); font-weight: 500; }
.legend { display: flex; gap: 18px; flex-wrap: wrap; margin-top: 12px; font-size: 13px; color: var(--muted); }
.legend span b { font-family: var(--mono); }
/* revenue / economics cards */
.rev { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.rev .card { display: flex; flex-direction: column; }
.er { display: flex; justify-content: space-between; align-items: baseline; gap: 14px; padding: 10px 0; border-bottom: 1px dashed var(--line); font-size: 15.5px; }
.er:last-of-type { border-bottom: none; }
.er span:first-child { color: var(--muted); }
.er .v { font-family: var(--serif); font-weight: 600; font-size: 18px; color: var(--brand); }
.er.tot { border-top: 2px solid var(--brand); border-bottom: none; margin-top: 6px; padding-top: 13px; }
.er.tot .v { font-size: 22px; }
.er.red .v { color: var(--rose-deep); }
.revpill { display:inline-block; font-family: var(--mono); font-size: 11px; font-weight: 700; letter-spacing:.04em; text-transform: uppercase; padding: 3px 9px; border-radius: 6px; margin-bottom: 12px; align-self: flex-start; }
.revpill.now { background: var(--good-soft); color: var(--good); }
.revpill.warn { background: var(--accent-soft); color: var(--warn); }
.revpill.next { background: var(--slate-soft); color: var(--slate); }
.rev .price { font-family: var(--serif); font-size: 30px; font-weight: 600; letter-spacing: -0.02em; margin: 2px 0 4px; color: var(--brand-strong); }
.rev .price small { font-size: 15px; color: var(--faint); font-weight: 500; font-family: var(--sans); }
/* callout */
.callout {
border: 1px solid color-mix(in srgb, var(--brand) 32%, var(--line));
background: linear-gradient(180deg, var(--brand-soft), transparent);
border-radius: var(--radius); padding: 30px 30px;
}
.callout small { font-family: var(--mono); font-size: 11.5px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--accent); }
.callout h3 { color: var(--brand-strong); font-size: 23px; font-weight: 600; line-height: 1.3; margin-top: 10px; }
.callout p { color: var(--muted); margin-top: 10px; max-width: 74ch; font-size: 15.5px; }
.callout p b { color: var(--ink); }
.callout.gold { border-color: color-mix(in srgb, var(--accent) 45%, var(--line)); background: linear-gradient(180deg, var(--accent-soft), transparent); }
.callout.gold small { color: var(--warn); }
.callout.forest { border: none; background: linear-gradient(135deg, var(--brand-strong), var(--brand)); }
.callout.forest small { color: color-mix(in srgb, var(--accent) 75%, #fff); }
.callout.forest h3 { color: #FBF7EE; }
.callout.forest p { color: color-mix(in srgb, #FBF7EE 82%, transparent); }
/* ask / moves */
.moves { display: grid; gap: 14px; margin-top: 8px; }
.move { display: grid; grid-template-columns: auto 1fr auto; gap: 18px; align-items: center;
padding: 20px 22px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); box-shadow: var(--shadow); }
.move .rk { font-family: var(--mono); font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; padding: 5px 10px; border-radius: 7px; white-space: nowrap; }
.move.p1 .rk { background: var(--brand); color: #fff; }
.move.p2 .rk { background: var(--accent-soft); color: var(--warn); }
.move.p3 .rk { background: var(--slate-soft); color: var(--slate); }
.move h3 { font-size: 18px; margin-bottom: 3px; color: var(--brand-strong); }
.move p { color: var(--muted); font-size: 15px; }
.move p b { color: var(--ink); }
.move .eff { font-family: var(--mono); font-size: 12px; color: var(--faint); text-align: right; white-space: nowrap; }
/* gaps (risks) */
.gaps { display: grid; grid-template-columns: repeat(2,1fr); gap: 14px; }
.gap { display: grid; grid-template-columns: 26px 1fr; gap: 14px; padding: 18px 20px;
border: 1px solid var(--line); border-left: 3px solid var(--accent); border-radius: 12px; background: var(--surface); }
.gap .g { color: var(--accent); font-weight: 700; }
.gap b { font-weight: 700; color: var(--ink); }
.gap p { color: var(--muted); font-size: 14.5px; margin-top: 3px; }
.gap p b { color: var(--brand-strong); }
.gap.tbd { border-left-color: var(--slate); }
.gap.tbd .g { color: var(--slate); }
/* exec summary block */
.exec { border: 1px solid color-mix(in srgb, var(--brand) 28%, var(--line));
border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-lg); }
.exec .top { padding: 30px 30px 26px; background: linear-gradient(180deg, var(--brand-soft), transparent); }
.exec .top p { font-size: 17px; color: var(--ink); max-width: 78ch; }
.exec .top p + p { margin-top: 12px; color: var(--muted); }
.exec .top p b { font-weight: 700; }
.exec .rows { display: grid; grid-template-columns: repeat(2, 1fr); }
.exec .kv { display: grid; grid-template-columns: 140px 1fr; gap: 16px; padding: 16px 30px;
border-top: 1px solid var(--line); align-items: baseline; }
.exec .kv:nth-child(odd) { border-right: 1px solid var(--line); }
.exec .kv .k { font-family: var(--mono); font-size: 11.5px; letter-spacing: .06em; text-transform: uppercase; color: var(--accent); }
.exec .kv .v { font-size: 15px; color: var(--ink); }
.exec .kv .v b { font-weight: 700; }
/* funnel */
.funnel { display: flex; flex-direction: column; gap: 8px; margin-top: 8px; }
.fstage { border: 1px solid var(--line); border-left: 3px solid var(--brand); border-radius: 10px;
background: var(--surface); padding: 14px 18px; box-shadow: var(--shadow); }
.fstage .s { font-family: var(--mono); font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: var(--accent); }
.fstage h3 { font-size: 17px; margin: 3px 0 2px; color: var(--brand-strong); }
.fstage p { color: var(--muted); font-size: 14.5px; }
.fstage:nth-child(1) { width: 100%; }
.fstage:nth-child(2) { width: 92%; }
.fstage:nth-child(3) { width: 84%; }
.fstage:nth-child(4) { width: 76%; }
@media (max-width: 700px) { .fstage { width: 100% !important; } }
/* milestone timeline */
.timeline { display: grid; gap: 0; }
.tl { display: grid; grid-template-columns: 130px 1fr; gap: 22px; padding: 18px 0; border-top: 1px solid var(--line); }
.tl:first-child { border-top: none; }
.tl .when { font-family: var(--mono); font-size: 12.5px; font-weight: 600; color: var(--accent); letter-spacing: .02em; padding-top: 4px; }
.tl .what h3 { font-size: 17px; margin-bottom: 4px; color: var(--brand-strong); }
.tl .what p { color: var(--muted); font-size: 14.5px; }
.tl .what ul { margin: 6px 0 0; padding-left: 18px; color: var(--muted); font-size: 14.5px; }
.tl .what li { margin-bottom: 3px; }
.tl .now { display: inline-block; font-family: var(--mono); font-size: 10px; font-weight: 700; letter-spacing: .06em;
text-transform: uppercase; color: var(--good); background: var(--good-soft); padding: 2px 7px; border-radius: 5px; margin-left: 8px; vertical-align: middle; }
@media (max-width: 640px) { .tl { grid-template-columns: 1fr; gap: 4px; } }
/* closing line */
.closing { text-align: center; padding: 20px 0 0; }
.closing .big { font-family: var(--serif); font-size: clamp(34px, 6vw, 52px); font-weight: 600; color: var(--brand-strong); line-height: 1.05; }
.closing .tg { font-family: var(--serif); font-style: italic; font-size: clamp(19px, 3vw, 24px); color: var(--moss, var(--brand)); margin-top: 10px; }
.note { font-size: 13px; color: var(--faint); margin-top: 14px; line-height: 1.5; max-width: 90ch; }
footer { border-top: 1px solid var(--line); padding: 44px 0 60px; color: var(--faint); font-size: 14px; }
footer .wrap { display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap; align-items: center; }
.foot-mono { font-family: var(--mono); font-size: 12.5px; }
@media (max-width: 860px) {
.metrics { grid-template-columns: repeat(2, 1fr); }
.metric:nth-child(odd) { border-left: none; }
.metric { border-top: 1px solid var(--line); }
.metric:nth-child(1), .metric:nth-child(2) { border-top: none; }
.g2, .g3, .g4, .rev, .statband, .gaps { grid-template-columns: 1fr; }
.exec .rows { grid-template-columns: 1fr; }
.exec .kv:nth-child(odd) { border-right: none; }
.move { grid-template-columns: auto 1fr; }
.move .eff { grid-column: 2; text-align: left; }
}
@media (max-width: 520px) {
.metrics { grid-template-columns: 1fr; }
.metric { border-left: none; border-top: 1px solid var(--line); }
.metric:first-child { border-top: none; }
.whyrow { grid-template-columns: 36px 1fr; gap: 14px; padding: 18px; }
}
/* ---------- print / PDF ---------- */
@media print {
:root, :root[data-theme="dark"] {
--bg:#fff; --surface:#fff; --surface-2:#f6efe0; --ink:#1f2c25; --muted:#3f4c44;
--faint:#6b7a6f; --line:#e0d8c4; --line-strong:#cfc4aa; --brand:#22543d; --brand-soft:#eaf1ea;
--brand-strong:#173b2b; --accent:#a9690a; --accent-soft:#f6ecd4; --good:#1f7a48; --good-soft:#e2f0e6;
--warn:#8a5a0c; --warn-soft:#f7ebd1; --slate:#5a685e; --slate-soft:#ece6d8; --shadow:none; --shadow-lg:none;
}
* { -webkit-print-color-adjust: exact !important; print-color-adjust: exact !important; }
.progress, .topnav { display: none !important; }
.hero::before, .hero::after { display: none !important; }
.fu { animation: none !important; opacity: 1 !important; transform: none !important; }
body { font-size: 11.5pt; background: #fff; }
section { padding: 20px 0; }
.hero { padding: 8px 0 16px; }
.hero h1 { font-size: 34pt; }
.card, .whyrow, .move, .gap, .callout, .rev .card, .statband .card, .metric, tr, thead, .fstage, .tl {
break-inside: avoid; page-break-inside: avoid;
}
h2, h3 { page-break-after: avoid; }
.metrics, .tablewrap, .card { box-shadow: none; }
@page { margin: 13mm; }
}
</style>
</head>
<body>
<div class="progress" id="progress" aria-hidden="true"></div>
<div class="topnav">
<div class="in">
<span class="nb"><span class="m">E</span>Evergreen</span>
<nav aria-label="Sections">
<a href="#summary">Summary</a>
<a href="#product">Product</a>
<a href="#market">Market</a>
<a href="#competition">Competition</a>
<a href="#model">Economics</a>
<a href="#safety">Safety</a>
<a href="#ask">The ask</a>
</nav>
<a class="cta" href="https://evergreen-prototype.mosaic.site/?demo=family" target="_blank" rel="noopener">Live&nbsp;demo&nbsp;↗</a>
</div>
</div>
<header class="hero">
<div class="wrap">
<div class="brandrow fu d1">
<div class="mark">E</div>
<div class="brandname">Evergreen <span>· a Nucleus + Fibernetics company</span></div>
</div>
<div class="eyebrow fu d1">Business Plan &nbsp;·&nbsp; Confidential &nbsp;·&nbsp; August 2026</div>
<h1 class="fu d2">Your mother goes days without a real conversation. <em>Who's checking in?</em></h1>
<p class="thesis fu d3">Evergreen is a warm AI voice that calls every morning — today on a simple tablet or browser, built to grow onto the phone she already owns. Iris <b>screens what she hears on her calls for scam patterns</b> and tells the family; reaching a <b>licensed human</b> in an emergency is the partner path ahead. The daily call is why she answers; the safety net is why the family pays. The call, the screening and the family alerts are <b>built and live</b> today.</p>
<div class="herometa fu d4">
<span class="badge live"><span class="dot"></span>Built · live in prototype</span>
<span class="badge">Canada-first · carrier-distributed</span>
<span class="badge">Simple tablet or browser · nothing to install</span>
<span class="badge">~81% gross margin</span>
</div>
<div class="metrics fu d5">
<div class="metric"><div class="n">57<span class="u">%</span></div><div class="l">Of Canadians 50+<br>report loneliness</div></div>
<div class="metric"><div class="n">1.1<span class="u">M</span></div><div class="l">Older Canadians<br>lonely · ~1 in 5</div></div>
<div class="metric"><div class="n">8.1<span class="u">M</span></div><div class="l">Canadians 65+<br>~28% live alone</div></div>
<div class="metric"><div class="n">$138<span class="u">M</span></div><div class="l">CA 60+ scam losses<br>in 2024</div></div>
<div class="metric"><div class="n">~81<span class="u">%</span></div><div class="l">Gross margin<br>today</div></div>
</div>
</div>
</header>
<!-- EXECUTIVE SUMMARY -->
<section id="summary">
<div class="wrap">
<div class="sechead">
<div class="eyebrow">01 · Executive summary</div>
<h2>The whole plan, on one page.</h2>
</div>
<div class="exec">
<div class="top">
<p><b>Evergreen gives an aging parent a daily companion</b> — today on a simple tablet or browser, built to grow onto her own phone — that screens what it hears on her calls for scam patterns and texts the family; reaching a licensed human in an emergency is the partner path ahead. A warm voice — Iris — calls every morning, and everything she notices lands in one family dashboard that fills itself.</p>
<p>It is not a concept. The voice, the safety backstop, the honest first-call introduction, and the dashboard all <b>run in a working prototype today</b>. What's left before launch is a licensed 24/7 monitoring partner, the stored consent record and the legal wrapper — not the product. Pre-revenue; the monitoring partner is not yet signed.</p>
</div>
<div class="rows">
<div class="kv"><div class="k">The problem</div><div class="v"><b>Days of silence.</b> 57% of Canadians 50+ are lonely and their children live cities away. Pendants wait for a fall; free apps wait to be opened.</div></div>
<div class="kv"><div class="k">The product</div><div class="v"><b>One warm voice.</b> A morning call, scam screening of what she hears, family alerts, and a dashboard that fills itself — with her own phone, in-network screening and a licensed safety net on the roadmap.</div></div>
<div class="kv"><div class="k">Where we are</div><div class="v"><b>Built &amp; live today.</b> Everything the family experiences is real and running. Pre-revenue; monitoring partner not yet signed.</div></div>
<div class="kv"><div class="k">Why us</div><div class="v"><b>Trust is the category.</b> A roadmap to carrier-native call control an app can't copy, plus six months of knowing what "a good morning" sounds like for her.</div></div>
<div class="kv"><div class="k">The model</div><div class="v"><b>~81% gross margin.</b> Basic $100 · Full $200 · Unlimited (BYO&nbsp;key) $125 per month — priced at the real, AI-inclusive cost to serve.</div></div>
<div class="kv"><div class="k">The ask</div><div class="v"><b>Two weeks of lawyers, then ship.</b> A legal-architecture sprint + a signed monitoring partner, then a small team to reach the first Canadian families.</div></div>
</div>
</div>
<div class="callout" style="margin-top:20px">
<small>The one line</small>
<h3>Everyone sells one slice — a device, a robot, or a spam blocker. Evergreen brings companionship, scam screening and emergency escalation together in one warm voice — built to grow onto the phone she already owns.</h3>
</div>
</div>
</section>
<!-- MARKET / WHY NOW -->
<section id="market">
<div class="wrap">
<div class="sechead">
<div class="eyebrow">02 · Market &amp; why now</div>
<h2>Canadian seniors are lonely, and their children are three cities away.</h2>
<p class="lede">We're a Canadian carrier, so here's the Canadian case — <b>and it's stronger than the American one.</b> Loneliness erodes an aging parent every day, and it's the thing no free app or pendant actually touches.</p>
</div>
<div class="statband">
<div class="card"><div class="big">57%</div><div class="cap">of Canadians 50+ report feeling lonely — <b>and it hasn't improved since 2022.</b></div></div>
<div class="card"><div class="big">1.1M</div><div class="cap">older Canadians live with loneliness — <b>nearly 1 in 5 seniors.</b></div></div>
<div class="card"><div class="big">8.1M</div><div class="cap">Canadians are 65+ today; <b>~28% of them live alone.</b></div></div>
</div>
<div class="callout gold" style="margin-top:22px">
<small>The honest market — sized in Canada, not the US</small>
<h3>TAM 8.1M seniors · SAM ~1.1M lonely or living alone · SOM at just 1% ≈ $97M ARR — on our own network, in our own regulatory home.</h3>
<p>We are not sizing this on the US 65+ population — we don't own a network there and the moat wouldn't travel. And the fraud problem is real money: <b>CA$137.9M in Canadian 60+ scam losses in 2024</b> (40% of all reported losses). The global "AI in elderly care" market is <b>~US$39B (2025) → ~US$90B by 2031 (≈15% CAGR).</b></p>
</div>
<p class="note">Sources: NIA Ageing in Canada Survey · Statistics Canada (2025) · CAFC (2024 60+ fraud losses) · Mordor Intelligence. TAM/SAM/SOM and ARR are <b>illustrative planning assumptions</b> (SOM ≈ $100 Basic × 1% of 8.1M seniors), not a forecast.</p>
</div>
</section>
<!-- PRODUCT -->
<section id="product">
<div class="wrap">
<div class="sechead">
<div class="eyebrow">03 · The product</div>
<h2>A voice she talks to every morning. A dashboard that tells you how it went.</h2>
<p class="lede">Nothing to install. Nothing to learn. Today she talks to Iris on a simple tablet or browser; her own phone and number — <b>even a flip phone</b> — is where the carrier roadmap takes it. Iris does the rest, and everything she notices lands in one place for the family.</p>
</div>
<div class="grid g4">
<div class="card">
<span class="ic gld">☀</span>
<h3>The Morning Call</h3>
<p>Iris says good morning, every day — the ritual she comes to love. It's the whole reason she picks up, and <b>if she doesn't, somebody hears about it.</b></p>
</div>
<div class="card">
<span class="ic grn">🛡</span>
<h3>Scam Shield</h3>
<p>Today Iris screens what she hears on her calls for scam patterns and tells the family. The roadmap moves it into the network, <b>before her phone rings</b> — where an app can't follow.</p>
</div>
<div class="card">
<span class="ic ros">!</span>
<h3>The safety net</h3>
<p>No answer, no interaction — Iris calls. Still nothing, and it escalates on the family's standing order — and to a <b>licensed monitoring partner</b> as we sign one. Alongside a medical alert, never instead.</p>
</div>
<div class="card">
<span class="ic fst">◷</span>
<h3>CareCircle</h3>
<p>The family dashboard that fills itself. Every signal above feeds it live, so <b>nobody has to update anything.</b></p>
</div>
</div>
<div class="callout gold" style="margin-top:18px">
<small>How the tiers work</small>
<h3>Basic is the daily call and the safety net around it.</h3>
<p>StoryLine, Good News and games are the Full tier; the formatted keepsake memoir is a one-time order ($100 for ~80k words, +$10 per extra 50k). Companionship is why she answers the phone; the safety net is why the family trusts it. <b>Basic $100 · Full $200 · Unlimited (bring-your-own-AI-key) $125 — per month.</b></p>
</div>
</div>
</section>
<!-- TRACTION / BUILT & LIVE -->
<section id="traction">
<div class="wrap">
<div class="sechead">
<div class="eyebrow">04 · Traction &amp; status</div>
<h2>We didn't pitch this and wait. We built it — and it's live today.</h2>
<p class="lede">Everything on the product page is running right now: a real voice you can call, a safety net that texts the family on its own, and a dashboard that fills itself. Here's exactly what's built.</p>
</div>
<div class="tablewrap">
<table>
<thead><tr><th>Capability</th><th>Status</th><th>What it is</th></tr></thead>
<tbody>
<tr><td class="feat">Iris, the morning voice</td><td><span class="pill live"><span class="d"></span>Live</span></td><td class="note">A real spoken phone-style call in the browser — speech-to-text, Claude, and a warm synthesized voice — with natural interruption and <b>memory that carries from one morning to the next.</b></td></tr>
<tr><td class="feat">The safety backstop</td><td><span class="pill live"><span class="d"></span>Live</span></td><td class="note">Every call is screened for crisis, scam and emergency language and the <b>family is texted independently of the AI.</b> A second filter checks Iris's own words before Margaret hears them.</td></tr>
<tr><td class="feat">Honest, from the first call</td><td><span class="pill live"><span class="d"></span>Live</span></td><td class="note">Iris says plainly she's an automated voice on the very first call, and any "no" or "stop" is <b>honoured immediately — calls pause and the family is told.</b> The stored, revocable consent record ships with the phone line.</td></tr>
<tr><td class="feat">CareCircle dashboard</td><td><span class="pill live"><span class="d"></span>Live</span></td><td class="note">The family dashboard, filling itself from real check-ins, blocked scams and alerts — nobody updates anything.</td></tr>
<tr><td class="feat">The daily rhythm</td><td><span class="pill live"><span class="d"></span>Live</span></td><td class="note">Plan-aware call limits, a gentle wind-down, and a graceful "that's all for today" that <b>still reaches the family if she's lonely and keeps calling.</b></td></tr>
<tr><td class="feat">Built to be trusted</td><td><span class="pill live"><span class="d"></span>Live</span></td><td class="note">Signed sign-in links, encrypted keys, hardened access — the unglamorous parts a family's trust actually depends on.</td></tr>
<tr><td class="feat">Licensed 24/7 monitoring partner</td><td><span class="pill next"><span class="d"></span>Next</span></td><td class="note">The regulated desk that can dispatch real help is <b>fully designed and specified</b> — signing it is the first gate, before we put this in front of families.</td></tr>
</tbody>
</table>
</div>
<div class="callout" style="margin-top:18px">
<small>The honest status</small>
<h3>You can talk to Iris today — what's left before launch is the licensed safety desk and the legal wrapper, not the product.</h3>
<p>Live in a working prototype — <a href="https://evergreen-prototype.mosaic.site/?demo=family" target="_blank" rel="noopener">try the interactive demo ↗</a> — with a public overview site. <b>No paying customers yet, and the monitoring partner isn't contracted</b> — but everything the family <i>experiences</i> is real and running.</p>
</div>
</div>
</section>
<!-- COMPETITION -->
<section id="competition">
<div class="wrap">
<div class="sechead">
<div class="eyebrow">05 · Competitive analysis</div>
<h2>Three categories, and nobody has combined them.</h2>
<p class="lede">The market splits into medical-alert pendants, AI companions, and scam blockers. <b>No competitor bundles a daily companion, scam screening of her calls, a family dashboard and an emergency escalation path — let alone a carrier roadmap that moves the screening into the network itself.</b></p>
</div>
<div class="tablewrap">
<table>
<thead>
<tr>
<th>Capability</th>
<th class="c me">Evergreen</th>
<th class="c">TELUS LivingWell</th>
<th class="c">ElliQ</th>
<th class="c">Alexa Together&nbsp;†</th>
<th class="c">Scam apps</th>
</tr>
</thead>
<tbody>
<tr><td class="feat">Daily AI companionship, with memory</td><td class="c me"><span class="mk y">●</span></td><td class="c"><span class="mk n">—</span></td><td class="c"><span class="mk y">●</span></td><td class="c"><span class="mk p">partial</span></td><td class="c"><span class="mk n">—</span></td></tr>
<tr><td class="feat">Scam screening (in-call today · in-network on roadmap)</td><td class="c me"><span class="mk y">●</span></td><td class="c"><span class="mk n">—</span></td><td class="c"><span class="mk n">—</span></td><td class="c"><span class="mk n">—</span></td><td class="c"><span class="mk p">app only</span></td></tr>
<tr><td class="feat">Licensed 24/7 emergency dispatch</td><td class="c me"><span class="mk p">planned</span></td><td class="c"><span class="mk y">●</span></td><td class="c"><span class="mk n">—</span></td><td class="c"><span class="mk y">●</span></td><td class="c"><span class="mk n">—</span></td></tr>
<tr><td class="feat">Family dashboard that fills itself</td><td class="c me"><span class="mk y">●</span></td><td class="c"><span class="mk p">app</span></td><td class="c"><span class="mk y">●</span></td><td class="c"><span class="mk y">●</span></td><td class="c"><span class="mk n">—</span></td></tr>
<tr><td class="feat">No device to buy or charge — her own phone</td><td class="c me"><span class="mk p">roadmap</span></td><td class="c"><span class="mk n">pendant</span></td><td class="c"><span class="mk n">robot</span></td><td class="c"><span class="mk n">speaker</span></td><td class="c"><span class="mk y">●</span></td></tr>
<tr><td class="feat">Canada-first, carrier distribution</td><td class="c me"><span class="mk y">●</span></td><td class="c"><span class="mk y">●</span></td><td class="c"><span class="mk n">—</span></td><td class="c"><span class="mk n">—</span></td><td class="c"><span class="mk p">~</span></td></tr>
<tr><td class="feat">Price / month</td><td class="c me">$100–200</td><td class="c">~$35–55</td><td class="c">~$249 + sub</td><td class="c">$19.99 (shut 2023)</td><td class="c">~$5–10</td></tr>
</tbody>
</table>
</div>
<div class="legend">
<span><b class="mk y">●</b> Full</span>
<span><b class="mk p">partial</b> Partial</span>
<span><b class="mk n">—</b> None</span>
</div>
<p class="note">† Amazon Alexa Together discontinued 2023. Evergreen's emergency dispatch runs through a <b>licensed monitoring partner (designed; signing is the first gate)</b>. "planned" / "roadmap" mark the carrier path Evergreen grows into — today Iris's call runs on a simple tablet or browser. Competitor facts from public sources; TELUS figures are promotional (existing-customer, 1-yr term). ElliQ is a US countertop robot; Papa (not shown) is human-companion, sold via US health plans.</p>
</div>
</section>
<!-- THE GRAVEYARD -->
<section id="graveyard">
<div class="wrap">
<div class="sechead">
<div class="eyebrow">06 · The graveyard</div>
<h2>If this is such a good idea, why is the field full of corpses?</h2>
<p class="lede">Fair question. Here are the bodies — and what actually killed each one.</p>
</div>
<div class="grid g2">
<div class="card">
<h3>Alexa Together <span class="tag" style="margin-top:0">$19.99/mo · 2021 → 2025</span></h3>
<p>Amazon had 500M devices, Prime's billing rails, and <b>real EMS dispatch</b> — at a fifth of our price. It died without an obituary, then relaunched the <b>emergency button alone</b> at $5.99, sold to the senior, not the child.</p>
</div>
<div class="card">
<h3>Best Buy Health <span class="tag" style="margin-top:0">$800M in · $475M written off</span></h3>
<p>They didn't have to <i>find</i> customers — they <b>bought 900,000 already-paying subscribers</b> — and still impaired over half of it. They also owned Geek Squad and 1,000 stores full of the exact buyer.</p>
</div>
<div class="card">
<h3>Papa <span class="tag" style="margin-top:0">$1.4B → 36 payers lost</span></h3>
<p>Human companions. <b>1,200+ complaints, allegations of assault and theft</b> — and Humana, Aetna, Cigna and ~36 others gone in a single renewal cycle after one Bloomberg story.</p>
</div>
<div class="card">
<h3>ElliQ <span class="tag" style="margin-top:0">$85M raised · ~900 units</span></h3>
<p>The best-funded AI companion in the category. Its flagship deployment was <b>bought by a state agency.</b> Harvard wrote the case study; its central question is <i>"should we go back to consumers?"</i></p>
</div>
</div>
<div class="callout" style="margin-top:20px">
<small>So why us</small>
<h3>Amazon sold a device she had to adopt. Papa sold a stranger she had to let in. We sell a daily call she only has to answer.</h3>
<p>Papa proved health plans will pay for this — and that you cannot deliver it with gig workers. <b>Iris costs cents a call and cannot assault anyone.</b> That's why this works now and didn't in 2023.</p>
</div>
</div>
</section>
<!-- THE MOAT -->
<section id="moat">
<div class="wrap">
<div class="sechead">
<div class="eyebrow">07 · Why we win</div>
<h2>The moat isn't the network. It's the relationship.</h2>
<p class="lede">Let's be honest: <b>owning the fibre saves about $2 a month per subscriber.</b> That's not a moat — it's a rounding error a well-funded rival erases on day one. Here's what actually compounds:</p>
</div>
<div class="why">
<div class="whyrow"><div class="num">1</div><div><h3>The family's escalation contract</h3><p>Who we call, in what order, at 3 a.m., and what they're allowed to do. <b>Nobody re-enrols their whole family to save ten dollars.</b></p></div></div>
<div class="whyrow"><div class="num">2</div><div><h3>Six months of knowing "normal"</h3><p>Her cadence, her word-finding, her mood. The value isn't that Iris talks — it's that <b>Iris knows what a good morning sounds like for Margaret, and this one wasn't.</b></p></div></div>
<div class="whyrow"><div class="num">3</div><div><h3>Carrier-native call control — the moat we grow into</h3><p>Today the scam shield lives in Iris's calls. Because we own the network, the roadmap moves it into the signalling path — <b>the call dies before her phone rings.</b> An app can never follow us there. <i>This</i> is what owning a telecom is worth.</p></div></div>
<div class="whyrow"><div class="num">4</div><div><h3>Trust — which is the entire category</h3><p>Papa was worth $1.4B and lost the category in one news cycle. Trust is expensive to build, instant to destroy: a moat if you're careful, a cliff if you're not.</p></div></div>
</div>
<div class="callout" style="margin-top:20px">
<small>The one-liner</small>
<h3>We own the family's escalation contract and six months of knowing what your mother sounds like when she's fine. Both compound. Neither can be bought.</h3>
</div>
</div>
</section>
<!-- SAFETY ARCHITECTURE -->
<section id="safety">
<div class="wrap">
<div class="sechead">
<div class="eyebrow">08 · Safety architecture</div>
<h2>Designed so every escalation reaches a licensed human.</h2>
<p class="lede">An AI that detects an emergency and has <b>nowhere to send it</b> is not a safer product. So the architecture puts a licensed, insured monitoring partner in the path — signing one is the first gate — and Iris is honest with the parent from the very first call.</p>
</div>
<div class="why">
<div class="whyrow"><div class="num">1</div><div><h3>Iris notices</h3><p>No answer, no motion, slurred speech, a fall mentioned, the safe word.</p></div></div>
<div class="whyrow"><div class="num">2</div><div><h3>Iris calls back, and stays on the line</h3><p>Calm, patient, keeping her talking.</p></div></div>
<div class="whyrow red"><div class="num">3</div><div><h3>A licensed monitoring partner picks up — 24/7</h3><p>A trained agent at a regulated PERS centre, white-labelled as Evergreen, who <b>decides</b> — and can dispatch help under their own licence and insurance. Signing this partner is the first gate before launch.</p></div></div>
<div class="whyrow red"><div class="num">4</div><div><h3>The family chain fires in parallel</h3><p><b>Evergreen never dials 911 — that's the licensed partner's job once signed.</b> The family always gets the alert too — those independent family texts are live today — and escalation runs on the family's standing order.</p></div></div>
</div>
<div class="callout gold" style="margin-top:20px">
<small>And she's honest, out loud</small>
<h3>On her very first call, Iris says plainly that she's an automated voice — and any "no" or "stop" is honoured immediately: calls pause and the family is told. That honesty is live today; the stored, revocable consent record ships with the phone line.</h3>
<p>The daughter buys it; <b>the mother consents to it.</b> Under the TCPA an AI voice is an "artificial voice," and consent must come from the person being called. Twenty seconds of product; the whole legal foundation.</p>
</div>
</div>
</section>
<!-- GO TO MARKET -->
<section id="gtm">
<div class="wrap">
<div class="sechead">
<div class="eyebrow">09 · Go-to-market</div>
<h2>The daughter buys it. The mother consents to it. The carrier delivers it.</h2>
<p class="lede">A buyer who feels the problem every day, a distribution channel no AI competitor has, and an enrolment step that doubles as the legal foundation.</p>
</div>
<div class="why">
<div class="whyrow"><div class="num">1</div><div><h3>Who pays — the adult child</h3><p>Three cities away and carrying the worry. She buys peace of mind, with nothing for Mom to install or learn — today a simple tablet or browser, <b>her own phone and number on the carrier roadmap.</b></p></div></div>
<div class="whyrow"><div class="num">2</div><div><h3>Canada-first, through the carrier</h3><p>Warm distribution into an existing telecom base (Fibernetics / Fongo) that <b>no US AI player has</b> — and that the device incumbent (TELUS) can't match on companionship.</p></div></div>
<div class="whyrow"><div class="num">3</div><div><h3>Honesty that becomes the moat</h3><p>Iris says plainly she's automated on the first call and honours any "stop" — live today. The recorded, revocable consent step ships with the phone line: the <b>enrolment step and the TCPA / CASL legal foundation at once.</b></p></div></div>
<div class="whyrow"><div class="num">4</div><div><h3>Land, then expand</h3><p>Start on Basic (daily call + safety net); grow into Full (StoryLine, Good News, games) and the keepsake memoir. Later, a <b>B2B / white-label tier</b> for health plans.</p></div></div>
</div>
<h3 style="margin:30px 0 4px">The funnel</h3>
<div class="funnel">
<div class="fstage"><div class="s">Land</div><h3>Basic — the daily call + safety net</h3><p>The adult child signs up; Mom just answers Iris's call. Iris is honest about being automated from call one.</p></div>
<div class="fstage"><div class="s">Engage</div><h3>The morning ritual &amp; CareCircle</h3><p>She comes to love the call; the family watches it fill the dashboard. Six months of "normal" accrues.</p></div>
<div class="fstage"><div class="s">Expand</div><h3>Full tier + keepsake memoir</h3><p>StoryLine, Good News, games, and a one-time formatted memoir order.</p></div>
<div class="fstage"><div class="s">Scale</div><h3>Carrier base + B2B / white-label</h3><p>Roll out on-net; open a white-label tier for health plans.</p></div>
</div>
<div class="callout" style="margin-top:18px">
<small>Why the channel wins</small>
<h3>Warm carrier distribution plus a buyer who feels the problem daily is a customer-acquisition path the pure-software companions simply can't buy.</h3>
</div>
</div>
</section>
<!-- ECONOMICS -->
<section id="model">
<div class="wrap">
<div class="sechead">
<div class="eyebrow">10 · Business model &amp; economics</div>
<h2>The AI costs more than the phone call.</h2>
<p class="lede">Any deck that calls this an 80%-gross-margin business by ignoring inference is lying to itself. <b>Here's the real number</b> — one we now control, because we tune the AI ourselves.</p>
</div>
<div class="rev">
<div class="card">
<span class="revpill warn">Cost to serve · /parent/mo</span>
<div class="er"><span>Telephony (our network)</span><span class="v">~$0.50</span></div>
<div class="er"><span>AI inference &amp; voice</span><span class="v">$12–18</span></div>
<div class="er"><span>Monitoring desk (shared)</span><span class="v">~$3</span></div>
<div class="er"><span>Support, infra, alerts</span><span class="v">~$2</span></div>
<div class="er tot red"><span>Total COGS</span><span class="v">~$19</span></div>
</div>
<div class="card">
<span class="revpill now">What that means</span>
<div class="er"><span>Price · Evergreen Basic</span><span class="v">$100/mo</span></div>
<div class="er"><span>Gross margin, today</span><span class="v">~81%</span></div>
<div class="er"><span>Gross margin, at scale</span><span class="v">88%+</span></div>
<div class="er tot"><span>Payback on CAC</span><span class="v">&lt; 6 mo</span></div>
</div>
<div class="card">
<span class="revpill next">The tiers</span>
<div class="er"><span>Basic — call + safety net</span><span class="v">$100/mo</span></div>
<div class="er"><span>Full — + StoryLine, games</span><span class="v">$200/mo</span></div>
<div class="er"><span>Unlimited — BYO AI key</span><span class="v">$125/mo</span></div>
<div class="er tot"><span>Keepsake memoir</span><span class="v">$100 one-time</span></div>
</div>
</div>
<div class="callout gold" style="margin-top:18px">
<small>The margin isn't the fibre</small>
<h3>The business is charging a real price for real safety — while free AI companions race to zero and can never answer the 3 a.m. question.</h3>
<p>Inference gets cheaper every quarter; the live product already <b>cascades routine turns to a small model, caches hard, and caps the tail</b> — with daily limits built in. Owning the network is worth about $2 a month: worth having, not the business.</p>
</div>
<div class="sechead" style="margin:44px 0 24px;max-width:64ch">
<div class="eyebrow">11 · Financial outlook</div>
<h2>A high-margin subscription with a short payback.</h2>
<p class="lede">Real pricing, a cost to serve we now control, and a Canada-first ramp toward the SOM. <b>The figures below are illustrative planning assumptions,</b> to be replaced with a measured model.</p>
</div>
<div class="grid g3">
<div class="card">
<span class="revpill now">The model, at a glance</span>
<div class="er"><span>ARPU (Basic → Full)</span><span class="v">$100–200</span></div>
<div class="er"><span>Gross margin (today → scale)</span><span class="v">~81 → 88%+</span></div>
<div class="er"><span>CAC payback</span><span class="v">&lt; 6 mo</span></div>
<div class="er tot"><span>SOM · 1% of seniors</span><span class="v">≈ $97M ARR</span></div>
</div>
<div class="card">
<span class="revpill warn">The ramp · illustrative</span>
<div class="er"><span>Phase 1 · Pilot</span><span class="v">first families</span></div>
<div class="er"><span>Phase 2 · Scale on-net</span><span class="v">carrier base</span></div>
<div class="er"><span>Phase 3 · Tiers + B2B</span><span class="v">memoir · white-label</span></div>
<div class="er tot"><span>Path to</span><span class="v">$97M run-rate</span></div>
</div>
<div class="card">
<span class="revpill next">Use of funds</span>
<p style="margin-top:2px">The near-term spend is small and specific: the <b>two-week legal-architecture sprint,</b> integrating and <b>signing the licensed monitoring partner,</b> and a <b>small build + go-to-market team</b> to run the first-families pilot. The product itself is already built.</p>
</div>
</div>
<p class="note">Illustrative planning assumptions — not a forecast. COGS pending a measured model; SOM/ARR figures sized for order-of-magnitude.</p>
</div>
</section>
<!-- TEAM & OPERATIONS -->
<section id="team">
<div class="wrap">
<div class="sechead">
<div class="eyebrow">12 · Team &amp; operations</div>
<h2>Built on a stack we already run — emergencies left to the experts.</h2>
<p class="lede">Evergreen isn't starting from zero: it runs on the AI-receptionist platform we already operate, on our own network. The hard, regulated parts are outsourced to specialists by design.</p>
</div>
<div class="grid g2">
<div class="card">
<span class="ic fst">🖥</span>
<h3>Runs on our own stack &amp; network</h3>
<p>Built on the AI-receptionist platform we already operate, made to distribute over our own carrier network — not a greenfield build and not someone else's cloud economics.</p>
</div>
<div class="card">
<span class="ic grn">🏥</span>
<h3>Emergencies outsourced to experts</h3>
<p>A regulated, white-labelled monitoring desk handles dispatch under its own licence and insurance — <b>we don't reinvent PERS.</b> Evergreen never dials 911 itself.</p>
</div>
<div class="card">
<span class="ic gld">👥</span>
<h3>Lean to launch</h3>
<p>A small build + go-to-market team runs the first-families pilot. The expensive, risky part — building the product — is already done.</p>
</div>
<div class="card">
<span class="ic ros">➕</span>
<h3>Leadership &amp; advisors</h3>
<p>To be named for the board copy — leadership, advisors, and the selected licensed monitoring partner.</p>
</div>
</div>
</div>
</section>
<!-- RISKS -->
<section id="risks">
<div class="wrap">
<div class="sechead">
<div class="eyebrow">13 · Risks &amp; mitigations</div>
<h2>The risks are real. So are the guardrails.</h2>
<p class="lede">Named plainly, with the mitigation for each — most already engineered into the live product.</p>
</div>
<div class="gaps">
<div class="gap"><div class="g">↳</div><div><b>Regulatory (TCPA · CASL · FTC)</b><p><b>Mitigation:</b> consent-first onboarding, litigator-reviewed copy, breach-notification readiness.</p></div></div>
<div class="gap"><div class="g">↳</div><div><b>Liability of a safety promise</b><p><b>Mitigation:</b> a licensed, insured partner sits in the path; Evergreen never dials 911 itself.</p></div></div>
<div class="gap"><div class="g">↳</div><div><b>The AI says the wrong thing</b><p><b>Mitigation:</b> an independent keyword backstop + a reply guardrail + human escalation — already live.</p></div></div>
<div class="gap"><div class="g">↳</div><div><b>Trust — one bad incident (see Papa)</b><p><b>Mitigation:</b> careful, consented launch; transparency; no gig strangers in the home.</p></div></div>
<div class="gap"><div class="g">↳</div><div><b>Inference cost drift</b><p><b>Mitigation:</b> small-model cascade, caching and daily caps — already shipped.</p></div></div>
<div class="gap tbd"><div class="g">↳</div><div><b>Single-team execution risk</b><p><b>Mitigation:</b> runs on an existing platform + network; first hires are a lean build + GTM team for the pilot.</p></div></div>
</div>
</div>
</section>
<!-- ROADMAP & ASK -->
<section id="ask">
<div class="wrap">
<div class="sechead">
<div class="eyebrow">14 · Roadmap &amp; the ask</div>
<h2>Basic is built. Now make it real.</h2>
<p class="lede">The hard part — the product — is done. What's left is the legal wrapper, the licensed partner, and a careful launch.</p>
</div>
<h3 style="margin-bottom:8px">Milestones</h3>
<div class="timeline">
<div class="tl"><div class="when">Done · now</div><div class="what"><h3>Built <span class="now">Live</span></h3><ul><li>Iris voice pipeline</li><li>Safety backstop + reply guardrail</li><li>Honest self-introduction on first call</li><li>CareCircle dashboard · daily limits + hardened auth</li></ul></div></div>
<div class="tl"><div class="when">Next · ~2 weeks</div><div class="what"><h3>Legal + partner</h3><ul><li>Consent / escalation legal sprint</li><li>Litigator pass on all copy</li><li>Sign the licensed monitoring partner</li></ul></div></div>
<div class="tl"><div class="when">Then</div><div class="what"><h3>Pilot</h3><ul><li>First Canadian families</li><li>Prove retention + the safety desk</li><li>Tune support &amp; onboarding</li></ul></div></div>
<div class="tl"><div class="when">Scale</div><div class="what"><h3>Grow on-net</h3><ul><li>Roll out across the carrier base</li><li>Full-tier features + keepsake memoir</li><li>Explore B2B / white-label</li></ul></div></div>
</div>
<h3 style="margin:34px 0 8px">The ask</h3>
<div class="moves">
<div class="move p1">
<span class="rk">The gate</span>
<div>
<h3>A two-week legal-architecture sprint + a signed monitoring partner</h3>
<p>The consent flow, the escalation ladder, the licensed-partner crisis protocol, and a full pass over our marketing copy with a litigator holding the pen. In this category <b>your promise is your liability</b> — Life Alert lost seven figures on its <i>advertising</i>, not its protocol. Cheap now, ruinous to retrofit onto 100,000 subscribers later.</p>
</div>
<div class="eff">~2 weeks</div>
</div>
<div class="move p2">
<span class="rk">The greenlight</span>
<div>
<h3>A small team to reach the first Canadian families</h3>
<p>Take the <b>working Basic product</b> — the Morning Call, Scam Shield, the safety net and CareCircle, all already running on our stack — to the first Canadian families. Prove retention and the safety desk.</p>
</div>
<div class="eff">Post-gate</div>
</div>
</div>
<div class="callout forest" style="margin-top:26px">
<small>What we've actually built</small>
<h3>The relationship is the product — with a safety net under it, and it's already on the line.</h3>
<p>The daily call is why she picks up; six months of Iris knowing what "a good morning" sounds like for Margaret is the thing a free app can never copy. The scam screening of her calls and the safety net around them — with the licensed partner ahead — are what a family pays for — <b>loneliness is the need, and the relationship is the moat.</b></p>
</div>
<div class="closing">
<div class="big">Evergreen</div>
<div class="tg">So you're not the only one checking in.</div>
</div>
</div>
</section>
<footer>
<div class="wrap">
<div class="foot-mono">Evergreen — a Nucleus + Fibernetics company · Built &amp; live in prototype</div>
<div class="foot-mono">Confidential business plan · Prepared August 2026</div>
</div>
</footer>
<script>
(function () {
var bar = document.getElementById('progress');
if (!bar) return;
var ticking = false;
function update() {
var el = document.scrollingElement || document.documentElement;
var max = el.scrollHeight - el.clientHeight;
var p = max > 0 ? el.scrollTop / max : 0;
bar.style.width = (Math.max(0, Math.min(1, p)) * 100).toFixed(2) + '%';
ticking = false;
}
function onScroll() { if (!ticking) { ticking = true; requestAnimationFrame(update); } }
document.addEventListener('scroll', onScroll, { passive: true });
window.addEventListener('resize', update);
update();
})();
</script>
</body>
</html>