Explore Our Packages
import { useState, useEffect } from "react";
// ─── COLOR TOKENS ────────────────────────────────────────────────
const C = {
bg: "#FFFFFF",
bgSoft: "#F4F6FA",
bgCard: "#FFFFFF",
navy: "#0B1F4B",
navyLight: "#1A3366",
navyBorder: "#0B1F4B22",
black: "#0A0A0A",
charcoal: "#1C1C2E",
muted: "#6B7A99",
mutedLight: "#A8B4C8",
rule: "#D8DDE8",
text: "#0A0A0A",
textSoft: "#3A4460",
};
const questions = [
{ id: 1, chapter: 1, area: "Goal Identity", text: "I can clearly articulate my top 3 life goals without hesitation.", icon: "🎯" },
{ id: 2, chapter: 1, area: "Goal Identity", text: "My goals align with my core values and who I am becoming.", icon: "🎯" },
{ id: 3, chapter: 2, area: "Goal Architecture", text: "I set goals with specific numbers, deadlines, and measurable outcomes.", icon: "📐" },
{ id: 4, chapter: 2, area: "Goal Architecture", text: "I use systems and tools (digital or physical) to organize my goals.", icon: "📐" },
{ id: 5, chapter: 3, area: "Discipline", text: "I track how I actually spend my time — not just how I think I do.", icon: "⏱️" },
{ id: 6, chapter: 3, area: "Discipline", text: "I consistently follow through even when motivation is low.", icon: "⏱️" },
{ id: 7, chapter: 4, area: "Self-Awareness", text: "I know the specific patterns and cycles that have held me back.", icon: "🔍" },
{ id: 8, chapter: 4, area: "Self-Awareness", text: "When I fail to reach a goal, I dig into the root cause — not just the surface reason.", icon: "🔍" },
{ id: 9, chapter: 5, area: "Accountability", text: "I have at least one person in my life who holds me to my goals.", icon: "🤝" },
{ id: 10, chapter: 5, area: "Accountability", text: "I show up consistently for the people who rely on me for accountability too.", icon: "🤝" },
{ id: 11, chapter: 6, area: "Daily Execution", text: "I have a morning ritual that sets the tone for winning the day.", icon: "🌅" },
{ id: 12, chapter: 7, area: "Weekly Planning", text: "I do a weekly brain dump and plan before the week begins.", icon: "📅" },
{ id: 13, chapter: 8, area: "Monthly Review", text: "I review my progress at the end of every month with honest data.", icon: "📊" },
{ id: 14, chapter: 9, area: "Quarterly Strategy", text: "I operate in 90-day sprints with clear milestones and checkpoints.", icon: "🗓️" },
{ id: 15, chapter: 9, area: "Quarterly Strategy", text: "I adjust my plan when I hit obstacles rather than abandoning the goal.", icon: "🗓️" },
{ id: 16, chapter: 10, area: "Time Maximization", text: "I use weekends intentionally to recover, create, or advance my goals.", icon: "⚡" },
{ id: 17, chapter: 11, area: "Time Maximization", text: "My mornings are protected and purposeful — not reactive.", icon: "⚡" },
{ id: 18, chapter: 12, area: "Time Maximization", text: "My evenings include wind-down rituals that set up tomorrow's success.", icon: "⚡" },
{ id: 19, chapter: 13, area: "Vision & Annual Planning",text: "I have a clear written vision for where I want to be 12 months from now.", icon: "🔭" },
{ id: 20, chapter: 13, area: "Vision & Annual Planning",text: "My calendar reflects my priorities — time is blocked for what matters most.", icon: "🔭" },
{ id: 21, chapter: 14, area: "Financial Winning", text: "I follow a spending plan that aligns with my income and goals.", icon: "💰" },
{ id: 22, chapter: 14, area: "Financial Winning", text: "I review my finances monthly and know my exact numbers.", icon: "💰" },
];
const chapterMap = {
1: { title: "Goal Identity", chapter: "Chapter 1" },
2: { title: "Goal Architecture", chapter: "Chapter 2" },
3: { title: "Discipline", chapter: "Chapter 3" },
4: { title: "Self-Awareness", chapter: "Chapter 4" },
5: { title: "Accountability", chapter: "Chapter 5" },
6: { title: "Daily Execution", chapter: "Chapter 6" },
7: { title: "Weekly Planning", chapter: "Chapter 7" },
8: { title: "Monthly Review", chapter: "Chapter 8" },
9: { title: "Quarterly Strategy", chapter: "Chapter 9" },
10: { title: "Time Maximization", chapter: "Chapters 10–12" },
13: { title: "Vision & Annual Planning", chapter: "Chapter 13" },
14: { title: "Financial Winning", chapter: "Chapter 14" },
};
const getScoreLabel = (pct) => {
if (pct >= 85) return { label: "Goldmine Status", bar: C.navy, desc: "You're operating at peak Winnergy. This is a genuine strength — refine and mentor others here." };
if (pct >= 65) return { label: "Rising Winner", bar: C.navyLight, desc: "Strong foundation with room to compound. Small upgrades here create big momentum." };
if (pct >= 40) return { label: "In the Mine", bar: "#4A5568", desc: "You have raw material to work with. Focus here to unlock significant growth." };
return { label: "Untapped Gold", bar: C.black, desc: "This is your highest-leverage opportunity. The breakthrough is waiting right here." };
};
const FLOW = ["F","L","O","W"];
const FlowBadge = ({ size = 44, fs = 17 }) => (
<div style={{ display: "inline-flex" }}>
{FLOW.map((l, i) => (
<div key={i} style={{
width: size, height: size,
background: i % 2 === 0 ? C.navy : C.black,
display: "flex", alignItems: "center", justifyContent: "center",
fontSize: fs, fontWeight: "900", color: "#fff",
}}>{l}</div>
))}
</div>
);
const Chip = ({ label, bg = C.navy }) => (
<span style={{
display: "inline-block", padding: "4px 14px",
background: bg, color: "#fff",
fontSize: "10px", fontWeight: "700",
letterSpacing: "2.5px", textTransform: "uppercase",
}}>{label}</span>
);
const Divider = ({ label }) => (
<div style={{ display: "flex", alignItems: "center", gap: "12px", width: "100%", maxWidth: "600px", marginBottom: "20px" }}>
<div style={{ flex: 1, height: "1px", background: C.rule }} />
<span style={{ fontSize: "10px", letterSpacing: "3px", color: C.muted, textTransform: "uppercase", whiteSpace: "nowrap" }}>{label}</span>
<div style={{ flex: 1, height: "1px", background: C.rule }} />
</div>
);
// ─── SHELL WRAPPER ───────────────────────────────────────────────
const Shell = ({ children, centered = true }) => (
<div style={{ minHeight: "100vh", background: C.bg, fontFamily: "'Georgia','Times New Roman',serif", color: C.text }}>
<div style={{ height: "5px", background: `linear-gradient(90deg,${C.black},${C.navy},${C.navyLight},${C.navy},${C.black})` }} />
<div style={{
maxWidth: "660px", margin: "0 auto", padding: "48px 24px 80px",
display: "flex", flexDirection: "column",
alignItems: "center", justifyContent: centered ? "center" : "flex-start",
minHeight: "calc(100vh - 5px)",
}}>
{children}
</div>
<style>{`
@keyframes fade-up { from { opacity:0; transform:translateY(18px); } to { opacity:1; transform:translateY(0); } }
@keyframes spin { to { transform:rotate(360deg); } }
@keyframes blink { from { opacity:.4; } to { opacity:1; } }
input::placeholder { color:${C.mutedLight}; }
`}</style>
</div>
);
// ═════════════════════════════════════════════════════════════════
export default function WinneryDiagnostic() {
const [screen, setScreen] = useState("intro");
const [current, setCurrent] = useState(0);
const [answers, setAnswers] = useState({});
const [animOut, setAnimOut] = useState(false);
const [revealed, setRevealed] = useState(false);
const [capVis, setCapVis] = useState(false);
const [firstName, setFirstName] = useState("");
const [email, setEmail] = useState("");
const [formErr, setFormErr] = useState("");
const [loading, setLoading] = useState(false);
useEffect(() => {
if (screen === "results") setTimeout(() => setRevealed(true), 200);
if (screen === "capture") setTimeout(() => setCapVis(true), 100);
}, [screen]);
const answer = (val) => {
if (animOut) return;
setAnimOut(true);
setAnswers(p => ({ ...p, [questions[current].id]: val }));
setTimeout(() => {
if (current < questions.length - 1) setCurrent(c => c + 1);
else setScreen("capture");
setAnimOut(false);
}, 300);
};
const submit = (e) => {
e && e.preventDefault();
if (!firstName.trim()) { setFormErr("Please enter your first name."); return; }
if (!/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email)) { setFormErr("Please enter a valid email address."); return; }
setFormErr(""); setLoading(true);
// ↓ Replace with your email platform POST (Mailchimp, ConvertKit, MailerLite, etc.)
setTimeout(() => { setLoading(false); setScreen("results"); }, 1200);
};
const computeResults = () => {
const m = {};
questions.forEach(q => {
if (!m[q.area]) m[q.area] = { total: 0, count: 0, chapter: q.chapter };
m[q.area].total += (answers[q.id] || 0);
m[q.area].count += 1;
});
return Object.entries(m).map(([area, d]) => ({
area, chapter: d.chapter,
pct: Math.round((d.total / (d.count * 4)) * 100),
})).sort((a, b) => a.pct - b.pct);
};
const totalPct = () => {
const v = Object.values(answers);
return v.length ? Math.round((v.reduce((a, b) => a + b, 0) / (v.length * 4)) * 100) : 0;
};
const reset = () => {
setScreen("intro"); setCurrent(0); setAnswers({});
setRevealed(false); setCapVis(false);
setFirstName(""); setEmail(""); setFormErr("");
};
const fadeIn = (delay = 0) => ({
opacity: revealed ? 1 : 0,
transform: revealed ? "translateY(0)" : "translateY(14px)",
transition: `opacity .6s ${delay}s, transform .6s ${delay}s`,
});
// ────────────────────────────────────────────
// INTRO
// ────────────────────────────────────────────
if (screen === "intro") return (
<Shell>
<div style={{ textAlign: "center", animation: "fade-up .6s ease both" }}>
<FlowBadge size={56} fs={20} />
<div style={{ fontSize: "10px", letterSpacing: "5px", color: C.muted, textTransform: "uppercase", margin: "12px 0 36px" }}>
Focus · Lean In · Own It · Win
</div>
<h1 style={{ fontSize: "clamp(44px,10vw,78px)", fontWeight: "900", lineHeight: 1, color: C.navy, letterSpacing: "-3px", margin: "0 0 6px" }}>
WINNERGY
</h1>
<div style={{ fontSize: "13px", letterSpacing: "7px", color: C.muted, textTransform: "uppercase", marginBottom: "28px" }}>
DIAGNOSTIC
</div>
<div style={{ width: "48px", height: "4px", background: C.navy, margin: "0 auto 28px" }} />
<p style={{ fontSize: "19px", color: C.charcoal, lineHeight: 1.65, maxWidth: "460px", margin: "0 auto 14px" }}>
You can't mine gold you haven't mapped.
</p>
<p style={{ fontSize: "14px", color: C.muted, lineHeight: 1.8, maxWidth: "440px", margin: "0 auto 44px" }}>
This 22-question diagnostic reveals exactly where your Winnergy is locked — and which chapters to prioritize first.
Built on Six Sigma methodology, translated for your life.
</p>
<div style={{ display: "flex", justifyContent: "center", gap: "44px", marginBottom: "48px", flexWrap: "wrap" }}>
{[["22","Questions"],["10","Life Dimensions"],["~5","Minutes"]].map(([n, l]) => (
<div key={l} style={{ textAlign: "center" }}>
<div style={{ fontSize: "32px", fontWeight: "900", color: C.navy, lineHeight: 1 }}>{n}</div>
<div style={{ fontSize: "10px", color: C.mutedLight, letterSpacing: "2px", textTransform: "uppercase", marginTop: "4px" }}>{l}</div>
</div>
))}
</div>
<button onClick={() => setScreen("quiz")} style={{
background: C.navy, color: "#fff", border: "none",
padding: "18px 60px", fontSize: "13px", fontWeight: "700",
letterSpacing: "3px", textTransform: "uppercase",
cursor: "pointer", fontFamily: "inherit",
boxShadow: `0 8px 32px ${C.navy}40`, transition: "all .2s",
}}
onMouseEnter={e => { e.target.style.background = C.black; e.target.style.boxShadow = `0 12px 40px ${C.black}50`; }}
onMouseLeave={e => { e.target.style.background = C.navy; e.target.style.boxShadow = `0 8px 32px ${C.navy}40`; }}
>
Tap Into Your Goldmine →
</button>
<div style={{ marginTop: "20px", fontSize: "11px", color: C.mutedLight, letterSpacing: "1px" }}>
Tricia J. · Ask TPJ — The Purpose Doula
</div>
</div>
</Shell>
);
// ────────────────────────────────────────────
// QUIZ
// ────────────────────────────────────────────
if (screen === "quiz") {
const q = questions[current];
const progress = Math.round((current / questions.length) * 100);
return (
<Shell centered={false}>
{/* Progress */}
<div style={{ width: "100%", maxWidth: "580px", marginBottom: "52px", marginTop: "8px" }}>
<div style={{ display: "flex", justifyContent: "space-between", marginBottom: "8px" }}>
<span style={{ fontSize: "10px", color: C.muted, letterSpacing: "2px", textTransform: "uppercase" }}>{q.area}</span>
<span style={{ fontSize: "10px", color: C.mutedLight }}>{current + 1} / {questions.length}</span>
</div>
<div style={{ height: "3px", background: C.rule, borderRadius: "2px" }}>
<div style={{ height: "100%", width: `${progress}%`, background: C.navy, borderRadius: "2px", transition: "width .4s ease" }} />
</div>
</div>
{/* Question card */}
<div style={{
width: "100%", maxWidth: "580px",
border: `1.5px solid ${C.navyBorder}`,
borderTop: `4px solid ${C.navy}`,
padding: "40px 36px 36px", marginBottom: "36px",
background: C.bgCard, boxShadow: `0 4px 24px ${C.navy}0D`,
opacity: animOut ? 0 : 1,
transform: animOut ? "translateY(8px)" : "translateY(0)",
transition: "opacity .28s, transform .28s",
}}>
<div style={{ fontSize: "28px", marginBottom: "18px" }}>{q.icon}</div>
<p style={{ fontSize: "21px", lineHeight: 1.58, color: C.black, margin: 0 }}>{q.text}</p>
</div>
{/* Scale labels */}
<div style={{ display: "flex", justifyContent: "space-between", width: "100%", maxWidth: "580px", marginBottom: "12px" }}>
<span style={{ fontSize: "10px", color: C.mutedLight, letterSpacing: "1.5px", textTransform: "uppercase" }}>Not at All</span>
<span style={{ fontSize: "10px", color: C.mutedLight, letterSpacing: "1.5px", textTransform: "uppercase" }}>Absolutely</span>
</div>
{/* Answer buttons */}
<div style={{ display: "flex", gap: "10px", width: "100%", maxWidth: "580px" }}>
{[{v:0,d:"Never"},{v:1,d:"Rarely"},{v:2,d:"Sometimes"},{v:3,d:"Usually"},{v:4,d:"Always"}].map(o => (
<button key={o.v} onClick={() => answer(o.v)} style={{
flex: 1, padding: "18px 6px",
background: C.bgSoft, border: `1.5px solid ${C.rule}`,
color: C.navy, cursor: "pointer", fontFamily: "inherit",
fontSize: "22px", fontWeight: "900",
display: "flex", flexDirection: "column", alignItems: "center", gap: "7px",
transition: "all .15s",
}}
onMouseEnter={e => { const t = e.currentTarget; t.style.background = C.navy; t.style.borderColor = C.navy; t.style.color = "#fff"; t.style.transform = "translateY(-3px)"; t.style.boxShadow = `0 6px 20px ${C.navy}30`; }}
onMouseLeave={e => { const t = e.currentTarget; t.style.background = C.bgSoft; t.style.borderColor = C.rule; t.style.color = C.navy; t.style.transform = "translateY(0)"; t.style.boxShadow = "none"; }}
>
{o.v}
<span style={{ fontSize: "9px", letterSpacing: "1px", textTransform: "uppercase", fontWeight: "400", opacity: .55 }}>{o.d}</span>
</button>
))}
</div>
<div style={{ marginTop: "28px", fontSize: "10px", color: C.mutedLight, letterSpacing: "2px", textTransform: "uppercase" }}>
{chapterMap[q.chapter]?.chapter} · {chapterMap[q.chapter]?.title}
</div>
</Shell>
);
}
// ────────────────────────────────────────────
// CAPTURE GATE
// ────────────────────────────────────────────
if (screen === "capture") {
const teaser = totalPct();
const tStatus = getScoreLabel(teaser);
const vis = { opacity: capVis ? 1 : 0, transform: capVis ? "translateY(0)" : "translateY(20px)", transition: "opacity .55s, transform .55s" };
return (
<Shell>
<div style={{ textAlign: "center", width: "100%", maxWidth: "520px", ...vis }}>
<FlowBadge size={40} fs={15} />
<div style={{ margin: "20px 0 8px" }}><Chip label="Your Results Are Ready" /></div>
{/* Blurred score */}
<div style={{ position: "relative", display: "inline-block", margin: "24px 0 20px" }}>
<div style={{ fontSize: "80px", fontWeight: "900", color: C.navy, letterSpacing: "-3px", filter: "blur(14px)", userSelect: "none", lineHeight: 1 }}>
{teaser}<span style={{ fontSize: "36px" }}>%</span>
</div>
<div style={{ position: "absolute", inset: 0, display: "flex", alignItems: "center", justifyContent: "center" }}>
<div style={{ background: C.navy, color: "#fff", padding: "6px 16px", fontSize: "11px", fontWeight: "700", letterSpacing: "2px", textTransform: "uppercase", display: "flex", alignItems: "center", gap: "8px" }}>
<span style={{ width: "7px", height: "7px", borderRadius: "50%", background: "#fff", display: "inline-block", animation: "blink 1s infinite alternate" }} />
{tStatus.label} Detected
</div>
</div>
</div>
<p style={{ fontSize: "16px", color: C.charcoal, lineHeight: 1.72, marginBottom: "32px" }}>
You've assessed <strong style={{ color: C.navy }}>10 dimensions</strong> of your life.<br />
Enter your info below to unlock your full Goldmine Report.
</p>
{/* Form card */}
<div style={{
background: C.bgSoft, border: `1.5px solid ${C.navyBorder}`,
borderTop: `4px solid ${C.navy}`, padding: "36px 32px",
textAlign: "left", boxShadow: `0 4px 24px ${C.navy}0D`,
}}>
<div style={{ fontSize: "10px", letterSpacing: "3px", color: C.muted, textTransform: "uppercase", marginBottom: "6px" }}>Unlock Your Full Report</div>
<p style={{ fontSize: "13px", color: C.muted, marginBottom: "24px", lineHeight: 1.7 }}>
Get your personalized Goldmine Map, reading path, and breakthrough insights — instantly. Plus join the{" "}
<strong style={{ color: C.navy }}>Mindset Monday Newsletter</strong>.
</p>
{[
{ label: "First Name", type: "text", val: firstName, set: setFirstName, ph: "Enter your first name" },
{ label: "Email", type: "email", val: email, set: setEmail, ph: "Enter your email" },
].map(({ label, type, val, set, ph }) => (
<div key={label} style={{ marginBottom: "18px" }}>
<label style={{ display: "block", fontSize: "10px", letterSpacing: "2px", color: C.muted, textTransform: "uppercase", marginBottom: "7px" }}>{label}</label>
<input
type={type} value={val} onChange={e => set(e.target.value)} placeholder={ph}
style={{
width: "100%", boxSizing: "border-box",
background: "#fff", border: `1.5px solid ${val ? C.navy : C.rule}`,
color: C.black, padding: "13px 15px", fontSize: "15px",
fontFamily: "inherit", outline: "none", transition: "border-color .2s",
}}
onFocus={e => e.target.style.borderColor = C.navy}
onBlur={e => e.target.style.borderColor = val ? C.navy : C.rule}
onKeyDown={e => e.key === "Enter" && submit(e)}
/>
</div>
))}
{formErr && <div style={{ fontSize: "12px", color: "#B91C1C", marginBottom: "14px", fontStyle: "italic" }}>⚠ {formErr}</div>}
<button onClick={submit} disabled={loading} style={{
width: "100%", background: loading ? C.muted : C.navy, color: "#fff", border: "none",
padding: "16px", fontSize: "13px", fontWeight: "700",
letterSpacing: "3px", textTransform: "uppercase",
cursor: loading ? "not-allowed" : "pointer", fontFamily: "inherit",
boxShadow: loading ? "none" : `0 6px 24px ${C.navy}35`,
transition: "background .2s", display: "flex", alignItems: "center", justifyContent: "center", gap: "10px",
}}>
{loading
? <><div style={{ width: "15px", height: "15px", border: "2px solid rgba(255,255,255,.4)", borderTopColor: "#fff", borderRadius: "50%", animation: "spin .7s linear infinite" }} />Unlocking Your Goldmine...</>
: "Reveal My Full Report →"
}
</button>
<p style={{ fontSize: "10px", color: C.mutedLight, textAlign: "center", marginTop: "12px", lineHeight: 1.6 }}>
No spam. Ever. Unsubscribe anytime. Your results are private.
</p>
</div>
{/* Unlock items */}
<div style={{ display: "grid", gridTemplateColumns: "1fr 1fr 1fr", gap: "10px", marginTop: "16px" }}>
{[["📊","Goldmine Map","All 10 dimensions"],["📖","Reading Path","Your chapter order"],["✉️","Mindset Monday","Weekly winner fuel"]].map(([ic, lb, sb]) => (
<div key={lb} style={{ textAlign: "center", padding: "14px 8px", background: "#fff", border: `1px solid ${C.rule}` }}>
<div style={{ fontSize: "20px", marginBottom: "5px" }}>{ic}</div>
<div style={{ fontSize: "10px", color: C.navy, fontWeight: "700" }}>{lb}</div>
<div style={{ fontSize: "9px", color: C.mutedLight, marginTop: "2px" }}>{sb}</div>
</div>
))}
</div>
</div>
</Shell>
);
}
// ────────────────────────────────────────────
// RESULTS
// ────────────────────────────────────────────
const results = computeResults();
const total = totalPct();
const overall = getScoreLabel(total);
const topStrengths = results.slice(-3).reverse();
const topOpps = results.slice(0, 3);
return (
<Shell centered={false}>
{/* Header */}
<div style={{ textAlign: "center", width: "100%", marginBottom: "52px", ...fadeIn(0) }}>
<FlowBadge size={40} fs={15} />
<div style={{ fontSize: "10px", letterSpacing: "5px", color: C.muted, textTransform: "uppercase", margin: "14px 0 18px" }}>
{firstName ? `${firstName}'s` : "Your"} Winnergy Report
</div>
<div style={{ fontSize: "clamp(72px,16vw,100px)", fontWeight: "900", lineHeight: 1, color: C.navy, letterSpacing: "-4px", marginBottom: "14px" }}>
{total}<span style={{ fontSize: "40px", letterSpacing: "-1px" }}>%</span>
</div>
<Chip label={overall.label} />
<p style={{ fontSize: "15px", color: C.muted, maxWidth: "420px", lineHeight: 1.68, margin: "14px auto 0" }}>
{overall.desc}
</p>
</div>
{/* Goldmine Map */}
<div style={{ width: "100%", maxWidth: "600px", marginBottom: "48px", ...fadeIn(0.15) }}>
<Divider label="Your Goldmine Map" />
{results.map((r, i) => {
const st = getScoreLabel(r.pct);
return (
<div key={r.area} style={{ marginBottom: "18px" }}>
<div style={{ display: "flex", justifyContent: "space-between", marginBottom: "6px" }}>
<span style={{ fontSize: "13px", color: C.charcoal, fontWeight: "600" }}>{r.area}</span>
<span style={{ fontSize: "13px", color: st.bar, fontWeight: "700" }}>{r.pct}%</span>
</div>
<div style={{ height: "5px", background: C.rule, borderRadius: "3px", overflow: "hidden" }}>
<div style={{
height: "100%", width: revealed ? `${r.pct}%` : "0%",
background: st.bar, borderRadius: "3px",
transition: `width 1s ${0.25 + i * 0.07}s ease-out`,
}} />
</div>
<div style={{ fontSize: "10px", color: C.mutedLight, marginTop: "3px", letterSpacing: "1px", textTransform: "uppercase" }}>
{chapterMap[r.chapter]?.chapter} · {st.label}
</div>
</div>
);
})}
</div>
{/* Two columns */}
<div style={{ width: "100%", maxWidth: "600px", display: "grid", gridTemplateColumns: "1fr 1fr", gap: "16px", marginBottom: "40px", ...fadeIn(0.35) }}>
<div style={{ background: C.bgSoft, border: `1.5px solid ${C.navyBorder}`, borderTop: `4px solid ${C.navy}`, padding: "24px 20px" }}>
<div style={{ fontSize: "10px", letterSpacing: "2.5px", color: C.navy, textTransform: "uppercase", marginBottom: "16px", fontWeight: "700" }}>✦ Your Goldmines</div>
{topStrengths.map(r => (
<div key={r.area} style={{ marginBottom: "12px" }}>
<div style={{ fontSize: "14px", color: C.black, fontWeight: "700" }}>{r.area}</div>
<div style={{ fontSize: "10px", color: C.muted, marginTop: "2px" }}>{r.pct}% · {chapterMap[r.chapter]?.chapter}</div>
</div>
))}
</div>
<div style={{ background: C.bgSoft, border: `1.5px solid ${C.navyBorder}`, borderTop: `4px solid ${C.black}`, padding: "24px 20px" }}>
<div style={{ fontSize: "10px", letterSpacing: "2.5px", color: C.black, textTransform: "uppercase", marginBottom: "16px", fontWeight: "700" }}>◈ Start Here First</div>
{topOpps.map(r => (
<div key={r.area} style={{ marginBottom: "12px" }}>
<div style={{ fontSize: "14px", color: C.black, fontWeight: "700" }}>{r.area}</div>
<div style={{ fontSize: "10px", color: C.muted, marginTop: "2px" }}>{r.pct}% · {chapterMap[r.chapter]?.chapter}</div>
</div>
))}
</div>
</div>
{/* Reading path — navy block */}
<div style={{ width: "100%", maxWidth: "600px", marginBottom: "48px", background: C.navy, color: "#fff", padding: "32px", ...fadeIn(0.5) }}>
<div style={{ fontSize: "10px", letterSpacing: "3px", color: "rgba(255,255,255,.5)", textTransform: "uppercase", marginBottom: "10px" }}>
Your Winnergy Reading Path
</div>
<p style={{ fontSize: "15px", lineHeight: 1.78, margin: "0 0 16px", color: "rgba(255,255,255,.92)" }}>
Begin with <strong style={{ color: "#fff" }}>{topOpps[0]?.area}</strong> ({chapterMap[topOpps[0]?.chapter]?.chapter}) — your highest-leverage breakthrough.
Then advance to <strong style={{ color: "#fff" }}>{topOpps[1]?.area}</strong> and <strong style={{ color: "#fff" }}>{topOpps[2]?.area}</strong>.
Your strength in <strong style={{ color: "#fff" }}>{topStrengths[0]?.area}</strong> gives you the foundation to build from.
</p>
<div style={{ fontSize: "13px", color: "rgba(255,255,255,.45)", fontStyle: "italic", borderTop: "1px solid rgba(255,255,255,.1)", paddingTop: "14px" }}>
"You don't have a goal problem. You have a system problem." — Tricia J.
</div>
</div>
{/* Footer */}
<div style={{ textAlign: "center", ...fadeIn(0.65) }}>
<FlowBadge size={40} fs={15} />
<div style={{ fontSize: "10px", color: C.mutedLight, letterSpacing: "2px", textTransform: "uppercase", margin: "10px 0 24px" }}>
Focus · Lean In · Own It · Win
</div>
<button onClick={reset} style={{
background: "transparent", border: `1.5px solid ${C.navyBorder}`, color: C.navy,
padding: "11px 32px", fontSize: "11px", letterSpacing: "2px", textTransform: "uppercase",
cursor: "pointer", fontFamily: "inherit", transition: "all .2s",
}}
onMouseEnter={e => { e.target.style.background = C.navy; e.target.style.color = "#fff"; e.target.style.borderColor = C.navy; }}
onMouseLeave={e => { e.target.style.background = "transparent"; e.target.style.color = C.navy; e.target.style.borderColor = C.navyBorder; }}
>
Retake Diagnostic
</button>
<div style={{ marginTop: "20px", fontSize: "10px", color: C.mutedLight, letterSpacing: "1px" }}>
Ask TPJ · The Purpose Doula · admin@asktpj.com
</div>
</div>
</Shell>
);
}
Popular
2025
New York
The Atlast Project →
“Communication was top-notch and the final outcome was even better than we imagined. A great experience all around.”
Former CustomerGet In Touch
If you're interested in working with us, complete the form with a few details about your project. We'll review your message and get back to you within 48 hours.