/* MedSpaCopy — Landing v4 sections (extension blocks for v0.4 spec).
Owns: Problem, Clinical Review, Free Report preview, How It Works,
Sample Articles, Why-not-ChatGPT, Who We Are Not For, FAQ, Footer CTA,
Sticky-nav. Reads tokens from window.MSC_V4 set by screens-v4.jsx. */
/* global React */
const { useEffect: lvE, useRef: lvR, useState: lvS } = React;
/* Tokens — duplicated locally so this file is self-contained but values
match screens-v4.jsx exactly. */
const LV = {
accent: '#1f5161',
accent600: '#173d4a',
warm: '#b8895c',
good: '#3d8b6e',
bad: '#a8553f',
ink: '#1a2226',
inkMid: '#39434a',
inkSoft: '#5c6772',
surface: '#ffffff',
surfaceTint: '#f6f3ee',
surfaceCool: '#eef1f3',
border: '#e1e6eb',
borderWarm: '#e6dccb',
};
const LV_FONT_SERIF = "var(--font-serif-display)";
const LV_FONT_SANS = "var(--font-sans-display)";
const LV_FONT_MONO = "var(--font-mono)";
const LV_FONT_BODY = "var(--font-body)";
/* =============================================================
01 · Section header — used across landing sections
============================================================= */
function LV_SectionHeader({ kicker, title, italicWord, eyebrow, kickerColor = LV.accent }) {
return (
{kicker}
{title}{italicWord && <> {italicWord}>}
{eyebrow &&
{eyebrow}
}
);
}
/* =============================================================
02 · Problem block — Why most med spa content fails
============================================================= */
function LV_ProblemBlock() {
const items = [
{ title: 'It sounds like every other clinic', body: "Generic posts don't reflect your protocols, tone, services, or patient experience." },
{ title: 'It misses high-intent patient questions', body: 'Patients search for recovery, safety, cost, downtime, and side effects before booking.' },
{ title: 'It creates clinical trust risk', body: 'Medical content needs accuracy and clinic-fit, not just keywords.' },
];
return (
{items.map((it, i) => (
−Failure mode {String(i + 1).padStart(2, '0')}
{it.title}
{it.body}
))}
);
}
/* =============================================================
03 · Clinical Review trust block
============================================================= */
function LV_ClinicalReview() {
const items = [
{ title: 'Claim-level review', body: 'Recovery timelines, safety language, aftercare, and protocol-sensitive details.' },
{ title: 'Clinic-fit, not generic accuracy', body: "A claim can be medically common but wrong for your clinic's protocol. We review for your actual service approach." },
{ title: 'Approve or request changes', body: 'Reviewer can approve, add notes, or request changes from their phone before delivery.' },
];
return (
{/* Faint accent grid in the background */}
Clinical review
Content your clinic can stand behind.
Before delivery, key medical claims are reviewed for accuracy and clinic-fit — so your content does not promise what your providers would not say.
Reviewed for patient-facing accuracy and clinic-fit. Not a substitute for legal, regulatory, or individual medical advice.
{items.map((it, i) => (
+
{it.title}
{it.body}
))}
);
}
/* =============================================================
04 · Free report preview — what the report shows + sample card
============================================================= */
function LV_FreeReportPreview() {
const checks = [
'Treatment pages and service coverage',
'Missing or weak meta signals',
'Patient questions not answered',
'Local visibility opportunities',
'AI-search readability',
'Quick wins your team can act on',
];
return (
);
}
/* =============================================================
07 · Why not just use ChatGPT?
============================================================= */
function LV_WhyNotChatGPT() {
const points = [
"ChatGPT doesn't know your service priorities",
"It doesn't see which pages miss signals",
"It doesn't provide clinician review for protocol-sensitive claims",
];
return (
{points.map((p, i) => (
−{p}
))}
+
MedSpaCopy uses AI where it helps — the product is strategy, research, review, and clinic-fit.
);
}
/* =============================================================
08 · Who we are not for
============================================================= */
function LV_NotForUs() {
const items = [
'Clinics looking for high-volume, low-cost blog posts',
'Generic healthcare websites outside aesthetics',
'Teams that want $50 SEO articles with no clinical review',
];
return (
Honest fit
Who we are not for.
We'd rather say no than ship work that won't move your clinic forward.
{items.map((it, i) => (
×{it}
))}
);
}
/* =============================================================
09 · FAQ accordion ×6
============================================================= */
function LV_FAQ() {
const items = [
{
q: 'Is this an AI writing tool?',
a: 'No. MedSpaCopy is AI-assisted research and drafting inside a managed editorial workflow with clinical review. The product is strategy, research, review, and clinic-fit — not a content generator you log into.',
},
{
q: 'Who reviews the articles?',
a: "Your medical director or a clinician you nominate. We also have an editorial team that reviews every article for structure, claim accuracy, and patient-readiness before it reaches your reviewer. If you don't have a clinician on staff, we can pair you with one of our review partners.",
},
{
q: 'Will Google penalize AI-assisted content?',
a: "Google's guidance is about quality and helpfulness, not about how content was made. Our articles are research-led, doctor-reviewed, and built around real patient questions — exactly the type of content Google rewards.",
},
{
q: "What if I don't have a doctor on staff?",
a: 'We can pair you with a clinician reviewer for protocol-sensitive claims. For most med spas this is a small per-article add-on; for larger clinics we set up a recurring review relationship.',
},
{
q: 'Can I cancel anytime?',
a: 'Yes. Articles are ordered one at a time from your plan — no contract, no minimum. Strategy Audit is a one-time purchase. Optional updates run month-to-month and cancel in one click.',
},
{
q: 'How fast is delivery?',
a: 'Free site report: ~5 minutes. Strategy Audit: ~7 business days. Articles: 5-10 business days from order to clinician approval, depending on review turnaround on your side.',
},
];
const [open, setOpen] = lvS(0);
return (