[object Object]

← back to Animals

[morning-review] animals: gate layoutPlayful + layoutBookingFirst.why by m.copy.medical so non-vet sites stop rendering vet copy

9e958c63f804407865358077e489d3067db45731 · 2026-05-10 00:17:51 -0700 · SteveStudio2

Two layouts unconditionally rendered veterinary-clinic copy:
- layoutPlayful (.pl-hero/.pl-grid) hardcoded "The {city} vet your pet
  actually wants to visit" + Dogs/Cats/Exotics exam-room cards. Houston
  Humane Society (a SHELTER) rendered this verbatim.
- layoutBookingFirst (.why-grid) hardcoded "Same-week openings / Honest
  pricing / Real follow-up — Email check-in 48h after every visit".
  Farrington Kennels (BOARDING) rendered the medical-follow-up promise.

Both now read m.copy.* from copyBundle() so kennel/shelter/store/groomer/
trainer/park/cafe categories get their appropriate s1/s2/s3 + lead, and
only true vets keep medical-flavored copy.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

Files touched

Diff

commit 9e958c63f804407865358077e489d3067db45731
Author: SteveStudio2 <stevestudio2@SteveStacStudio.lan>
Date:   Sun May 10 00:17:51 2026 -0700

    [morning-review] animals: gate layoutPlayful + layoutBookingFirst.why by m.copy.medical so non-vet sites stop rendering vet copy
    
    Two layouts unconditionally rendered veterinary-clinic copy:
    - layoutPlayful (.pl-hero/.pl-grid) hardcoded "The {city} vet your pet
      actually wants to visit" + Dogs/Cats/Exotics exam-room cards. Houston
      Humane Society (a SHELTER) rendered this verbatim.
    - layoutBookingFirst (.why-grid) hardcoded "Same-week openings / Honest
      pricing / Real follow-up — Email check-in 48h after every visit".
      Farrington Kennels (BOARDING) rendered the medical-follow-up promise.
    
    Both now read m.copy.* from copyBundle() so kennel/shelter/store/groomer/
    trainer/park/cafe categories get their appropriate s1/s2/s3 + lead, and
    only true vets keep medical-flavored copy.
    
    Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
---
 src/audit/design_system.js | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/src/audit/design_system.js b/src/audit/design_system.js
index c3bd3c7..85ef017 100644
--- a/src/audit/design_system.js
+++ b/src/audit/design_system.js
@@ -515,9 +515,9 @@ function layoutBookingFirst(biz, p, t, c) {
     </section>
     <section class=why>
       <div class=why-grid>
-        <div><h3>Same-week openings</h3><p>Most clients book within 3 days.</p></div>
-        <div><h3>Honest pricing</h3><p>Estimates before treatment. No surprises.</p></div>
-        <div><h3>Real follow-up</h3><p>Email check-in 48h after every visit.</p></div>
+        <div><h3>${esc(m.copy.s1.h)}</h3><p>${esc(m.copy.s1.p)}</p></div>
+        <div><h3>${esc(m.copy.s2.h)}</h3><p>${esc(m.copy.s2.p)}</p></div>
+        <div><h3>${esc(m.copy.s3.h)}</h3><p>${esc(m.copy.s3.p)}</p></div>
       </div>
     </section>
     <footer style="padding:2em 3em;color:var(--muted)">${m.addr}${m.phoneSep}</footer>`
@@ -747,13 +747,13 @@ function layoutPlayful(biz, p, t, c) {
     <section class=pl-hero>
       <small style="opacity:.7;font-weight:700;letter-spacing:.15em;text-transform:uppercase">${m.cat}</small>
       <h1>${m.name}</h1>
-      <p>The ${m.city||'neighborhood'} vet your pet actually wants to visit. Treats, head scratches, and zero waiting-room shaking.</p>
-      <a class=btn href=#book>Book online →</a>
+      <p>${m.copy.medical ? `The ${esc(m.city)||'neighborhood'} vet your pet actually wants to visit. Treats, head scratches, and zero waiting-room shaking.` : esc(m.copy.lead)}</p>
+      <a class=btn href=#book>${esc(m.copy.book2)} →</a>
     </section>
     <section class=pl-grid>
-      <div class=pl-card><div class=emoji>🐕</div><h3>Dogs</h3><p>From puppies to seniors, with treats and patience.</p></div>
-      <div class=pl-card><div class=emoji>🐈</div><h3>Cats</h3><p>Cat-only exam room. Calmer everything.</p></div>
-      <div class=pl-card><div class=emoji>🐰</div><h3>Exotics</h3><p>Rabbits, reptiles, birds, small mammals welcome.</p></div>
+      <div class=pl-card><div class=emoji>🐾</div><h3>${esc(m.copy.s1.h)}</h3><p>${esc(m.copy.s1.p)}</p></div>
+      <div class=pl-card><div class=emoji>🦴</div><h3>${esc(m.copy.s2.h)}</h3><p>${esc(m.copy.s2.p)}</p></div>
+      <div class=pl-card><div class=emoji>❤️</div><h3>${esc(m.copy.s3.h)}</h3><p>${esc(m.copy.s3.p)}</p></div>
     </section>
     <footer style="padding:2em 3em;text-align:center;color:var(--muted)">${m.addr}${m.phoneSep}</footer>`
   });

← 8fe1581 Revert "[morning-review] animals: gate layoutPlayful + layou  ·  back to Animals  ·  Revert "[morning-review] animals: gate layoutPlayful + layou 72174df →