← back to Animals
yolo: iter 2 trivial patches from claude-codex debate
f0625fbb8c868a4e905b4afc683ea1607f890516 · 2026-05-04 03:16:21 -0700 · yolo
Files touched
A public/mockups/biz-15249-a.htmlA public/mockups/biz-15249-b.htmlA public/mockups/biz-15249-c.htmlA public/mockups/biz-15251-a.htmlA public/mockups/biz-15251-b.htmlA public/mockups/biz-15251-c.htmlA public/mockups/biz-15254-a.htmlA public/mockups/biz-15254-b.htmlA public/mockups/biz-15254-c.htmlA public/mockups/biz-15258-a.htmlA public/mockups/biz-15258-b.htmlA public/mockups/biz-15258-c.htmlA public/mockups/biz-15261-a.htmlA public/mockups/biz-15261-b.htmlA public/mockups/biz-15261-c.htmlA public/mockups/biz-15264-a.htmlA public/mockups/biz-15264-b.htmlA public/mockups/biz-15264-c.htmlA public/mockups/biz-15279-a.htmlA public/mockups/biz-15279-b.htmlA public/mockups/biz-15279-c.htmlA public/mockups/biz-15281-a.htmlA public/mockups/biz-15281-b.htmlA public/mockups/biz-15281-c.htmlA public/mockups/biz-15289-a.htmlA public/mockups/biz-15289-b.htmlA public/mockups/biz-15289-c.htmlA public/mockups/biz-15295-a.htmlA public/mockups/biz-15295-b.htmlA public/mockups/biz-15295-c.htmlA public/mockups/biz-15296-a.htmlA public/mockups/biz-15296-b.htmlA public/mockups/biz-15296-c.htmlA public/mockups/biz-15297-a.htmlA public/mockups/biz-15297-b.htmlA public/mockups/biz-15297-c.htmlA public/mockups/biz-15303-a.htmlA public/mockups/biz-15303-b.htmlA public/mockups/biz-15303-c.htmlA public/mockups/biz-15305-a.htmlA public/mockups/biz-15305-b.htmlA public/mockups/biz-15305-c.htmlA public/mockups/biz-15320-a.htmlA public/mockups/biz-15320-b.htmlA public/mockups/biz-15320-c.htmlA public/mockups/biz-15322-a.htmlA public/mockups/biz-15322-b.htmlA public/mockups/biz-15322-c.htmlA public/mockups/biz-15334-a.htmlA public/mockups/biz-15334-b.htmlA public/mockups/biz-15334-c.htmlA public/mockups/biz-15351-a.htmlA public/mockups/biz-15351-b.htmlA public/mockups/biz-15351-c.htmlA public/mockups/biz-15359-a.htmlA public/mockups/biz-15359-b.htmlA public/mockups/biz-15359-c.htmlA public/mockups/biz-15360-a.htmlA public/mockups/biz-15360-b.htmlA public/mockups/biz-15360-c.htmlA public/mockups/biz-15362-a.htmlA public/mockups/biz-15362-b.htmlA public/mockups/biz-15362-c.htmlA public/mockups/biz-15363-a.htmlA public/mockups/biz-15363-b.htmlA public/mockups/biz-15363-c.htmlA public/mockups/biz-15365-a.htmlA public/mockups/biz-15365-b.htmlA public/mockups/biz-15365-c.htmlA public/mockups/biz-15367-a.htmlA public/mockups/biz-15367-b.htmlA public/mockups/biz-15367-c.htmlA public/mockups/biz-15372-a.htmlA public/mockups/biz-15372-b.htmlA public/mockups/biz-15372-c.htmlA public/mockups/biz-15377-a.htmlA public/mockups/biz-15377-b.htmlA public/mockups/biz-15377-c.htmlA public/mockups/biz-15386-a.htmlA public/mockups/biz-15386-b.htmlA public/mockups/biz-15386-c.htmlA public/mockups/biz-15391-a.htmlA public/mockups/biz-15391-b.htmlA public/mockups/biz-15391-c.htmlA public/mockups/biz-15413-a.htmlA public/mockups/biz-15413-b.htmlA public/mockups/biz-15413-c.htmlA public/mockups/biz-15417-a.htmlA public/mockups/biz-15417-b.htmlA public/mockups/biz-15417-c.htmlA public/mockups/biz-15442-a.htmlA public/mockups/biz-15442-b.htmlA public/mockups/biz-15442-c.htmlA public/mockups/biz-16460-a.htmlA public/mockups/biz-16460-b.htmlA public/mockups/biz-16460-c.htmlA public/mockups/biz-16483-a.htmlA public/mockups/biz-16483-b.htmlA public/mockups/biz-16483-c.htmlA public/mockups/biz-18438-a.htmlA public/mockups/biz-18438-b.htmlA public/mockups/biz-18438-c.htmlA public/mockups/biz-18445-a.htmlA public/mockups/biz-18445-b.htmlA public/mockups/biz-18445-c.htmlA public/mockups/biz-18447-a.htmlA public/mockups/biz-18447-b.htmlA public/mockups/biz-18447-c.htmlA public/mockups/biz-18449-a.htmlA public/mockups/biz-18449-b.htmlA public/mockups/biz-18449-c.htmlA public/mockups/biz-18452-a.htmlA public/mockups/biz-18452-b.htmlA public/mockups/biz-18452-c.htmlA public/mockups/biz-18476-a.htmlA public/mockups/biz-18476-b.htmlA public/mockups/biz-18476-c.htmlA public/mockups/biz-18486-a.htmlA public/mockups/biz-18486-b.htmlA public/mockups/biz-18486-c.htmlA public/mockups/biz-18492-a.htmlA public/mockups/biz-18492-b.htmlA public/mockups/biz-18492-c.htmlA public/mockups/biz-18550-a.htmlA public/mockups/biz-18550-b.htmlA public/mockups/biz-18550-c.htmlA public/mockups/biz-18625-a.htmlA public/mockups/biz-18625-b.htmlA public/mockups/biz-18625-c.htmlA public/mockups/biz-18630-a.htmlA public/mockups/biz-18630-b.htmlA public/mockups/biz-18630-c.htmlA public/mockups/biz-18688-a.htmlA public/mockups/biz-18688-b.htmlA public/mockups/biz-18688-c.htmlA public/mockups/biz-18696-a.htmlA public/mockups/biz-18696-b.htmlA public/mockups/biz-18696-c.htmlA public/sites/aquarium-adventure-hoffman-estates-il-5507/contact.htmlA public/sites/aquarium-adventure-hoffman-estates-il-5507/index.htmlA public/sites/aquarium-adventure-hoffman-estates-il-5507/services.htmlA public/sites/aquarium-adventure-hoffman-estates-il-5507/team.htmlA public/sites/bark-n-call-pet-shop-grooming-winthrop-harbor-il-5510/contact.htmlA public/sites/bark-n-call-pet-shop-grooming-winthrop-harbor-il-5510/index.htmlA public/sites/bark-n-call-pet-shop-grooming-winthrop-harbor-il-5510/services.htmlA public/sites/bark-n-call-pet-shop-grooming-winthrop-harbor-il-5510/team.htmlA public/sites/birds-and-beasts-pet-shop-crystal-lake-il-5488/contact.htmlA public/sites/birds-and-beasts-pet-shop-crystal-lake-il-5488/index.htmlA public/sites/birds-and-beasts-pet-shop-crystal-lake-il-5488/services.htmlA public/sites/birds-and-beasts-pet-shop-crystal-lake-il-5488/team.htmlA public/sites/coble-animal-hospital-springfield-il-5470/contact.htmlA public/sites/coble-animal-hospital-springfield-il-5470/index.htmlA public/sites/coble-animal-hospital-springfield-il-5470/services.htmlA public/sites/coble-animal-hospital-springfield-il-5470/team.htmlA public/sites/lucky-e-kennel-ringwood-il-5505/contact.htmlA public/sites/lucky-e-kennel-ringwood-il-5505/index.htmlA public/sites/lucky-e-kennel-ringwood-il-5505/services.htmlA public/sites/lucky-e-kennel-ringwood-il-5505/team.htmlA public/sites/pampered-pet-center-inc-springfield-il-5479/contact.htmlA public/sites/pampered-pet-center-inc-springfield-il-5479/index.htmlA public/sites/pampered-pet-center-inc-springfield-il-5479/services.htmlA public/sites/pampered-pet-center-inc-springfield-il-5479/team.htmlA public/sites/pet-supplies-plus-springfield-il-5535/contact.htmlA public/sites/pet-supplies-plus-springfield-il-5535/index.htmlA public/sites/pet-supplies-plus-springfield-il-5535/services.htmlA public/sites/pet-supplies-plus-springfield-il-5535/team.htmlA public/sites/the-paw-place-third-lake-il-5465/contact.htmlA public/sites/the-paw-place-third-lake-il-5465/index.htmlA public/sites/the-paw-place-third-lake-il-5465/services.htmlA public/sites/the-paw-place-third-lake-il-5465/team.htmlA public/sites/woodbine-hill-kennel-huntley-il-5509/contact.htmlA public/sites/woodbine-hill-kennel-huntley-il-5509/index.htmlA public/sites/woodbine-hill-kennel-huntley-il-5509/services.htmlA public/sites/woodbine-hill-kennel-huntley-il-5509/team.htmlA public/sites/yorkville-animal-hospital-yorkville-il-5457/contact.htmlA public/sites/yorkville-animal-hospital-yorkville-il-5457/index.htmlA public/sites/yorkville-animal-hospital-yorkville-il-5457/services.htmlA public/sites/yorkville-animal-hospital-yorkville-il-5457/team.html
Diff
commit f0625fbb8c868a4e905b4afc683ea1607f890516
Author: yolo <yolo@local>
Date: Mon May 4 03:16:21 2026 -0700
yolo: iter 2 trivial patches from claude-codex debate
---
public/mockups/biz-15249-a.html | 65 +++++++++++++++++++++
public/mockups/biz-15249-b.html | 51 ++++++++++++++++
public/mockups/biz-15249-c.html | 39 +++++++++++++
public/mockups/biz-15251-a.html | 49 ++++++++++++++++
public/mockups/biz-15251-b.html | 44 ++++++++++++++
public/mockups/biz-15251-c.html | 63 ++++++++++++++++++++
public/mockups/biz-15254-a.html | 51 ++++++++++++++++
public/mockups/biz-15254-b.html | 42 +++++++++++++
public/mockups/biz-15254-c.html | 63 ++++++++++++++++++++
public/mockups/biz-15258-a.html | 63 ++++++++++++++++++++
public/mockups/biz-15258-b.html | 49 ++++++++++++++++
public/mockups/biz-15258-c.html | 65 +++++++++++++++++++++
public/mockups/biz-15261-a.html | 65 +++++++++++++++++++++
public/mockups/biz-15261-b.html | 42 +++++++++++++
public/mockups/biz-15261-c.html | 45 ++++++++++++++
public/mockups/biz-15264-a.html | 49 ++++++++++++++++
public/mockups/biz-15264-b.html | 60 +++++++++++++++++++
public/mockups/biz-15264-c.html | 44 ++++++++++++++
public/mockups/biz-15279-a.html | 51 ++++++++++++++++
public/mockups/biz-15279-b.html | 60 +++++++++++++++++++
public/mockups/biz-15279-c.html | 44 ++++++++++++++
public/mockups/biz-15281-a.html | 39 +++++++++++++
public/mockups/biz-15281-b.html | 63 ++++++++++++++++++++
public/mockups/biz-15281-c.html | 59 +++++++++++++++++++
public/mockups/biz-15289-a.html | 49 ++++++++++++++++
public/mockups/biz-15289-b.html | 49 ++++++++++++++++
public/mockups/biz-15289-c.html | 51 ++++++++++++++++
public/mockups/biz-15295-a.html | 45 ++++++++++++++
public/mockups/biz-15295-b.html | 65 +++++++++++++++++++++
public/mockups/biz-15295-c.html | 44 ++++++++++++++
public/mockups/biz-15296-a.html | 45 ++++++++++++++
public/mockups/biz-15296-b.html | 59 +++++++++++++++++++
public/mockups/biz-15296-c.html | 50 ++++++++++++++++
public/mockups/biz-15297-a.html | 51 ++++++++++++++++
public/mockups/biz-15297-b.html | 45 ++++++++++++++
public/mockups/biz-15297-c.html | 50 ++++++++++++++++
public/mockups/biz-15303-a.html | 49 ++++++++++++++++
public/mockups/biz-15303-b.html | 42 +++++++++++++
public/mockups/biz-15303-c.html | 51 ++++++++++++++++
public/mockups/biz-15305-a.html | 44 ++++++++++++++
public/mockups/biz-15305-b.html | 63 ++++++++++++++++++++
public/mockups/biz-15305-c.html | 49 ++++++++++++++++
public/mockups/biz-15320-a.html | 49 ++++++++++++++++
public/mockups/biz-15320-b.html | 63 ++++++++++++++++++++
public/mockups/biz-15320-c.html | 65 +++++++++++++++++++++
public/mockups/biz-15322-a.html | 65 +++++++++++++++++++++
public/mockups/biz-15322-b.html | 56 ++++++++++++++++++
public/mockups/biz-15322-c.html | 42 +++++++++++++
public/mockups/biz-15334-a.html | 63 ++++++++++++++++++++
public/mockups/biz-15334-b.html | 44 ++++++++++++++
public/mockups/biz-15334-c.html | 45 ++++++++++++++
public/mockups/biz-15351-a.html | 56 ++++++++++++++++++
public/mockups/biz-15351-b.html | 45 ++++++++++++++
public/mockups/biz-15351-c.html | 49 ++++++++++++++++
public/mockups/biz-15359-a.html | 45 ++++++++++++++
public/mockups/biz-15359-b.html | 60 +++++++++++++++++++
public/mockups/biz-15359-c.html | 63 ++++++++++++++++++++
public/mockups/biz-15360-a.html | 44 ++++++++++++++
public/mockups/biz-15360-b.html | 49 ++++++++++++++++
public/mockups/biz-15360-c.html | 56 ++++++++++++++++++
public/mockups/biz-15362-a.html | 39 +++++++++++++
public/mockups/biz-15362-b.html | 49 ++++++++++++++++
public/mockups/biz-15362-c.html | 60 +++++++++++++++++++
public/mockups/biz-15363-a.html | 60 +++++++++++++++++++
public/mockups/biz-15363-b.html | 42 +++++++++++++
public/mockups/biz-15363-c.html | 51 ++++++++++++++++
public/mockups/biz-15365-a.html | 49 ++++++++++++++++
public/mockups/biz-15365-b.html | 45 ++++++++++++++
public/mockups/biz-15365-c.html | 39 +++++++++++++
public/mockups/biz-15367-a.html | 45 ++++++++++++++
public/mockups/biz-15367-b.html | 65 +++++++++++++++++++++
public/mockups/biz-15367-c.html | 39 +++++++++++++
public/mockups/biz-15372-a.html | 51 ++++++++++++++++
public/mockups/biz-15372-b.html | 59 +++++++++++++++++++
public/mockups/biz-15372-c.html | 44 ++++++++++++++
public/mockups/biz-15377-a.html | 49 ++++++++++++++++
public/mockups/biz-15377-b.html | 51 ++++++++++++++++
public/mockups/biz-15377-c.html | 51 ++++++++++++++++
public/mockups/biz-15386-a.html | 65 +++++++++++++++++++++
public/mockups/biz-15386-b.html | 59 +++++++++++++++++++
public/mockups/biz-15386-c.html | 42 +++++++++++++
public/mockups/biz-15391-a.html | 45 ++++++++++++++
public/mockups/biz-15391-b.html | 59 +++++++++++++++++++
public/mockups/biz-15391-c.html | 44 ++++++++++++++
public/mockups/biz-15413-a.html | 56 ++++++++++++++++++
public/mockups/biz-15413-b.html | 49 ++++++++++++++++
public/mockups/biz-15413-c.html | 63 ++++++++++++++++++++
public/mockups/biz-15417-a.html | 42 +++++++++++++
public/mockups/biz-15417-b.html | 65 +++++++++++++++++++++
public/mockups/biz-15417-c.html | 56 ++++++++++++++++++
public/mockups/biz-15442-a.html | 50 ++++++++++++++++
public/mockups/biz-15442-b.html | 45 ++++++++++++++
public/mockups/biz-15442-c.html | 49 ++++++++++++++++
public/mockups/biz-16460-a.html | 42 +++++++++++++
public/mockups/biz-16460-b.html | 59 +++++++++++++++++++
public/mockups/biz-16460-c.html | 63 ++++++++++++++++++++
public/mockups/biz-16483-a.html | 45 ++++++++++++++
public/mockups/biz-16483-b.html | 63 ++++++++++++++++++++
public/mockups/biz-16483-c.html | 65 +++++++++++++++++++++
public/mockups/biz-18438-a.html | 39 +++++++++++++
public/mockups/biz-18438-b.html | 45 ++++++++++++++
public/mockups/biz-18438-c.html | 44 ++++++++++++++
public/mockups/biz-18445-a.html | 51 ++++++++++++++++
public/mockups/biz-18445-b.html | 42 +++++++++++++
public/mockups/biz-18445-c.html | 44 ++++++++++++++
public/mockups/biz-18447-a.html | 42 +++++++++++++
public/mockups/biz-18447-b.html | 49 ++++++++++++++++
public/mockups/biz-18447-c.html | 45 ++++++++++++++
public/mockups/biz-18449-a.html | 49 ++++++++++++++++
public/mockups/biz-18449-b.html | 60 +++++++++++++++++++
public/mockups/biz-18449-c.html | 49 ++++++++++++++++
public/mockups/biz-18452-a.html | 56 ++++++++++++++++++
public/mockups/biz-18452-b.html | 51 ++++++++++++++++
public/mockups/biz-18452-c.html | 51 ++++++++++++++++
public/mockups/biz-18476-a.html | 60 +++++++++++++++++++
public/mockups/biz-18476-b.html | 42 +++++++++++++
public/mockups/biz-18476-c.html | 51 ++++++++++++++++
public/mockups/biz-18486-a.html | 65 +++++++++++++++++++++
public/mockups/biz-18486-b.html | 50 ++++++++++++++++
public/mockups/biz-18486-c.html | 44 ++++++++++++++
public/mockups/biz-18492-a.html | 45 ++++++++++++++
public/mockups/biz-18492-b.html | 63 ++++++++++++++++++++
public/mockups/biz-18492-c.html | 59 +++++++++++++++++++
public/mockups/biz-18550-a.html | 42 +++++++++++++
public/mockups/biz-18550-b.html | 39 +++++++++++++
public/mockups/biz-18550-c.html | 60 +++++++++++++++++++
public/mockups/biz-18625-a.html | 44 ++++++++++++++
public/mockups/biz-18625-b.html | 56 ++++++++++++++++++
public/mockups/biz-18625-c.html | 45 ++++++++++++++
public/mockups/biz-18630-a.html | 42 +++++++++++++
public/mockups/biz-18630-b.html | 63 ++++++++++++++++++++
public/mockups/biz-18630-c.html | 56 ++++++++++++++++++
public/mockups/biz-18688-a.html | 45 ++++++++++++++
public/mockups/biz-18688-b.html | 56 ++++++++++++++++++
public/mockups/biz-18688-c.html | 49 ++++++++++++++++
public/mockups/biz-18696-a.html | 50 ++++++++++++++++
public/mockups/biz-18696-b.html | 51 ++++++++++++++++
public/mockups/biz-18696-c.html | 42 +++++++++++++
.../contact.html | 55 +++++++++++++++++
.../index.html | 49 ++++++++++++++++
.../services.html | 57 ++++++++++++++++++
.../team.html | 50 ++++++++++++++++
.../contact.html | 51 ++++++++++++++++
.../index.html | 45 ++++++++++++++
.../services.html | 53 +++++++++++++++++
.../team.html | 46 +++++++++++++++
.../contact.html | 66 +++++++++++++++++++++
.../index.html | 60 +++++++++++++++++++
.../services.html | 68 ++++++++++++++++++++++
.../team.html | 61 +++++++++++++++++++
.../contact.html | 65 +++++++++++++++++++++
.../index.html | 59 +++++++++++++++++++
.../services.html | 67 +++++++++++++++++++++
.../team.html | 60 +++++++++++++++++++
.../lucky-e-kennel-ringwood-il-5505/contact.html | 66 +++++++++++++++++++++
.../lucky-e-kennel-ringwood-il-5505/index.html | 60 +++++++++++++++++++
.../lucky-e-kennel-ringwood-il-5505/services.html | 68 ++++++++++++++++++++++
.../lucky-e-kennel-ringwood-il-5505/team.html | 61 +++++++++++++++++++
.../contact.html | 65 +++++++++++++++++++++
.../index.html | 59 +++++++++++++++++++
.../services.html | 67 +++++++++++++++++++++
.../team.html | 60 +++++++++++++++++++
.../contact.html | 51 ++++++++++++++++
.../index.html | 45 ++++++++++++++
.../services.html | 53 +++++++++++++++++
.../team.html | 46 +++++++++++++++
.../the-paw-place-third-lake-il-5465/contact.html | 62 ++++++++++++++++++++
.../the-paw-place-third-lake-il-5465/index.html | 56 ++++++++++++++++++
.../the-paw-place-third-lake-il-5465/services.html | 64 ++++++++++++++++++++
.../the-paw-place-third-lake-il-5465/team.html | 57 ++++++++++++++++++
.../contact.html | 45 ++++++++++++++
.../index.html | 39 +++++++++++++
.../services.html | 47 +++++++++++++++
.../woodbine-hill-kennel-huntley-il-5509/team.html | 40 +++++++++++++
.../contact.html | 45 ++++++++++++++
.../index.html | 39 +++++++++++++
.../services.html | 47 +++++++++++++++
.../team.html | 40 +++++++++++++
178 files changed, 9269 insertions(+)
diff --git a/public/mockups/biz-15249-a.html b/public/mockups/biz-15249-a.html
new file mode 100644
index 0000000..13f188e
--- /dev/null
+++ b/public/mockups/biz-15249-a.html
@@ -0,0 +1,65 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Source%2BSerif%2BPro%3Awght%40400%3B700%3B900%26family%3DSource%2BSans%2BPro%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0a0a14; --paper:#f0e8d8; --accent:#0a0a14;
+ --accent2:#c8a85e; --muted:#5d5e6e; --rule:#dccfb3;
+ --h-font:'Source Serif Pro', serif; --b-font:'Source Sans Pro', system-ui, sans-serif;
+ --btn-r:10px; --card-r:12px; --card-shadow:0 4px 14px rgba(0,0,0,.06);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .mc-nav{padding:1.4em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule);background:var(--paper);position:sticky;top:0;z-index:10}
+ .mc-nav strong{font-size:1.1em}
+ .mc-nav nav a{margin-left:1.5em;color:var(--ink);font-weight:500}
+ .mc-hero{padding:6em 3em 4em;text-align:left;max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr;gap:4em;align-items:end}
+ .mc-hero h1{font-size:3.8em;font-weight:800;letter-spacing:-.025em;line-height:1.05;margin:0}
+ .mc-hero p{font-size:1.2em;color:var(--muted);margin:1em 0;max-width:520px}
+ .mc-hero .actions{display:flex;gap:1em}
+ .mc-hero .badges{display:grid;grid-template-columns:1fr 1fr;gap:.7em;align-items:end}
+ .mc-hero .badge{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:.8em;text-align:center;font-size:.85em}
+ .mc-hero .badge strong{display:block;color:var(--accent);font-size:1.4em;font-family:var(--h-font);font-weight:900}
+ .mc-services{padding:4em 3em;background:var(--rule)}
+ .mc-services h2{font-size:1.8em;text-align:center;margin-bottom:2em}
+ .mc-services ul{list-style:none;padding:0;max-width:900px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:1em}
+ .mc-services li{background:var(--paper);padding:1.2em 1.5em;border-radius:var(--card-r);font-weight:600;display:flex;justify-content:space-between;align-items:center}
+ .mc-services li small{color:var(--muted);font-weight:400}
+</style></head><body>
+ <nav class=mc-nav><strong>Patriot Pet Supply</strong><nav><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a></nav><a class=btn href=#book>Book</a></nav>
+ <section class=mc-hero>
+ <div>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">pet store · Elverson, PA</small>
+ <h1>Modern medicine. Honest pricing. Real follow-through.</h1>
+ <p>The veterinary practice Elverson has been waiting for. Open 7 days. Online booking. Email reminders. Estimates before treatment.</p>
+ <div class=actions><a class=btn href=#book>Book in 60 seconds</a><a class=btn-ghost href=#tour>Take a tour →</a></div>
+ </div>
+ <div class=badges>
+ <div class=badge><strong>★ 4.9</strong>412 reviews</div>
+ <div class=badge><strong>7 days</strong>Open weekly</div>
+ <div class=badge><strong>$95</strong>Wellness exam</div>
+ <div class=badge><strong>24h</strong>Lab results</div>
+ </div>
+ </section>
+ <section class=mc-services>
+ <h2>Common visits</h2>
+ <ul>
+ <li>Annual wellness <small>$95</small></li>
+ <li>Sick visit <small>$110</small></li>
+ <li>Dental cleaning <small>From $450</small></li>
+ <li>Spay / neuter <small>From $225</small></li>
+ <li>Vaccine package <small>$140</small></li>
+ <li>Senior bloodwork <small>$185</small></li>
+ </ul>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">200 Crossings Boulevard, Elverson, PA, 19520 · +1 610-901-8332</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15249-b.html b/public/mockups/biz-15249-b.html
new file mode 100644
index 0000000..60ac6ec
--- /dev/null
+++ b/public/mockups/biz-15249-b.html
@@ -0,0 +1,51 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Playfair%2BDisplay%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c1d2e; --paper:#f4f8fb; --accent:#0a4d6e;
+ --accent2:#e89241; --muted:#5d748a; --rule:#d5e1ea;
+ --h-font:'Playfair Display', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:10px; --card-r:12px; --card-shadow:0 4px 14px rgba(0,0,0,.06);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .com-hero{padding:5em 3em;text-align:center;background:radial-gradient(circle at 30% 30%,#d5e1ea 0%,#f4f8fb 60%)}
+ .com-hero small{text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700;font-size:.85em}
+ .com-hero h1{font-size:3em;margin:.3em 0 .5em;font-weight:800}
+ .com-hero p{color:var(--muted);max-width:600px;margin:0 auto 2em}
+ .testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5em;padding:3em;max-width:1200px;margin:0 auto}
+ .quote{background:#fff;padding:2em;border-radius:var(--card-r);box-shadow:var(--card-shadow);position:relative}
+ .quote:before{content:'"';position:absolute;top:.1em;left:.5em;font-size:5em;color:var(--accent);opacity:.15;font-family:Georgia,serif}
+ .quote p{font-style:italic;margin:0 0 1em;color:var(--ink);line-height:1.5}
+ .quote .by{color:var(--muted);font-size:.85em}
+ .strip{background:var(--accent);color:var(--paper);padding:2em 3em;text-align:center}
+ .strip h2{margin:0 0 .5em;font-size:2em;color:var(--paper)}
+ .strip a{color:var(--paper);background:var(--accent2);padding:.7em 1.5em;border-radius:var(--btn-r);font-weight:700;display:inline-block;margin-top:.5em}
+</style></head><body>
+ <section class=com-hero>
+ <small>pet store · Elverson, PA</small>
+ <h1>Patriot Pet Supply</h1>
+ <p>Caring for Elverson's pets since 2008. We see the same families generation after generation — that's the kind of clinic we want to be.</p>
+ <a class=btn href=#book>Book a visit</a>
+ </section>
+ <section class=testimonials>
+ <div class=quote><p>They saved my dog's life. There's no other way to put it.</p><div class=by>— Maria G., Elverson</div></div>
+ <div class=quote><p>The first vet office where my cat doesn't shake. They actually understand cats.</p><div class=by>— Aaron P.</div></div>
+ <div class=quote><p>Honest about prices, kind to my anxious puppy, and they remember us by name.</p><div class=by>— Devon R.</div></div>
+ </section>
+ <section class=strip>
+ <h2>Same-day sick visits, every weekday</h2>
+ <a href=#>Check today's openings →</a>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted);text-align:center">200 Crossings Boulevard, Elverson, PA, 19520 · +1 610-901-8332</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15249-c.html b/public/mockups/biz-15249-c.html
new file mode 100644
index 0000000..8f50ea2
--- /dev/null
+++ b/public/mockups/biz-15249-c.html
@@ -0,0 +1,39 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Merriweather%3Awght%40400%3B700%3B900%26family%3DIBM%2BPlex%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0a0a0a; --paper:#fffaf3; --accent:#dc2626;
+ --accent2:#1f2937; --muted:#52525b; --rule:#fde2cf;
+ --h-font:'Merriweather', serif; --b-font:'IBM Plex Sans', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{display:flex;flex-direction:column;min-height:100vh}
+ .min-nav{padding:2em 4em;display:flex;justify-content:space-between;align-items:center;font-size:.9em;letter-spacing:.05em}
+ .min-nav strong{font-size:1em;font-weight:600}
+ .min-nav a{margin-left:1.5em;color:var(--ink)}
+ .min-hero{flex:1;padding:6em 4em;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:900px;margin:0 auto}
+ .min-hero h1{font-size:5em;font-weight:300;letter-spacing:-.04em;line-height:1.05;margin:0 0 .3em}
+ .min-hero p{font-size:1.2em;color:var(--muted);max-width:520px;margin:1em 0 2em;line-height:1.7;font-weight:300}
+ .min-hero .arrow{font-size:1em;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:.2em}
+ .min-foot{padding:2em 4em;border-top:1px solid var(--rule);display:flex;justify-content:space-between;color:var(--muted);font-size:.85em}
+</style></head><body>
+ <header class=min-nav><strong>Patriot Pet Supply</strong><div><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a><a href=#>Book</a></div></header>
+ <main class=min-hero>
+ <h1>Patriot Pet Supply.</h1>
+ <p>A small, deliberately quiet veterinary practice in Elverson.<br>By appointment.</p>
+ <a class=arrow href=#book>Request an appointment →</a>
+ </main>
+ <footer class=min-foot><span>200 Crossings Boulevard, Elverson, PA, 19520</span><span>+1 610-901-8332</span></footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15251-a.html b/public/mockups/biz-15251-a.html
new file mode 100644
index 0000000..4027af7
--- /dev/null
+++ b/public/mockups/biz-15251-a.html
@@ -0,0 +1,49 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Manrope%3Awght%40400%3B700%3B900%26family%3DManrope%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1f1818; --paper:#fdf8f3; --accent:#a01a3a;
+ --accent2:#345b3b; --muted:#807070; --rule:#ebd5d0;
+ --h-font:'Manrope', serif; --b-font:'Manrope', system-ui, sans-serif;
+ --btn-r:10px; --card-r:12px; --card-shadow:0 4px 14px rgba(0,0,0,.06);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{background:var(--paper)}
+ .luxe{padding:6em 5em;max-width:1100px;margin:0 auto;text-align:center}
+ .luxe small{font-family:var(--h-font);font-style:italic;font-size:1em;color:var(--accent);letter-spacing:.05em}
+ .luxe h1{font-size:5em;margin:.2em 0;font-weight:400;letter-spacing:-.02em;line-height:1}
+ .luxe .tag{font-family:var(--h-font);font-style:italic;font-size:1.4em;color:var(--muted);margin:.5em 0 2em}
+ .luxe .ornament{display:block;margin:1.5em auto;width:120px;height:1px;background:var(--accent)}
+ .luxe p.intro{max-width:640px;margin:0 auto 2.5em;font-size:1.1em;line-height:1.7;color:var(--ink)}
+ .luxe .cta{display:inline-block;border:1px solid var(--ink);padding:1.1em 2.4em;letter-spacing:.2em;text-transform:uppercase;font-size:.85em;font-weight:600;color:var(--ink)}
+ .pillars2{display:grid;grid-template-columns:repeat(3,1fr);max-width:1100px;margin:0 auto;gap:0;border-top:1px solid var(--rule)}
+ .pillars2 > div{padding:3em 2em;border-right:1px solid var(--rule);text-align:center}
+ .pillars2 > div:last-child{border:0}
+ .pillars2 h3{font-family:var(--h-font);font-style:italic;font-size:1.4em;font-weight:400;color:var(--accent)}
+</style></head><body>
+ <main class=luxe>
+ <small>established · 1989</small>
+ <h1>Kulpmont Dog Park</h1>
+ <div class=tag>A veterinary concierge for discerning families.</div>
+ <span class=ornament></span>
+ <p class=intro>For thirty years, the same families have entrusted us with their pets — across generations, through every illness, every joy, every loss. We answer the phone ourselves. We remember what you fed your dog last summer. That is the practice we have built.</p>
+ <a class=cta href=#book>Become a client</a>
+ </main>
+ <section class=pillars2>
+ <div><h3>House calls</h3><p>For senior pets, end-of-life care, or pets who simply hate the car.</p></div>
+ <div><h3>Concierge medicine</h3><p>Direct cell-phone access to your DVM. No portal. No phone tree.</p></div>
+ <div><h3>Estate planning</h3><p>Pet-trust referrals, end-of-life planning, in-home euthanasia.</p></div>
+ </section>
+ <footer style="padding:3em;text-align:center;color:var(--muted);font-size:.85em">PA · </footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15251-b.html b/public/mockups/biz-15251-b.html
new file mode 100644
index 0000000..5001e7b
--- /dev/null
+++ b/public/mockups/biz-15251-b.html
@@ -0,0 +1,44 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Libre%2BBaskerville%3Awght%40400%3B700%3B900%26family%3DOpen%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c0c10; --paper:#f8f0e8; --accent:#6b1820;
+ --accent2:#a18443; --muted:#73575a; --rule:#e6d4c3;
+ --h-font:'Libre Baskerville', serif; --b-font:'Open Sans', system-ui, sans-serif;
+ --btn-r:12px; --card-r:14px; --card-shadow:0 16px 40px rgba(0,0,0,.12);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .bq-hero{padding:5em 4em;background:linear-gradient(180deg,#e6d4c3,#f8f0e8);text-align:center}
+ .bq-hero small{font-style:italic;font-family:var(--h-font);font-size:1.1em;color:var(--accent)}
+ .bq-hero h1{font-size:4em;margin:.3em 0 .5em;font-weight:400;letter-spacing:-.01em}
+ .bq-hero p{color:var(--muted);font-size:1.15em;max-width:560px;margin:0 auto 2em;line-height:1.7}
+ .bq-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 4em;max-width:1200px;margin:0 auto}
+ .bq-card{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:2em;text-align:center}
+ .bq-card .ico{font-size:2.4em;color:var(--accent2)}
+ .bq-card h3{font-style:italic;font-family:var(--h-font);margin:.5em 0;font-size:1.4em;font-weight:400}
+ .bq-card p{color:var(--muted);font-size:.95em;line-height:1.6;margin:0}
+</style></head><body>
+ <section class=bq-hero>
+ <small>dog park</small>
+ <h1>Kulpmont Dog Park</h1>
+ <p>A neighborhood veterinary practice that feels like home — in the best part of town.</p>
+ <a class=btn href=#book>Book a visit</a>
+ </section>
+ <section class=bq-cards>
+ <div class=bq-card><div class=ico>🐾</div><h3>Wellness</h3><p>Annual exams, vaccines, parasite prevention, nutrition.</p></div>
+ <div class=bq-card><div class=ico>🦴</div><h3>Dental</h3><p>Cleanings under anesthesia with continuous monitoring.</p></div>
+ <div class=bq-card><div class=ico>❤️</div><h3>Senior care</h3><p>A dedicated quarterly visit for pets 8+, with bloodwork.</p></div>
+ </section>
+ <footer style="padding:2em 4em;text-align:center;color:var(--muted)">PA · </footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15251-c.html b/public/mockups/biz-15251-c.html
new file mode 100644
index 0000000..3c07826
--- /dev/null
+++ b/public/mockups/biz-15251-c.html
@@ -0,0 +1,63 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Space%2BGrotesk%3Awght%40400%3B700%3B900%26family%3DSpace%2BGrotesk%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1a1a1a; --paper:#fafaf7; --accent:#0f4d3a;
+ --accent2:#c97a3e; --muted:#6b6b6b; --rule:#e6e1d6;
+ --h-font:'Space Grotesk', serif; --b-font:'Space Grotesk', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .news{max-width:1100px;margin:0 auto;padding:2em 3em}
+ .news .nameplate{border-top:6px solid var(--ink);border-bottom:3px solid var(--ink);padding:1em 0;text-align:center}
+ .news .nameplate h1{font-size:3em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .news .nameplate small{display:block;color:var(--muted);font-size:.9em;text-transform:uppercase;letter-spacing:.2em;margin-top:.5em}
+ .news .lead-story{padding:2em 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:2fr 1fr;gap:3em}
+ .news .lead-story h2{font-size:2.6em;font-weight:900;line-height:1.05;margin:0 0 .5em}
+ .news .lead-story .sub{font-size:1.1em;color:var(--muted);font-style:italic}
+ .news .sidebar h3{font-size:1.2em;text-transform:uppercase;letter-spacing:.1em;border-bottom:2px solid var(--accent);padding-bottom:.4em}
+ .news .sidebar ul{list-style:none;padding:0;margin:0}
+ .news .sidebar li{padding:.6em 0;border-bottom:1px dotted var(--rule);font-size:.95em}
+ .news .col3{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:2em 0;border-bottom:1px solid var(--rule)}
+ .news .col3 h3{font-size:1.3em;border-bottom:1px solid var(--rule);padding-bottom:.4em}
+</style></head><body>
+ <article class=news>
+ <header class=nameplate>
+ <h1>Kulpmont Dog Park</h1>
+ <small>dog park · , PA · Monday, May 4, 2026</small>
+ </header>
+ <section class=lead-story>
+ <div>
+ <h2>New: Same-day appointments are back, all weekdays.</h2>
+ <p class=sub>After a six-month staffing rebuild, we've reopened walk-in sick visits Monday through Friday. Call before 11 AM, see your DVM before 5.</p>
+ <a class=btn href=#book>Book today's visit</a>
+ </div>
+ <aside class=sidebar>
+ <h3>This week</h3>
+ <ul>
+ <li>Vaccine clinic — Saturday 9-12</li>
+ <li>Senior wellness day — every Wed</li>
+ <li>Free puppy meet-up — first Sat/mo</li>
+ <li>End-of-life consults — by appt</li>
+ </ul>
+ </aside>
+ </section>
+ <section class=col3>
+ <div><h3>General Practice</h3><p>Annual wellness exams, vaccinations, and personalized care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with continuous anesthetic monitoring.</p></div>
+ <div><h3>Specialty Referrals</h3><p>Cardiology, dermatology, oncology — we know the right specialists.</p></div>
+ </section>
+ <footer style="padding:2em 0;color:var(--muted)">PA · </footer>
+ </article></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15254-a.html b/public/mockups/biz-15254-a.html
new file mode 100644
index 0000000..71363c1
--- /dev/null
+++ b/public/mockups/biz-15254-a.html
@@ -0,0 +1,51 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Libre%2BBaskerville%3Awght%40400%3B700%3B900%26family%3DOpen%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#171515; --paper:#f5f5f4; --accent:#44403c;
+ --accent2:#a18267; --muted:#78716c; --rule:#e7e5e4;
+ --h-font:'Libre Baskerville', serif; --b-font:'Open Sans', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:inset 0 -3px 0 var(--accent2);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .split{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}
+ .split-left{padding:5em 4em;background:var(--accent);color:var(--paper);display:flex;flex-direction:column;justify-content:center}
+ .split-right{padding:5em 4em;background:var(--paper);display:flex;flex-direction:column;justify-content:center}
+ .split-left h1{font-size:3.6em;font-weight:900;letter-spacing:-.03em;line-height:1}
+ .split-left p{opacity:.85;font-size:1.15em;margin:1em 0 2em;max-width:480px}
+ .split-right h2{font-size:1.8em;margin-bottom:1em}
+ .svc{padding:1em 0;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:center}
+ .svc:last-child{border:0}
+ .svc strong{color:var(--ink)}
+ .svc small{color:var(--muted)}
+ .svc a{color:var(--accent);font-weight:600}
+</style></head><body>
+ <main class=split>
+ <section class=split-left>
+ <small style="opacity:.7;letter-spacing:.15em;text-transform:uppercase;font-weight:700">vet clinic</small>
+ <h1>Pocopson Veterinary Station</h1>
+ <p>Modern veterinary medicine. Honest prices. Real people who remember your pet's name.</p>
+ <div><a class=btn-2 href=#book>Book online</a></div>
+ </section>
+ <section class=split-right>
+ <h2>What we do</h2>
+ <div class=svc><div><strong>Annual wellness</strong><br><small>Includes vaccines + parasite prevention</small></div><a href=#>$95</a></div>
+ <div class=svc><div><strong>Sick visit</strong><br><small>Same-day when we can fit you</small></div><a href=#>$110</a></div>
+ <div class=svc><div><strong>Dental cleaning</strong><br><small>Includes anesthesia + monitoring</small></div><a href=#>From $450</a></div>
+ <div class=svc><div><strong>Spay/Neuter</strong><br><small>Cats and dogs both</small></div><a href=#>From $225</a></div>
+ <hr class=divider>
+ <p class=muted>2100 West Street Road, West Chester, PA, 19382 · +1 610-793-3200</p>
+ </section>
+ </main></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15254-b.html b/public/mockups/biz-15254-b.html
new file mode 100644
index 0000000..2a14919
--- /dev/null
+++ b/public/mockups/biz-15254-b.html
@@ -0,0 +1,42 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1a221a; --paper:#f6f9f1; --accent:#3a6d3a;
+ --accent2:#a14d3d; --muted:#6c7766; --rule:#dde5d3;
+ --h-font:'Inter', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:6px; --card-r:8px; --card-shadow:none;
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .cal-hero{padding:4em 3em;text-align:center;background:linear-gradient(160deg,#dde5d3,#f6f9f1)}
+ .cal-hero h1{font-size:3.4em;font-weight:800;margin:0 0 .3em}
+ .cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5em;max-width:900px;margin:2em auto;padding:0 2em}
+ .cal-cell{background:#fff;padding:1em .5em;text-align:center;border-radius:var(--btn-r);box-shadow:var(--card-shadow);font-weight:600}
+ .cal-cell .dow{font-size:.7em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;display:block}
+ .cal-cell .num{font-size:1.3em;font-family:var(--h-font);color:var(--accent);font-weight:900}
+ .cal-cell.closed{opacity:.3}
+ .cal-cell.open:hover{background:var(--accent);color:var(--paper);cursor:pointer}
+ .cal-cell.open:hover .num,.cal-cell.open:hover .dow{color:var(--paper)}
+</style></head><body>
+ <section class=cal-hero>
+ <small style="letter-spacing:.15em;text-transform:uppercase;color:var(--accent2);font-weight:700">vet clinic · West Chester, PA</small>
+ <h1>Pocopson Veterinary Station</h1>
+ <p class=muted>Pick a day. We'll text you the openings.</p>
+ <div class=cal-grid>
+ <div class="cal-cell open"><span class=dow>Mon</span><span class=num>4</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>5</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>6</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>7</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>8</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>9</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>10</span></div><div class="cal-cell open"><span class=dow>Mon</span><span class=num>11</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>12</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>13</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>14</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>15</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>16</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>17</span></div>
+ </div>
+ <a class=btn href=#book>Continue →</a>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">2100 West Street Road, West Chester, PA, 19382 · +1 610-793-3200</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15254-c.html b/public/mockups/biz-15254-c.html
new file mode 100644
index 0000000..93df684
--- /dev/null
+++ b/public/mockups/biz-15254-c.html
@@ -0,0 +1,63 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Manrope%3Awght%40400%3B700%3B900%26family%3DManrope%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#181818; --paper:#fff9f6; --accent:#d94545;
+ --accent2:#1d4ed8; --muted:#737373; --rule:#f0e3dc;
+ --h-font:'Manrope', serif; --b-font:'Manrope', system-ui, sans-serif;
+ --btn-r:0; --card-r:0; --card-shadow:none;
+ --divider:solid 2px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .news{max-width:1100px;margin:0 auto;padding:2em 3em}
+ .news .nameplate{border-top:6px solid var(--ink);border-bottom:3px solid var(--ink);padding:1em 0;text-align:center}
+ .news .nameplate h1{font-size:3em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .news .nameplate small{display:block;color:var(--muted);font-size:.9em;text-transform:uppercase;letter-spacing:.2em;margin-top:.5em}
+ .news .lead-story{padding:2em 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:2fr 1fr;gap:3em}
+ .news .lead-story h2{font-size:2.6em;font-weight:900;line-height:1.05;margin:0 0 .5em}
+ .news .lead-story .sub{font-size:1.1em;color:var(--muted);font-style:italic}
+ .news .sidebar h3{font-size:1.2em;text-transform:uppercase;letter-spacing:.1em;border-bottom:2px solid var(--accent);padding-bottom:.4em}
+ .news .sidebar ul{list-style:none;padding:0;margin:0}
+ .news .sidebar li{padding:.6em 0;border-bottom:1px dotted var(--rule);font-size:.95em}
+ .news .col3{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:2em 0;border-bottom:1px solid var(--rule)}
+ .news .col3 h3{font-size:1.3em;border-bottom:1px solid var(--rule);padding-bottom:.4em}
+</style></head><body>
+ <article class=news>
+ <header class=nameplate>
+ <h1>Pocopson Veterinary Station</h1>
+ <small>vet clinic · West Chester, PA · Monday, May 4, 2026</small>
+ </header>
+ <section class=lead-story>
+ <div>
+ <h2>New: Same-day appointments are back, all weekdays.</h2>
+ <p class=sub>After a six-month staffing rebuild, we've reopened walk-in sick visits Monday through Friday. Call before 11 AM, see your DVM before 5.</p>
+ <a class=btn href=#book>Book today's visit</a>
+ </div>
+ <aside class=sidebar>
+ <h3>This week</h3>
+ <ul>
+ <li>Vaccine clinic — Saturday 9-12</li>
+ <li>Senior wellness day — every Wed</li>
+ <li>Free puppy meet-up — first Sat/mo</li>
+ <li>End-of-life consults — by appt</li>
+ </ul>
+ </aside>
+ </section>
+ <section class=col3>
+ <div><h3>General Practice</h3><p>Annual wellness exams, vaccinations, and personalized care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with continuous anesthetic monitoring.</p></div>
+ <div><h3>Specialty Referrals</h3><p>Cardiology, dermatology, oncology — we know the right specialists.</p></div>
+ </section>
+ <footer style="padding:2em 0;color:var(--muted)">2100 West Street Road, West Chester, PA, 19382 · +1 610-793-3200</footer>
+ </article></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15258-a.html b/public/mockups/biz-15258-a.html
new file mode 100644
index 0000000..22d7696
--- /dev/null
+++ b/public/mockups/biz-15258-a.html
@@ -0,0 +1,63 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Merriweather%3Awght%40400%3B700%3B900%26family%3DIBM%2BPlex%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1f1d18; --paper:#f6f1e9; --accent:#7a8767;
+ --accent2:#a85e2c; --muted:#7c7665; --rule:#dfd5c3;
+ --h-font:'Merriweather', serif; --b-font:'IBM Plex Sans', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .news{max-width:1100px;margin:0 auto;padding:2em 3em}
+ .news .nameplate{border-top:6px solid var(--ink);border-bottom:3px solid var(--ink);padding:1em 0;text-align:center}
+ .news .nameplate h1{font-size:3em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .news .nameplate small{display:block;color:var(--muted);font-size:.9em;text-transform:uppercase;letter-spacing:.2em;margin-top:.5em}
+ .news .lead-story{padding:2em 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:2fr 1fr;gap:3em}
+ .news .lead-story h2{font-size:2.6em;font-weight:900;line-height:1.05;margin:0 0 .5em}
+ .news .lead-story .sub{font-size:1.1em;color:var(--muted);font-style:italic}
+ .news .sidebar h3{font-size:1.2em;text-transform:uppercase;letter-spacing:.1em;border-bottom:2px solid var(--accent);padding-bottom:.4em}
+ .news .sidebar ul{list-style:none;padding:0;margin:0}
+ .news .sidebar li{padding:.6em 0;border-bottom:1px dotted var(--rule);font-size:.95em}
+ .news .col3{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:2em 0;border-bottom:1px solid var(--rule)}
+ .news .col3 h3{font-size:1.3em;border-bottom:1px solid var(--rule);padding-bottom:.4em}
+</style></head><body>
+ <article class=news>
+ <header class=nameplate>
+ <h1>Anima</h1>
+ <small>pet store · Philadelphia, PA · Monday, May 4, 2026</small>
+ </header>
+ <section class=lead-story>
+ <div>
+ <h2>New: Same-day appointments are back, all weekdays.</h2>
+ <p class=sub>After a six-month staffing rebuild, we've reopened walk-in sick visits Monday through Friday. Call before 11 AM, see your DVM before 5.</p>
+ <a class=btn href=#book>Book today's visit</a>
+ </div>
+ <aside class=sidebar>
+ <h3>This week</h3>
+ <ul>
+ <li>Vaccine clinic — Saturday 9-12</li>
+ <li>Senior wellness day — every Wed</li>
+ <li>Free puppy meet-up — first Sat/mo</li>
+ <li>End-of-life consults — by appt</li>
+ </ul>
+ </aside>
+ </section>
+ <section class=col3>
+ <div><h3>General Practice</h3><p>Annual wellness exams, vaccinations, and personalized care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with continuous anesthetic monitoring.</p></div>
+ <div><h3>Specialty Referrals</h3><p>Cardiology, dermatology, oncology — we know the right specialists.</p></div>
+ </section>
+ <footer style="padding:2em 0;color:var(--muted)">304 Arch Street, Philadelphia, PA, 19106 · +1-215-800-1103</footer>
+ </article></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15258-b.html b/public/mockups/biz-15258-b.html
new file mode 100644
index 0000000..74707d9
--- /dev/null
+++ b/public/mockups/biz-15258-b.html
@@ -0,0 +1,49 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1a1a1a; --paper:#fafaf7; --accent:#0f4d3a;
+ --accent2:#c97a3e; --muted:#6b6b6b; --rule:#e6e1d6;
+ --h-font:'Inter', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .fam-hero{padding:5em 4em;background:var(--paper);max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:4em;align-items:center}
+ .fam-hero h1{font-size:3.2em;font-weight:700;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .fam-hero .lead{font-size:1.2em;color:var(--ink);line-height:1.6;max-width:480px}
+ .fam-hero .stats{margin-top:1.5em;display:flex;gap:2em}
+ .fam-hero .stats div strong{display:block;font-size:1.8em;color:var(--accent);font-family:var(--h-font);font-weight:900}
+ .fam-hero .stats div span{font-size:.85em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}
+ .fam-hero .photo{aspect-ratio:1/1;background:var(--rule);border-radius:var(--card-r);background-image:radial-gradient(circle at 50% 30%, #c97a3e 0%, #e6e1d6 70%)}
+ .fam-strip{background:var(--accent);color:var(--paper);padding:3em 4em;text-align:center}
+ .fam-strip h2{font-size:2em;color:var(--paper);margin:0 0 .3em}
+ .fam-strip p{opacity:.9;max-width:600px;margin:0 auto 1.5em}
+</style></head><body>
+ <section class=fam-hero>
+ <div>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">pet store</small>
+ <h1>Anima</h1>
+ <p class=lead>The veterinary practice Philadelphia families have trusted for three generations. We were here when your dog was a puppy. We'll be here when she's grey.</p>
+ <div class=stats><div><strong>34 yrs</strong><span>in practice</span></div><div><strong>4</strong><span>generations served</span></div><div><strong>★ 4.9</strong><span>from 800+</span></div></div>
+ <p style="margin-top:2em"><a class=btn href=#book>Book a visit</a> <a class=btn-ghost href=#about>Meet our team</a></p>
+ </div>
+ <div class=photo></div>
+ </section>
+ <section class=fam-strip>
+ <h2>Same-week appointments, every week.</h2>
+ <p>Most clients book within 3 days. Emergency? Call us — we take same-day sick visits Monday-Friday.</p>
+ <a class=btn-2 href=#book>See this week's openings →</a>
+ </section>
+ <footer style="padding:2em 4em;text-align:center;color:var(--muted)">304 Arch Street, Philadelphia, PA, 19106 · +1-215-800-1103</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15258-c.html b/public/mockups/biz-15258-c.html
new file mode 100644
index 0000000..81e1204
--- /dev/null
+++ b/public/mockups/biz-15258-c.html
@@ -0,0 +1,65 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=EB%2BGaramond%3Awght%40400%3B700%3B900%26family%3DKarla%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1e1b3a; --paper:#faf5ff; --accent:#7c3aed;
+ --accent2:#d97706; --muted:#6b6989; --rule:#e9d5ff;
+ --h-font:'EB Garamond', serif; --b-font:'Karla', system-ui, sans-serif;
+ --btn-r:4px; --card-r:4px; --card-shadow:0 2px 4px rgba(0,0,0,.04);
+ --divider:solid 1px var(--accent);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .mc-nav{padding:1.4em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule);background:var(--paper);position:sticky;top:0;z-index:10}
+ .mc-nav strong{font-size:1.1em}
+ .mc-nav nav a{margin-left:1.5em;color:var(--ink);font-weight:500}
+ .mc-hero{padding:6em 3em 4em;text-align:left;max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr;gap:4em;align-items:end}
+ .mc-hero h1{font-size:3.8em;font-weight:800;letter-spacing:-.025em;line-height:1.05;margin:0}
+ .mc-hero p{font-size:1.2em;color:var(--muted);margin:1em 0;max-width:520px}
+ .mc-hero .actions{display:flex;gap:1em}
+ .mc-hero .badges{display:grid;grid-template-columns:1fr 1fr;gap:.7em;align-items:end}
+ .mc-hero .badge{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:.8em;text-align:center;font-size:.85em}
+ .mc-hero .badge strong{display:block;color:var(--accent);font-size:1.4em;font-family:var(--h-font);font-weight:900}
+ .mc-services{padding:4em 3em;background:var(--rule)}
+ .mc-services h2{font-size:1.8em;text-align:center;margin-bottom:2em}
+ .mc-services ul{list-style:none;padding:0;max-width:900px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:1em}
+ .mc-services li{background:var(--paper);padding:1.2em 1.5em;border-radius:var(--card-r);font-weight:600;display:flex;justify-content:space-between;align-items:center}
+ .mc-services li small{color:var(--muted);font-weight:400}
+</style></head><body>
+ <nav class=mc-nav><strong>Anima</strong><nav><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a></nav><a class=btn href=#book>Book</a></nav>
+ <section class=mc-hero>
+ <div>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">pet store · Philadelphia, PA</small>
+ <h1>Modern medicine. Honest pricing. Real follow-through.</h1>
+ <p>The veterinary practice Philadelphia has been waiting for. Open 7 days. Online booking. Email reminders. Estimates before treatment.</p>
+ <div class=actions><a class=btn href=#book>Book in 60 seconds</a><a class=btn-ghost href=#tour>Take a tour →</a></div>
+ </div>
+ <div class=badges>
+ <div class=badge><strong>★ 4.9</strong>412 reviews</div>
+ <div class=badge><strong>7 days</strong>Open weekly</div>
+ <div class=badge><strong>$95</strong>Wellness exam</div>
+ <div class=badge><strong>24h</strong>Lab results</div>
+ </div>
+ </section>
+ <section class=mc-services>
+ <h2>Common visits</h2>
+ <ul>
+ <li>Annual wellness <small>$95</small></li>
+ <li>Sick visit <small>$110</small></li>
+ <li>Dental cleaning <small>From $450</small></li>
+ <li>Spay / neuter <small>From $225</small></li>
+ <li>Vaccine package <small>$140</small></li>
+ <li>Senior bloodwork <small>$185</small></li>
+ </ul>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">304 Arch Street, Philadelphia, PA, 19106 · +1-215-800-1103</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15261-a.html b/public/mockups/biz-15261-a.html
new file mode 100644
index 0000000..5344e3e
--- /dev/null
+++ b/public/mockups/biz-15261-a.html
@@ -0,0 +1,65 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Cormorant%2BGaramond%3Awght%40400%3B700%3B900%26family%3DLato%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1e293b; --paper:#f1f5f9; --accent:#334155;
+ --accent2:#0ea5e9; --muted:#64748b; --rule:#cbd5e1;
+ --h-font:'Cormorant Garamond', serif; --b-font:'Lato', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:inset 0 -3px 0 var(--accent2);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .mc-nav{padding:1.4em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule);background:var(--paper);position:sticky;top:0;z-index:10}
+ .mc-nav strong{font-size:1.1em}
+ .mc-nav nav a{margin-left:1.5em;color:var(--ink);font-weight:500}
+ .mc-hero{padding:6em 3em 4em;text-align:left;max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr;gap:4em;align-items:end}
+ .mc-hero h1{font-size:3.8em;font-weight:800;letter-spacing:-.025em;line-height:1.05;margin:0}
+ .mc-hero p{font-size:1.2em;color:var(--muted);margin:1em 0;max-width:520px}
+ .mc-hero .actions{display:flex;gap:1em}
+ .mc-hero .badges{display:grid;grid-template-columns:1fr 1fr;gap:.7em;align-items:end}
+ .mc-hero .badge{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:.8em;text-align:center;font-size:.85em}
+ .mc-hero .badge strong{display:block;color:var(--accent);font-size:1.4em;font-family:var(--h-font);font-weight:900}
+ .mc-services{padding:4em 3em;background:var(--rule)}
+ .mc-services h2{font-size:1.8em;text-align:center;margin-bottom:2em}
+ .mc-services ul{list-style:none;padding:0;max-width:900px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:1em}
+ .mc-services li{background:var(--paper);padding:1.2em 1.5em;border-radius:var(--card-r);font-weight:600;display:flex;justify-content:space-between;align-items:center}
+ .mc-services li small{color:var(--muted);font-weight:400}
+</style></head><body>
+ <nav class=mc-nav><strong>WAG: Whole Animal Gym</strong><nav><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a></nav><a class=btn href=#book>Book</a></nav>
+ <section class=mc-hero>
+ <div>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">vet clinic · , PA</small>
+ <h1>Modern medicine. Honest pricing. Real follow-through.</h1>
+ <p>The veterinary practice this neighborhood has been waiting for. Open 7 days. Online booking. Email reminders. Estimates before treatment.</p>
+ <div class=actions><a class=btn href=#book>Book in 60 seconds</a><a class=btn-ghost href=#tour>Take a tour →</a></div>
+ </div>
+ <div class=badges>
+ <div class=badge><strong>★ 4.9</strong>412 reviews</div>
+ <div class=badge><strong>7 days</strong>Open weekly</div>
+ <div class=badge><strong>$95</strong>Wellness exam</div>
+ <div class=badge><strong>24h</strong>Lab results</div>
+ </div>
+ </section>
+ <section class=mc-services>
+ <h2>Common visits</h2>
+ <ul>
+ <li>Annual wellness <small>$95</small></li>
+ <li>Sick visit <small>$110</small></li>
+ <li>Dental cleaning <small>From $450</small></li>
+ <li>Spay / neuter <small>From $225</small></li>
+ <li>Vaccine package <small>$140</small></li>
+ <li>Senior bloodwork <small>$185</small></li>
+ </ul>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">PA · </footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15261-b.html b/public/mockups/biz-15261-b.html
new file mode 100644
index 0000000..9119041
--- /dev/null
+++ b/public/mockups/biz-15261-b.html
@@ -0,0 +1,42 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1f1a0a; --paper:#fffaf0; --accent:#b45309;
+ --accent2:#0c1e6e; --muted:#7d6e5d; --rule:#e8d3a3;
+ --h-font:'Inter', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:6px; --card-r:8px; --card-shadow:none;
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .cal-hero{padding:4em 3em;text-align:center;background:linear-gradient(160deg,#e8d3a3,#fffaf0)}
+ .cal-hero h1{font-size:3.4em;font-weight:800;margin:0 0 .3em}
+ .cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5em;max-width:900px;margin:2em auto;padding:0 2em}
+ .cal-cell{background:#fff;padding:1em .5em;text-align:center;border-radius:var(--btn-r);box-shadow:var(--card-shadow);font-weight:600}
+ .cal-cell .dow{font-size:.7em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;display:block}
+ .cal-cell .num{font-size:1.3em;font-family:var(--h-font);color:var(--accent);font-weight:900}
+ .cal-cell.closed{opacity:.3}
+ .cal-cell.open:hover{background:var(--accent);color:var(--paper);cursor:pointer}
+ .cal-cell.open:hover .num,.cal-cell.open:hover .dow{color:var(--paper)}
+</style></head><body>
+ <section class=cal-hero>
+ <small style="letter-spacing:.15em;text-transform:uppercase;color:var(--accent2);font-weight:700">vet clinic · , PA</small>
+ <h1>WAG: Whole Animal Gym</h1>
+ <p class=muted>Pick a day. We'll text you the openings.</p>
+ <div class=cal-grid>
+ <div class="cal-cell open"><span class=dow>Mon</span><span class=num>4</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>5</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>6</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>7</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>8</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>9</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>10</span></div><div class="cal-cell open"><span class=dow>Mon</span><span class=num>11</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>12</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>13</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>14</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>15</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>16</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>17</span></div>
+ </div>
+ <a class=btn href=#book>Continue →</a>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">PA · </footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15261-c.html b/public/mockups/biz-15261-c.html
new file mode 100644
index 0000000..cae88e2
--- /dev/null
+++ b/public/mockups/biz-15261-c.html
@@ -0,0 +1,45 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito%3Awght%40400%3B700%3B900%26family%3DNunito%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1a1a1a; --paper:#fafaf7; --accent:#0f4d3a;
+ --accent2:#c97a3e; --muted:#6b6b6b; --rule:#e6e1d6;
+ --h-font:'Nunito', serif; --b-font:'Nunito', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:inset 0 -3px 0 var(--accent2);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .hero{padding:7em 4em 6em;background:linear-gradient(140deg,#fafaf7,#e6e1d6);text-align:left}
+ .hero small{text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700;font-size:.9em}
+ .hero h1{font-size:4em;margin:.3em 0;line-height:1.05;font-weight:900}
+ .hero p{font-size:1.25em;color:var(--muted);max-width:600px;margin:1em 0 2em}
+ .hero .btns{display:flex;gap:1em;align-items:center}
+ .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:var(--ink);color:var(--paper)}
+ .grid > div{padding:3em 2.5em;border-right:1px solid rgba(255,255,255,.1)}
+ .grid h3{font-size:1.4em;margin-bottom:.4em}
+ .grid p{color:rgba(255,255,255,.7);margin:0}
+ .foot{padding:2em 4em;background:var(--accent);color:var(--paper);text-align:center;font-weight:600}
+</style></head><body>
+ <section class=hero>
+ <small>vet clinic · , PA</small>
+ <h1>WAG: Whole Animal Gym</h1>
+ <p>Veterinary care designed around your pet — and your day. Same-week appointments, transparent pricing, kind people.</p>
+ <div class=btns><a class=btn href=#book>Book online</a><a class=btn-ghost href=#about>Meet the team →</a></div>
+ </section>
+ <section class=grid>
+ <div><h3>Wellness</h3><p>Annual exams, vaccinations, and proactive care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house, with same-day discharge for most procedures.</p></div>
+ <div><h3>Urgent Care</h3><p>Same-day sick visits — call us before going to the ER.</p></div>
+ </section>
+ <footer class=foot>WAG: Whole Animal Gym · PA · </footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15264-a.html b/public/mockups/biz-15264-a.html
new file mode 100644
index 0000000..f1e0dcb
--- /dev/null
+++ b/public/mockups/biz-15264-a.html
@@ -0,0 +1,49 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Source%2BSerif%2BPro%3Awght%40400%3B700%3B900%26family%3DSource%2BSans%2BPro%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1a1014; --paper:#fcf6f3; --accent:#9d2851;
+ --accent2:#3a4a3a; --muted:#8a6f78; --rule:#ebd7cf;
+ --h-font:'Source Serif Pro', serif; --b-font:'Source Sans Pro', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .fam-hero{padding:5em 4em;background:var(--paper);max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:4em;align-items:center}
+ .fam-hero h1{font-size:3.2em;font-weight:700;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .fam-hero .lead{font-size:1.2em;color:var(--ink);line-height:1.6;max-width:480px}
+ .fam-hero .stats{margin-top:1.5em;display:flex;gap:2em}
+ .fam-hero .stats div strong{display:block;font-size:1.8em;color:var(--accent);font-family:var(--h-font);font-weight:900}
+ .fam-hero .stats div span{font-size:.85em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}
+ .fam-hero .photo{aspect-ratio:1/1;background:var(--rule);border-radius:var(--card-r);background-image:radial-gradient(circle at 50% 30%, #3a4a3a 0%, #ebd7cf 70%)}
+ .fam-strip{background:var(--accent);color:var(--paper);padding:3em 4em;text-align:center}
+ .fam-strip h2{font-size:2em;color:var(--paper);margin:0 0 .3em}
+ .fam-strip p{opacity:.9;max-width:600px;margin:0 auto 1.5em}
+</style></head><body>
+ <section class=fam-hero>
+ <div>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">pet store</small>
+ <h1>Three Dog Bakery</h1>
+ <p class=lead>The veterinary practice West Chester families have trusted for three generations. We were here when your dog was a puppy. We'll be here when she's grey.</p>
+ <div class=stats><div><strong>34 yrs</strong><span>in practice</span></div><div><strong>4</strong><span>generations served</span></div><div><strong>★ 4.9</strong><span>from 800+</span></div></div>
+ <p style="margin-top:2em"><a class=btn href=#book>Book a visit</a> <a class=btn-ghost href=#about>Meet our team</a></p>
+ </div>
+ <div class=photo></div>
+ </section>
+ <section class=fam-strip>
+ <h2>Same-week appointments, every week.</h2>
+ <p>Most clients book within 3 days. Emergency? Call us — we take same-day sick visits Monday-Friday.</p>
+ <a class=btn-2 href=#book>See this week's openings →</a>
+ </section>
+ <footer style="padding:2em 4em;text-align:center;color:var(--muted)">1502 West Chester Pike, West Chester, PA, 19382 · +1 484-266-0151</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15264-b.html b/public/mockups/biz-15264-b.html
new file mode 100644
index 0000000..0f5385f
--- /dev/null
+++ b/public/mockups/biz-15264-b.html
@@ -0,0 +1,60 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Libre%2BBaskerville%3Awght%40400%3B700%3B900%26family%3DOpen%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c1f2a; --paper:#f1f9fa; --accent:#0e7490;
+ --accent2:#f97316; --muted:#5d748a; --rule:#a5e5e5;
+ --h-font:'Libre Baskerville', serif; --b-font:'Open Sans', system-ui, sans-serif;
+ --btn-r:0; --card-r:0; --card-shadow:none;
+ --divider:solid 2px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .nav{padding:1.2em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule)}
+ .nav strong{font-size:1.1em}
+ .hero2{display:grid;grid-template-columns:1.4fr 1fr;padding:5em 3em;gap:4em;align-items:start}
+ .hero2 h1{font-size:3.2em;font-weight:800;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .hero2 .sub{font-size:1.15em;color:var(--muted);max-width:560px;margin:0 0 2em}
+ .booking{background:#fff;border:2px solid var(--ink);border-radius:var(--card-r);padding:2em}
+ .booking h3{margin:0 0 1em;font-size:1.3em}
+ .booking label{display:block;margin:.7em 0 .2em;font-weight:600;font-size:.92em}
+ .booking input,.booking select{width:100%;padding:.6em .8em;border:1px solid var(--rule);border-radius:var(--btn-r);font:inherit}
+ .booking button{margin-top:1em;width:100%;background:var(--accent);color:var(--paper);border:0;padding:1em;font-weight:700;font-size:1.05em;border-radius:var(--btn-r);cursor:pointer}
+ .why{padding:3em;background:var(--rule)}
+ .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;max-width:1100px;margin:0 auto}
+ .why-grid > div{background:var(--paper);padding:1.5em;border-radius:var(--card-r)}
+</style></head><body>
+ <nav class=nav><strong>Three Dog Bakery</strong><a class=btn href=#book>Book online</a></nav>
+ <section class=hero2>
+ <div>
+ <h1>Skip the phone. Book your visit in 60 seconds.</h1>
+ <p class=sub>Real-time availability. Choose your doctor. Add your pet's symptoms. We'll send a confirmation by email + text.</p>
+ <p class=muted>★ 4.9 from 412 West Chester pet families</p>
+ </div>
+ <form class=booking>
+ <h3>Request an appointment</h3>
+ <label>Your name</label><input placeholder="Jane Doe">
+ <label>Email</label><input placeholder="you@example.com">
+ <label>Pet & reason</label><select><option>Dog — wellness</option><option>Cat — sick visit</option><option>Other</option></select>
+ <label>Preferred day</label><input type=date>
+ <button>Request appointment</button>
+ </form>
+ </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>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted)">1502 West Chester Pike, West Chester, PA, 19382 · +1 484-266-0151</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15264-c.html b/public/mockups/biz-15264-c.html
new file mode 100644
index 0000000..5c06617
--- /dev/null
+++ b/public/mockups/biz-15264-c.html
@@ -0,0 +1,44 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lora%3Awght%40400%3B700%3B900%26family%3DPublic%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#000000; --paper:#fffaf3; --accent:#000000;
+ --accent2:#a16207; --muted:#525252; --rule:#e5e0d8;
+ --h-font:'Lora', serif; --b-font:'Public Sans', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .bq-hero{padding:5em 4em;background:linear-gradient(180deg,#e5e0d8,#fffaf3);text-align:center}
+ .bq-hero small{font-style:italic;font-family:var(--h-font);font-size:1.1em;color:var(--accent)}
+ .bq-hero h1{font-size:4em;margin:.3em 0 .5em;font-weight:400;letter-spacing:-.01em}
+ .bq-hero p{color:var(--muted);font-size:1.15em;max-width:560px;margin:0 auto 2em;line-height:1.7}
+ .bq-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 4em;max-width:1200px;margin:0 auto}
+ .bq-card{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:2em;text-align:center}
+ .bq-card .ico{font-size:2.4em;color:var(--accent2)}
+ .bq-card h3{font-style:italic;font-family:var(--h-font);margin:.5em 0;font-size:1.4em;font-weight:400}
+ .bq-card p{color:var(--muted);font-size:.95em;line-height:1.6;margin:0}
+</style></head><body>
+ <section class=bq-hero>
+ <small>pet store</small>
+ <h1>Three Dog Bakery</h1>
+ <p>A neighborhood veterinary practice that feels like home — in the best part of West Chester.</p>
+ <a class=btn href=#book>Book a visit</a>
+ </section>
+ <section class=bq-cards>
+ <div class=bq-card><div class=ico>🐾</div><h3>Wellness</h3><p>Annual exams, vaccines, parasite prevention, nutrition.</p></div>
+ <div class=bq-card><div class=ico>🦴</div><h3>Dental</h3><p>Cleanings under anesthesia with continuous monitoring.</p></div>
+ <div class=bq-card><div class=ico>❤️</div><h3>Senior care</h3><p>A dedicated quarterly visit for pets 8+, with bloodwork.</p></div>
+ </section>
+ <footer style="padding:2em 4em;text-align:center;color:var(--muted)">1502 West Chester Pike, West Chester, PA, 19382 · +1 484-266-0151</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15279-a.html b/public/mockups/biz-15279-a.html
new file mode 100644
index 0000000..b195a39
--- /dev/null
+++ b/public/mockups/biz-15279-a.html
@@ -0,0 +1,51 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c1c0a; --paper:#fffce8; --accent:#a16207;
+ --accent2:#1e3a8a; --muted:#7d7d5c; --rule:#fde68a;
+ --h-font:'Inter', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:inset 0 -3px 0 var(--accent2);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .split{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}
+ .split-left{padding:5em 4em;background:var(--accent);color:var(--paper);display:flex;flex-direction:column;justify-content:center}
+ .split-right{padding:5em 4em;background:var(--paper);display:flex;flex-direction:column;justify-content:center}
+ .split-left h1{font-size:3.6em;font-weight:900;letter-spacing:-.03em;line-height:1}
+ .split-left p{opacity:.85;font-size:1.15em;margin:1em 0 2em;max-width:480px}
+ .split-right h2{font-size:1.8em;margin-bottom:1em}
+ .svc{padding:1em 0;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:center}
+ .svc:last-child{border:0}
+ .svc strong{color:var(--ink)}
+ .svc small{color:var(--muted)}
+ .svc a{color:var(--accent);font-weight:600}
+</style></head><body>
+ <main class=split>
+ <section class=split-left>
+ <small style="opacity:.7;letter-spacing:.15em;text-transform:uppercase;font-weight:700">vet clinic</small>
+ <h1>Happy Tails Animal Hospital</h1>
+ <p>Modern veterinary medicine. Honest prices. Real people who remember your pet's name.</p>
+ <div><a class=btn-2 href=#book>Book online</a></div>
+ </section>
+ <section class=split-right>
+ <h2>What we do</h2>
+ <div class=svc><div><strong>Annual wellness</strong><br><small>Includes vaccines + parasite prevention</small></div><a href=#>$95</a></div>
+ <div class=svc><div><strong>Sick visit</strong><br><small>Same-day when we can fit you</small></div><a href=#>$110</a></div>
+ <div class=svc><div><strong>Dental cleaning</strong><br><small>Includes anesthesia + monitoring</small></div><a href=#>From $450</a></div>
+ <div class=svc><div><strong>Spay/Neuter</strong><br><small>Cats and dogs both</small></div><a href=#>From $225</a></div>
+ <hr class=divider>
+ <p class=muted>823 Rohrerstown Road, Lancaster, PA, 17601 · +1 717-393-8245</p>
+ </section>
+ </main></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15279-b.html b/public/mockups/biz-15279-b.html
new file mode 100644
index 0000000..c7287a6
--- /dev/null
+++ b/public/mockups/biz-15279-b.html
@@ -0,0 +1,60 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito%3Awght%40400%3B700%3B900%26family%3DNunito%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#221913; --paper:#faf2e8; --accent:#5a3920;
+ --accent2:#c97a3e; --muted:#7d6e5d; --rule:#ead9c1;
+ --h-font:'Nunito', serif; --b-font:'Nunito', system-ui, sans-serif;
+ --btn-r:0; --card-r:0; --card-shadow:none;
+ --divider:solid 2px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .nav{padding:1.2em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule)}
+ .nav strong{font-size:1.1em}
+ .hero2{display:grid;grid-template-columns:1.4fr 1fr;padding:5em 3em;gap:4em;align-items:start}
+ .hero2 h1{font-size:3.2em;font-weight:800;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .hero2 .sub{font-size:1.15em;color:var(--muted);max-width:560px;margin:0 0 2em}
+ .booking{background:#fff;border:2px solid var(--ink);border-radius:var(--card-r);padding:2em}
+ .booking h3{margin:0 0 1em;font-size:1.3em}
+ .booking label{display:block;margin:.7em 0 .2em;font-weight:600;font-size:.92em}
+ .booking input,.booking select{width:100%;padding:.6em .8em;border:1px solid var(--rule);border-radius:var(--btn-r);font:inherit}
+ .booking button{margin-top:1em;width:100%;background:var(--accent);color:var(--paper);border:0;padding:1em;font-weight:700;font-size:1.05em;border-radius:var(--btn-r);cursor:pointer}
+ .why{padding:3em;background:var(--rule)}
+ .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;max-width:1100px;margin:0 auto}
+ .why-grid > div{background:var(--paper);padding:1.5em;border-radius:var(--card-r)}
+</style></head><body>
+ <nav class=nav><strong>Happy Tails Animal Hospital</strong><a class=btn href=#book>Book online</a></nav>
+ <section class=hero2>
+ <div>
+ <h1>Skip the phone. Book your visit in 60 seconds.</h1>
+ <p class=sub>Real-time availability. Choose your doctor. Add your pet's symptoms. We'll send a confirmation by email + text.</p>
+ <p class=muted>★ 4.9 from 412 Lancaster pet families</p>
+ </div>
+ <form class=booking>
+ <h3>Request an appointment</h3>
+ <label>Your name</label><input placeholder="Jane Doe">
+ <label>Email</label><input placeholder="you@example.com">
+ <label>Pet & reason</label><select><option>Dog — wellness</option><option>Cat — sick visit</option><option>Other</option></select>
+ <label>Preferred day</label><input type=date>
+ <button>Request appointment</button>
+ </form>
+ </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>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted)">823 Rohrerstown Road, Lancaster, PA, 17601 · +1 717-393-8245</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15279-c.html b/public/mockups/biz-15279-c.html
new file mode 100644
index 0000000..7e48686
--- /dev/null
+++ b/public/mockups/biz-15279-c.html
@@ -0,0 +1,44 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=EB%2BGaramond%3Awght%40400%3B700%3B900%26family%3DKarla%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c1f1a; --paper:#ecf3ee; --accent:#14532d;
+ --accent2:#c97a3e; --muted:#5a716a; --rule:#bce3c8;
+ --h-font:'EB Garamond', serif; --b-font:'Karla', system-ui, sans-serif;
+ --btn-r:4px; --card-r:4px; --card-shadow:0 2px 4px rgba(0,0,0,.04);
+ --divider:solid 1px var(--accent);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .bq-hero{padding:5em 4em;background:linear-gradient(180deg,#bce3c8,#ecf3ee);text-align:center}
+ .bq-hero small{font-style:italic;font-family:var(--h-font);font-size:1.1em;color:var(--accent)}
+ .bq-hero h1{font-size:4em;margin:.3em 0 .5em;font-weight:400;letter-spacing:-.01em}
+ .bq-hero p{color:var(--muted);font-size:1.15em;max-width:560px;margin:0 auto 2em;line-height:1.7}
+ .bq-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 4em;max-width:1200px;margin:0 auto}
+ .bq-card{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:2em;text-align:center}
+ .bq-card .ico{font-size:2.4em;color:var(--accent2)}
+ .bq-card h3{font-style:italic;font-family:var(--h-font);margin:.5em 0;font-size:1.4em;font-weight:400}
+ .bq-card p{color:var(--muted);font-size:.95em;line-height:1.6;margin:0}
+</style></head><body>
+ <section class=bq-hero>
+ <small>vet clinic</small>
+ <h1>Happy Tails Animal Hospital</h1>
+ <p>A neighborhood veterinary practice that feels like home — in the best part of Lancaster.</p>
+ <a class=btn href=#book>Book a visit</a>
+ </section>
+ <section class=bq-cards>
+ <div class=bq-card><div class=ico>🐾</div><h3>Wellness</h3><p>Annual exams, vaccines, parasite prevention, nutrition.</p></div>
+ <div class=bq-card><div class=ico>🦴</div><h3>Dental</h3><p>Cleanings under anesthesia with continuous monitoring.</p></div>
+ <div class=bq-card><div class=ico>❤️</div><h3>Senior care</h3><p>A dedicated quarterly visit for pets 8+, with bloodwork.</p></div>
+ </section>
+ <footer style="padding:2em 4em;text-align:center;color:var(--muted)">823 Rohrerstown Road, Lancaster, PA, 17601 · +1 717-393-8245</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15281-a.html b/public/mockups/biz-15281-a.html
new file mode 100644
index 0000000..e98dd32
--- /dev/null
+++ b/public/mockups/biz-15281-a.html
@@ -0,0 +1,39 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#22201d; --paper:#f5efea; --accent:#a13d2d;
+ --accent2:#3a4a3a; --muted:#7a7166; --rule:#e0d6cb;
+ --h-font:'Inter', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{display:flex;flex-direction:column;min-height:100vh}
+ .min-nav{padding:2em 4em;display:flex;justify-content:space-between;align-items:center;font-size:.9em;letter-spacing:.05em}
+ .min-nav strong{font-size:1em;font-weight:600}
+ .min-nav a{margin-left:1.5em;color:var(--ink)}
+ .min-hero{flex:1;padding:6em 4em;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:900px;margin:0 auto}
+ .min-hero h1{font-size:5em;font-weight:300;letter-spacing:-.04em;line-height:1.05;margin:0 0 .3em}
+ .min-hero p{font-size:1.2em;color:var(--muted);max-width:520px;margin:1em 0 2em;line-height:1.7;font-weight:300}
+ .min-hero .arrow{font-size:1em;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:.2em}
+ .min-foot{padding:2em 4em;border-top:1px solid var(--rule);display:flex;justify-content:space-between;color:var(--muted);font-size:.85em}
+</style></head><body>
+ <header class=min-nav><strong>Red Rose Pet Care Center</strong><div><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a><a href=#>Book</a></div></header>
+ <main class=min-hero>
+ <h1>Red Rose Pet Care Center.</h1>
+ <p>A small, deliberately quiet veterinary practice in Lancaster.<br>By appointment.</p>
+ <a class=arrow href=#book>Request an appointment →</a>
+ </main>
+ <footer class=min-foot><span>996 East Orange Street, Lancaster, PA, 17602</span><span>+1 717-435-8035</span></footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15281-b.html b/public/mockups/biz-15281-b.html
new file mode 100644
index 0000000..2f494fa
--- /dev/null
+++ b/public/mockups/biz-15281-b.html
@@ -0,0 +1,63 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Libre%2BBaskerville%3Awght%40400%3B700%3B900%26family%3DOpen%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c1f1a; --paper:#ecf3ee; --accent:#14532d;
+ --accent2:#c97a3e; --muted:#5a716a; --rule:#bce3c8;
+ --h-font:'Libre Baskerville', serif; --b-font:'Open Sans', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .news{max-width:1100px;margin:0 auto;padding:2em 3em}
+ .news .nameplate{border-top:6px solid var(--ink);border-bottom:3px solid var(--ink);padding:1em 0;text-align:center}
+ .news .nameplate h1{font-size:3em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .news .nameplate small{display:block;color:var(--muted);font-size:.9em;text-transform:uppercase;letter-spacing:.2em;margin-top:.5em}
+ .news .lead-story{padding:2em 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:2fr 1fr;gap:3em}
+ .news .lead-story h2{font-size:2.6em;font-weight:900;line-height:1.05;margin:0 0 .5em}
+ .news .lead-story .sub{font-size:1.1em;color:var(--muted);font-style:italic}
+ .news .sidebar h3{font-size:1.2em;text-transform:uppercase;letter-spacing:.1em;border-bottom:2px solid var(--accent);padding-bottom:.4em}
+ .news .sidebar ul{list-style:none;padding:0;margin:0}
+ .news .sidebar li{padding:.6em 0;border-bottom:1px dotted var(--rule);font-size:.95em}
+ .news .col3{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:2em 0;border-bottom:1px solid var(--rule)}
+ .news .col3 h3{font-size:1.3em;border-bottom:1px solid var(--rule);padding-bottom:.4em}
+</style></head><body>
+ <article class=news>
+ <header class=nameplate>
+ <h1>Red Rose Pet Care Center</h1>
+ <small>vet clinic · Lancaster, PA · Monday, May 4, 2026</small>
+ </header>
+ <section class=lead-story>
+ <div>
+ <h2>New: Same-day appointments are back, all weekdays.</h2>
+ <p class=sub>After a six-month staffing rebuild, we've reopened walk-in sick visits Monday through Friday. Call before 11 AM, see your DVM before 5.</p>
+ <a class=btn href=#book>Book today's visit</a>
+ </div>
+ <aside class=sidebar>
+ <h3>This week</h3>
+ <ul>
+ <li>Vaccine clinic — Saturday 9-12</li>
+ <li>Senior wellness day — every Wed</li>
+ <li>Free puppy meet-up — first Sat/mo</li>
+ <li>End-of-life consults — by appt</li>
+ </ul>
+ </aside>
+ </section>
+ <section class=col3>
+ <div><h3>General Practice</h3><p>Annual wellness exams, vaccinations, and personalized care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with continuous anesthetic monitoring.</p></div>
+ <div><h3>Specialty Referrals</h3><p>Cardiology, dermatology, oncology — we know the right specialists.</p></div>
+ </section>
+ <footer style="padding:2em 0;color:var(--muted)">996 East Orange Street, Lancaster, PA, 17602 · +1 717-435-8035</footer>
+ </article></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15281-c.html b/public/mockups/biz-15281-c.html
new file mode 100644
index 0000000..38cc9cb
--- /dev/null
+++ b/public/mockups/biz-15281-c.html
@@ -0,0 +1,59 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Space%2BGrotesk%3Awght%40400%3B700%3B900%26family%3DSpace%2BGrotesk%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0a0a0a; --paper:#ffffff; --accent:#262626;
+ --accent2:#b8956a; --muted:#737373; --rule:#e5e5e5;
+ --h-font:'Space Grotesk', serif; --b-font:'Space Grotesk', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pagewrap{max-width:1100px;margin:0 auto;padding:3em 3em}
+ .masthead{border-top:6px solid var(--ink);border-bottom:1px solid var(--rule);padding:1em 0;display:flex;justify-content:space-between;align-items:baseline}
+ .masthead h1{font-size:2.4em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .masthead .date{color:var(--muted);font-size:.9em;letter-spacing:.1em;text-transform:uppercase}
+ .feature{display:grid;grid-template-columns:2fr 1fr;gap:3em;padding:3em 0;border-bottom:1px solid var(--rule)}
+ .feature h2{font-size:3.2em;line-height:1.05;font-weight:700;margin:0 0 .4em}
+ .feature .lead{font-size:1.2em;color:var(--ink);line-height:1.6}
+ .feature aside{border-left:3px solid var(--accent);padding-left:1.5em}
+ .feature aside h4{margin:0 0 .4em;font-size:1.1em;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}
+ .feature aside p{color:var(--muted);font-size:.95em;line-height:1.55}
+ .three{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 0}
+ .three h3{font-family:var(--h-font);font-size:1.5em;border-top:2px solid var(--accent);padding-top:.6em}
+</style></head><body>
+ <div class=pagewrap>
+ <header class=masthead>
+ <h1>Red Rose Pet Care Center</h1>
+ <span class=date>vet clinic · Lancaster, PA</span>
+ </header>
+ <article class=feature>
+ <div>
+ <h2>The kind of veterinary care your grandparents trusted — with the technology your pet deserves now.</h2>
+ <p class=lead>For three decades, we've been the family practice Lancaster families call when something matters. Walk-in welcomes, transparent pricing, and a waiting room that doesn't feel like one.</p>
+ <p><a class=btn href=#book>Book a visit →</a></p>
+ </div>
+ <aside>
+ <h4>What's new</h4>
+ <p><strong>Online booking is live.</strong> Pick your day, your doctor, and the time that fits — no phone tag.</p>
+ <p><strong>Senior pet program.</strong> Quarterly visits + bloodwork for pets 8+, $35/mo.</p>
+ </aside>
+ </article>
+ <section class=three>
+ <div><h3>General Practice</h3><p>Annual wellness visits, vaccines, parasite prevention, nutrition counseling.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with anesthetic monitoring. Same-day discharge for most.</p></div>
+ <div><h3>Urgent Sick Care</h3><p>Same-day appointments most weekdays. Call before 11 AM, visit before 5.</p></div>
+ </section>
+ <footer><p class=muted>996 East Orange Street, Lancaster, PA, 17602 · +1 717-435-8035</p></footer>
+ </div></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15289-a.html b/public/mockups/biz-15289-a.html
new file mode 100644
index 0000000..fe72923
--- /dev/null
+++ b/public/mockups/biz-15289-a.html
@@ -0,0 +1,49 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito%3Awght%40400%3B700%3B900%26family%3DNunito%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0a0a0a; --paper:#fffaf3; --accent:#dc2626;
+ --accent2:#1f2937; --muted:#52525b; --rule:#fde2cf;
+ --h-font:'Nunito', serif; --b-font:'Nunito', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{background:var(--paper)}
+ .luxe{padding:6em 5em;max-width:1100px;margin:0 auto;text-align:center}
+ .luxe small{font-family:var(--h-font);font-style:italic;font-size:1em;color:var(--accent);letter-spacing:.05em}
+ .luxe h1{font-size:5em;margin:.2em 0;font-weight:400;letter-spacing:-.02em;line-height:1}
+ .luxe .tag{font-family:var(--h-font);font-style:italic;font-size:1.4em;color:var(--muted);margin:.5em 0 2em}
+ .luxe .ornament{display:block;margin:1.5em auto;width:120px;height:1px;background:var(--accent)}
+ .luxe p.intro{max-width:640px;margin:0 auto 2.5em;font-size:1.1em;line-height:1.7;color:var(--ink)}
+ .luxe .cta{display:inline-block;border:1px solid var(--ink);padding:1.1em 2.4em;letter-spacing:.2em;text-transform:uppercase;font-size:.85em;font-weight:600;color:var(--ink)}
+ .pillars2{display:grid;grid-template-columns:repeat(3,1fr);max-width:1100px;margin:0 auto;gap:0;border-top:1px solid var(--rule)}
+ .pillars2 > div{padding:3em 2em;border-right:1px solid var(--rule);text-align:center}
+ .pillars2 > div:last-child{border:0}
+ .pillars2 h3{font-family:var(--h-font);font-style:italic;font-size:1.4em;font-weight:400;color:var(--accent)}
+</style></head><body>
+ <main class=luxe>
+ <small>established · Malvern</small>
+ <h1>Main Line Veterinary Hospital</h1>
+ <div class=tag>A veterinary concierge for Malvern families.</div>
+ <span class=ornament></span>
+ <p class=intro>For thirty years, the same families have entrusted us with their pets — across generations, through every illness, every joy, every loss. We answer the phone ourselves. We remember what you fed your dog last summer. That is the practice we have built.</p>
+ <a class=cta href=#book>Become a client</a>
+ </main>
+ <section class=pillars2>
+ <div><h3>House calls</h3><p>For senior pets, end-of-life care, or pets who simply hate the car.</p></div>
+ <div><h3>Concierge medicine</h3><p>Direct cell-phone access to your DVM. No portal. No phone tree.</p></div>
+ <div><h3>Estate planning</h3><p>Pet-trust referrals, end-of-life planning, in-home euthanasia.</p></div>
+ </section>
+ <footer style="padding:3em;text-align:center;color:var(--muted);font-size:.85em">245 Lancaster Avenue, Malvern, PA, 19355 · +1 610-695-0860</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15289-b.html b/public/mockups/biz-15289-b.html
new file mode 100644
index 0000000..1f78f3d
--- /dev/null
+++ b/public/mockups/biz-15289-b.html
@@ -0,0 +1,49 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Spectral%3Awght%40400%3B700%3B900%26family%3DWork%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#221913; --paper:#faf2e8; --accent:#5a3920;
+ --accent2:#c97a3e; --muted:#7d6e5d; --rule:#ead9c1;
+ --h-font:'Spectral', serif; --b-font:'Work Sans', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:inset 0 -3px 0 var(--accent2);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .fam-hero{padding:5em 4em;background:var(--paper);max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:4em;align-items:center}
+ .fam-hero h1{font-size:3.2em;font-weight:700;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .fam-hero .lead{font-size:1.2em;color:var(--ink);line-height:1.6;max-width:480px}
+ .fam-hero .stats{margin-top:1.5em;display:flex;gap:2em}
+ .fam-hero .stats div strong{display:block;font-size:1.8em;color:var(--accent);font-family:var(--h-font);font-weight:900}
+ .fam-hero .stats div span{font-size:.85em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}
+ .fam-hero .photo{aspect-ratio:1/1;background:var(--rule);border-radius:var(--card-r);background-image:radial-gradient(circle at 50% 30%, #c97a3e 0%, #ead9c1 70%)}
+ .fam-strip{background:var(--accent);color:var(--paper);padding:3em 4em;text-align:center}
+ .fam-strip h2{font-size:2em;color:var(--paper);margin:0 0 .3em}
+ .fam-strip p{opacity:.9;max-width:600px;margin:0 auto 1.5em}
+</style></head><body>
+ <section class=fam-hero>
+ <div>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">vet clinic</small>
+ <h1>Main Line Veterinary Hospital</h1>
+ <p class=lead>The veterinary practice Malvern families have trusted for three generations. We were here when your dog was a puppy. We'll be here when she's grey.</p>
+ <div class=stats><div><strong>34 yrs</strong><span>in practice</span></div><div><strong>4</strong><span>generations served</span></div><div><strong>★ 4.9</strong><span>from 800+</span></div></div>
+ <p style="margin-top:2em"><a class=btn href=#book>Book a visit</a> <a class=btn-ghost href=#about>Meet our team</a></p>
+ </div>
+ <div class=photo></div>
+ </section>
+ <section class=fam-strip>
+ <h2>Same-week appointments, every week.</h2>
+ <p>Most clients book within 3 days. Emergency? Call us — we take same-day sick visits Monday-Friday.</p>
+ <a class=btn-2 href=#book>See this week's openings →</a>
+ </section>
+ <footer style="padding:2em 4em;text-align:center;color:var(--muted)">245 Lancaster Avenue, Malvern, PA, 19355 · +1 610-695-0860</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15289-c.html b/public/mockups/biz-15289-c.html
new file mode 100644
index 0000000..a328559
--- /dev/null
+++ b/public/mockups/biz-15289-c.html
@@ -0,0 +1,51 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lora%3Awght%40400%3B700%3B900%26family%3DPublic%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0a0a14; --paper:#f0e8d8; --accent:#0a0a14;
+ --accent2:#c8a85e; --muted:#5d5e6e; --rule:#dccfb3;
+ --h-font:'Lora', serif; --b-font:'Public Sans', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .split{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}
+ .split-left{padding:5em 4em;background:var(--accent);color:var(--paper);display:flex;flex-direction:column;justify-content:center}
+ .split-right{padding:5em 4em;background:var(--paper);display:flex;flex-direction:column;justify-content:center}
+ .split-left h1{font-size:3.6em;font-weight:900;letter-spacing:-.03em;line-height:1}
+ .split-left p{opacity:.85;font-size:1.15em;margin:1em 0 2em;max-width:480px}
+ .split-right h2{font-size:1.8em;margin-bottom:1em}
+ .svc{padding:1em 0;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:center}
+ .svc:last-child{border:0}
+ .svc strong{color:var(--ink)}
+ .svc small{color:var(--muted)}
+ .svc a{color:var(--accent);font-weight:600}
+</style></head><body>
+ <main class=split>
+ <section class=split-left>
+ <small style="opacity:.7;letter-spacing:.15em;text-transform:uppercase;font-weight:700">vet clinic</small>
+ <h1>Main Line Veterinary Hospital</h1>
+ <p>Modern veterinary medicine. Honest prices. Real people who remember your pet's name.</p>
+ <div><a class=btn-2 href=#book>Book online</a></div>
+ </section>
+ <section class=split-right>
+ <h2>What we do</h2>
+ <div class=svc><div><strong>Annual wellness</strong><br><small>Includes vaccines + parasite prevention</small></div><a href=#>$95</a></div>
+ <div class=svc><div><strong>Sick visit</strong><br><small>Same-day when we can fit you</small></div><a href=#>$110</a></div>
+ <div class=svc><div><strong>Dental cleaning</strong><br><small>Includes anesthesia + monitoring</small></div><a href=#>From $450</a></div>
+ <div class=svc><div><strong>Spay/Neuter</strong><br><small>Cats and dogs both</small></div><a href=#>From $225</a></div>
+ <hr class=divider>
+ <p class=muted>245 Lancaster Avenue, Malvern, PA, 19355 · +1 610-695-0860</p>
+ </section>
+ </main></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15295-a.html b/public/mockups/biz-15295-a.html
new file mode 100644
index 0000000..d530542
--- /dev/null
+++ b/public/mockups/biz-15295-a.html
@@ -0,0 +1,45 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Cormorant%2BGaramond%3Awght%40400%3B700%3B900%26family%3DLato%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#221913; --paper:#faf2e8; --accent:#5a3920;
+ --accent2:#c97a3e; --muted:#7d6e5d; --rule:#ead9c1;
+ --h-font:'Cormorant Garamond', serif; --b-font:'Lato', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pl-hero{padding:5em 3em;background:var(--accent);color:var(--paper);position:relative;overflow:hidden}
+ .pl-hero:after{content:"🐶 🐱 🐾 🦴 🐾 🐶 🐱 🦴";position:absolute;top:0;right:-20%;font-size:14em;opacity:.05;line-height:1;letter-spacing:.5em}
+ .pl-hero h1{font-size:4.5em;font-weight:900;letter-spacing:-.03em;line-height:1;max-width:14ch;margin:0 0 .3em;color:var(--paper)}
+ .pl-hero p{font-size:1.3em;opacity:.9;max-width:600px;margin:1em 0 2em}
+ .pl-hero .btn{background:var(--accent2);color:#fff}
+ .pl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5em;padding:3em;max-width:1200px;margin:0 auto}
+ .pl-card{background:#fff;padding:2em;border-radius:var(--card-r);box-shadow:var(--card-shadow);text-align:center}
+ .pl-card .emoji{font-size:3em;line-height:1}
+ .pl-card h3{margin:.4em 0;font-size:1.3em}
+ .pl-card p{margin:0;color:var(--muted);font-size:.95em}
+</style></head><body>
+ <section class=pl-hero>
+ <small style="opacity:.7;font-weight:700;letter-spacing:.15em;text-transform:uppercase">vet clinic</small>
+ <h1>Agricultural Veterinary Associates</h1>
+ <p>The Lititz vet your dog actually wants to visit. Treats, head scratches, and zero waiting-room shaking.</p>
+ <a class=btn href=#book>Book online →</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>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">137 East 28th Division Highway, Lititz, PA, 17543 · +1 717-625-4212</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15295-b.html b/public/mockups/biz-15295-b.html
new file mode 100644
index 0000000..22e77ae
--- /dev/null
+++ b/public/mockups/biz-15295-b.html
@@ -0,0 +1,65 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Libre%2BBaskerville%3Awght%40400%3B700%3B900%26family%3DOpen%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c0c0c; --paper:#fcfcfa; --accent:#0a0a0a;
+ --accent2:#d4a017; --muted:#5e5e5e; --rule:#e5e5e0;
+ --h-font:'Libre Baskerville', serif; --b-font:'Open Sans', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .mc-nav{padding:1.4em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule);background:var(--paper);position:sticky;top:0;z-index:10}
+ .mc-nav strong{font-size:1.1em}
+ .mc-nav nav a{margin-left:1.5em;color:var(--ink);font-weight:500}
+ .mc-hero{padding:6em 3em 4em;text-align:left;max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr;gap:4em;align-items:end}
+ .mc-hero h1{font-size:3.8em;font-weight:800;letter-spacing:-.025em;line-height:1.05;margin:0}
+ .mc-hero p{font-size:1.2em;color:var(--muted);margin:1em 0;max-width:520px}
+ .mc-hero .actions{display:flex;gap:1em}
+ .mc-hero .badges{display:grid;grid-template-columns:1fr 1fr;gap:.7em;align-items:end}
+ .mc-hero .badge{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:.8em;text-align:center;font-size:.85em}
+ .mc-hero .badge strong{display:block;color:var(--accent);font-size:1.4em;font-family:var(--h-font);font-weight:900}
+ .mc-services{padding:4em 3em;background:var(--rule)}
+ .mc-services h2{font-size:1.8em;text-align:center;margin-bottom:2em}
+ .mc-services ul{list-style:none;padding:0;max-width:900px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:1em}
+ .mc-services li{background:var(--paper);padding:1.2em 1.5em;border-radius:var(--card-r);font-weight:600;display:flex;justify-content:space-between;align-items:center}
+ .mc-services li small{color:var(--muted);font-weight:400}
+</style></head><body>
+ <nav class=mc-nav><strong>Agricultural Veterinary Associates</strong><nav><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a></nav><a class=btn href=#book>Book</a></nav>
+ <section class=mc-hero>
+ <div>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">vet clinic · Lititz, PA</small>
+ <h1>Modern medicine. Honest pricing. Real follow-through.</h1>
+ <p>The veterinary practice Lititz has been waiting for. Open 7 days. Online booking. Email reminders. Estimates before treatment.</p>
+ <div class=actions><a class=btn href=#book>Book in 60 seconds</a><a class=btn-ghost href=#tour>Take a tour →</a></div>
+ </div>
+ <div class=badges>
+ <div class=badge><strong>★ 4.9</strong>412 reviews</div>
+ <div class=badge><strong>7 days</strong>Open weekly</div>
+ <div class=badge><strong>$95</strong>Wellness exam</div>
+ <div class=badge><strong>24h</strong>Lab results</div>
+ </div>
+ </section>
+ <section class=mc-services>
+ <h2>Common visits</h2>
+ <ul>
+ <li>Annual wellness <small>$95</small></li>
+ <li>Sick visit <small>$110</small></li>
+ <li>Dental cleaning <small>From $450</small></li>
+ <li>Spay / neuter <small>From $225</small></li>
+ <li>Vaccine package <small>$140</small></li>
+ <li>Senior bloodwork <small>$185</small></li>
+ </ul>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">137 East 28th Division Highway, Lititz, PA, 17543 · +1 717-625-4212</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15295-c.html b/public/mockups/biz-15295-c.html
new file mode 100644
index 0000000..2e9cfad
--- /dev/null
+++ b/public/mockups/biz-15295-c.html
@@ -0,0 +1,44 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Manrope%3Awght%40400%3B700%3B900%26family%3DManrope%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#000000; --paper:#fffaf3; --accent:#000000;
+ --accent2:#a16207; --muted:#525252; --rule:#e5e0d8;
+ --h-font:'Manrope', serif; --b-font:'Manrope', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .bq-hero{padding:5em 4em;background:linear-gradient(180deg,#e5e0d8,#fffaf3);text-align:center}
+ .bq-hero small{font-style:italic;font-family:var(--h-font);font-size:1.1em;color:var(--accent)}
+ .bq-hero h1{font-size:4em;margin:.3em 0 .5em;font-weight:400;letter-spacing:-.01em}
+ .bq-hero p{color:var(--muted);font-size:1.15em;max-width:560px;margin:0 auto 2em;line-height:1.7}
+ .bq-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 4em;max-width:1200px;margin:0 auto}
+ .bq-card{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:2em;text-align:center}
+ .bq-card .ico{font-size:2.4em;color:var(--accent2)}
+ .bq-card h3{font-style:italic;font-family:var(--h-font);margin:.5em 0;font-size:1.4em;font-weight:400}
+ .bq-card p{color:var(--muted);font-size:.95em;line-height:1.6;margin:0}
+</style></head><body>
+ <section class=bq-hero>
+ <small>vet clinic</small>
+ <h1>Agricultural Veterinary Associates</h1>
+ <p>A neighborhood veterinary practice that feels like home — in the best part of Lititz.</p>
+ <a class=btn href=#book>Book a visit</a>
+ </section>
+ <section class=bq-cards>
+ <div class=bq-card><div class=ico>🐾</div><h3>Wellness</h3><p>Annual exams, vaccines, parasite prevention, nutrition.</p></div>
+ <div class=bq-card><div class=ico>🦴</div><h3>Dental</h3><p>Cleanings under anesthesia with continuous monitoring.</p></div>
+ <div class=bq-card><div class=ico>❤️</div><h3>Senior care</h3><p>A dedicated quarterly visit for pets 8+, with bloodwork.</p></div>
+ </section>
+ <footer style="padding:2em 4em;text-align:center;color:var(--muted)">137 East 28th Division Highway, Lititz, PA, 17543 · +1 717-625-4212</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15296-a.html b/public/mockups/biz-15296-a.html
new file mode 100644
index 0000000..fd520ed
--- /dev/null
+++ b/public/mockups/biz-15296-a.html
@@ -0,0 +1,45 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito%3Awght%40400%3B700%3B900%26family%3DNunito%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1f1a0a; --paper:#fffaf0; --accent:#b45309;
+ --accent2:#0c1e6e; --muted:#7d6e5d; --rule:#e8d3a3;
+ --h-font:'Nunito', serif; --b-font:'Nunito', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:inset 0 -3px 0 var(--accent2);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pl-hero{padding:5em 3em;background:var(--accent);color:var(--paper);position:relative;overflow:hidden}
+ .pl-hero:after{content:"🐶 🐱 🐾 🦴 🐾 🐶 🐱 🦴";position:absolute;top:0;right:-20%;font-size:14em;opacity:.05;line-height:1;letter-spacing:.5em}
+ .pl-hero h1{font-size:4.5em;font-weight:900;letter-spacing:-.03em;line-height:1;max-width:14ch;margin:0 0 .3em;color:var(--paper)}
+ .pl-hero p{font-size:1.3em;opacity:.9;max-width:600px;margin:1em 0 2em}
+ .pl-hero .btn{background:var(--accent2);color:#fff}
+ .pl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5em;padding:3em;max-width:1200px;margin:0 auto}
+ .pl-card{background:#fff;padding:2em;border-radius:var(--card-r);box-shadow:var(--card-shadow);text-align:center}
+ .pl-card .emoji{font-size:3em;line-height:1}
+ .pl-card h3{margin:.4em 0;font-size:1.3em}
+ .pl-card p{margin:0;color:var(--muted);font-size:.95em}
+</style></head><body>
+ <section class=pl-hero>
+ <small style="opacity:.7;font-weight:700;letter-spacing:.15em;text-transform:uppercase">vet clinic</small>
+ <h1>Tender Touch Veterinary Hospital</h1>
+ <p>The neighborhood vet your dog actually wants to visit. Treats, head scratches, and zero waiting-room shaking.</p>
+ <a class=btn href=#book>Book online →</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>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">151 Wexford Bayne Road, PA · +1 724-933-7387</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15296-b.html b/public/mockups/biz-15296-b.html
new file mode 100644
index 0000000..408c281
--- /dev/null
+++ b/public/mockups/biz-15296-b.html
@@ -0,0 +1,59 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Spectral%3Awght%40400%3B700%3B900%26family%3DWork%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1a1014; --paper:#fcf6f3; --accent:#9d2851;
+ --accent2:#3a4a3a; --muted:#8a6f78; --rule:#ebd7cf;
+ --h-font:'Spectral', serif; --b-font:'Work Sans', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pagewrap{max-width:1100px;margin:0 auto;padding:3em 3em}
+ .masthead{border-top:6px solid var(--ink);border-bottom:1px solid var(--rule);padding:1em 0;display:flex;justify-content:space-between;align-items:baseline}
+ .masthead h1{font-size:2.4em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .masthead .date{color:var(--muted);font-size:.9em;letter-spacing:.1em;text-transform:uppercase}
+ .feature{display:grid;grid-template-columns:2fr 1fr;gap:3em;padding:3em 0;border-bottom:1px solid var(--rule)}
+ .feature h2{font-size:3.2em;line-height:1.05;font-weight:700;margin:0 0 .4em}
+ .feature .lead{font-size:1.2em;color:var(--ink);line-height:1.6}
+ .feature aside{border-left:3px solid var(--accent);padding-left:1.5em}
+ .feature aside h4{margin:0 0 .4em;font-size:1.1em;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}
+ .feature aside p{color:var(--muted);font-size:.95em;line-height:1.55}
+ .three{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 0}
+ .three h3{font-family:var(--h-font);font-size:1.5em;border-top:2px solid var(--accent);padding-top:.6em}
+</style></head><body>
+ <div class=pagewrap>
+ <header class=masthead>
+ <h1>Tender Touch Veterinary Hospital</h1>
+ <span class=date>vet clinic · , PA</span>
+ </header>
+ <article class=feature>
+ <div>
+ <h2>The kind of veterinary care your grandparents trusted — with the technology your pet deserves now.</h2>
+ <p class=lead>For three decades, we've been the family practice this city families call when something matters. Walk-in welcomes, transparent pricing, and a waiting room that doesn't feel like one.</p>
+ <p><a class=btn href=#book>Book a visit →</a></p>
+ </div>
+ <aside>
+ <h4>What's new</h4>
+ <p><strong>Online booking is live.</strong> Pick your day, your doctor, and the time that fits — no phone tag.</p>
+ <p><strong>Senior pet program.</strong> Quarterly visits + bloodwork for pets 8+, $35/mo.</p>
+ </aside>
+ </article>
+ <section class=three>
+ <div><h3>General Practice</h3><p>Annual wellness visits, vaccines, parasite prevention, nutrition counseling.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with anesthetic monitoring. Same-day discharge for most.</p></div>
+ <div><h3>Urgent Sick Care</h3><p>Same-day appointments most weekdays. Call before 11 AM, visit before 5.</p></div>
+ </section>
+ <footer><p class=muted>151 Wexford Bayne Road, PA · +1 724-933-7387</p></footer>
+ </div></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15296-c.html b/public/mockups/biz-15296-c.html
new file mode 100644
index 0000000..63a519d
--- /dev/null
+++ b/public/mockups/biz-15296-c.html
@@ -0,0 +1,50 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Manrope%3Awght%40400%3B700%3B900%26family%3DManrope%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1e1b3a; --paper:#faf5ff; --accent:#7c3aed;
+ --accent2:#d97706; --muted:#6b6989; --rule:#e9d5ff;
+ --h-font:'Manrope', serif; --b-font:'Manrope', system-ui, sans-serif;
+ --btn-r:10px; --card-r:12px; --card-shadow:0 4px 14px rgba(0,0,0,.06);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .nv{padding:1.5em 3em;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between}
+ .st-hero{padding:4em 3em;text-align:center}
+ .st-hero h1{font-size:3em;font-weight:800;margin:0 0 .3em}
+ .st-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:0;border-top:1px solid var(--rule)}
+ .st-tile{padding:3em 2em;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);transition:background .2s}
+ .st-tile:nth-child(4n){border-right:0}
+ .st-tile:hover{background:var(--rule)}
+ .st-tile .num{font-family:var(--h-font);font-size:1.5em;color:var(--accent);font-weight:900;display:block;margin-bottom:.5em}
+ .st-tile h3{font-size:1.2em;margin:.3em 0}
+ .st-tile p{color:var(--muted);font-size:.92em;line-height:1.5}
+</style></head><body>
+ <nav class=nv><strong>Tender Touch Veterinary Hospital</strong><a class=btn href=#book>Book</a></nav>
+ <section class=st-hero>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">vet clinic · , PA</small>
+ <h1>Care for the whole life of your pet.</h1>
+ <p class=muted>From the first puppy visit to the last quiet day.</p>
+ </section>
+ <section class=st-tiles>
+ <div class=st-tile><span class=num>01</span><h3>Puppy / kitten</h3><p>First exam, vaccine series, parasite plan.</p></div>
+ <div class=st-tile><span class=num>02</span><h3>Wellness</h3><p>Annual exams, dental check, nutrition.</p></div>
+ <div class=st-tile><span class=num>03</span><h3>Surgery</h3><p>Spay/neuter, soft-tissue, dental procedures.</p></div>
+ <div class=st-tile><span class=num>04</span><h3>Sick visits</h3><p>Same-day when we can fit you.</p></div>
+ <div class=st-tile><span class=num>05</span><h3>Diagnostics</h3><p>Bloodwork, imaging, ultrasound, in-house.</p></div>
+ <div class=st-tile><span class=num>06</span><h3>Senior care</h3><p>Quarterly check-ins for pets 8+.</p></div>
+ <div class=st-tile><span class=num>07</span><h3>Behavior</h3><p>Training referrals, anxiety meds, consults.</p></div>
+ <div class=st-tile><span class=num>08</span><h3>End of life</h3><p>In-home euthanasia + grief support.</p></div>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted)">151 Wexford Bayne Road, PA · +1 724-933-7387</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15297-a.html b/public/mockups/biz-15297-a.html
new file mode 100644
index 0000000..87b9e36
--- /dev/null
+++ b/public/mockups/biz-15297-a.html
@@ -0,0 +1,51 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0a0a0a; --paper:#ffffff; --accent:#262626;
+ --accent2:#b8956a; --muted:#737373; --rule:#e5e5e5;
+ --h-font:'Inter', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .com-hero{padding:5em 3em;text-align:center;background:radial-gradient(circle at 30% 30%,#e5e5e5 0%,#ffffff 60%)}
+ .com-hero small{text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700;font-size:.85em}
+ .com-hero h1{font-size:3em;margin:.3em 0 .5em;font-weight:800}
+ .com-hero p{color:var(--muted);max-width:600px;margin:0 auto 2em}
+ .testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5em;padding:3em;max-width:1200px;margin:0 auto}
+ .quote{background:#fff;padding:2em;border-radius:var(--card-r);box-shadow:var(--card-shadow);position:relative}
+ .quote:before{content:'"';position:absolute;top:.1em;left:.5em;font-size:5em;color:var(--accent);opacity:.15;font-family:Georgia,serif}
+ .quote p{font-style:italic;margin:0 0 1em;color:var(--ink);line-height:1.5}
+ .quote .by{color:var(--muted);font-size:.85em}
+ .strip{background:var(--accent);color:var(--paper);padding:2em 3em;text-align:center}
+ .strip h2{margin:0 0 .5em;font-size:2em;color:var(--paper)}
+ .strip a{color:var(--paper);background:var(--accent2);padding:.7em 1.5em;border-radius:var(--btn-r);font-weight:700;display:inline-block;margin-top:.5em}
+</style></head><body>
+ <section class=com-hero>
+ <small>boarding · Bellefonte, PA</small>
+ <h1>Buffalo Run Farm</h1>
+ <p>Caring for Bellefonte's pets since 2008. We see the same families generation after generation — that's the kind of clinic we want to be.</p>
+ <a class=btn href=#book>Book a visit</a>
+ </section>
+ <section class=testimonials>
+ <div class=quote><p>They saved my dog's life. There's no other way to put it.</p><div class=by>— Maria G., Bellefonte</div></div>
+ <div class=quote><p>The first vet office where my cat doesn't shake. They actually understand cats.</p><div class=by>— Aaron P.</div></div>
+ <div class=quote><p>Honest about prices, kind to my anxious puppy, and they remember us by name.</p><div class=by>— Devon R.</div></div>
+ </section>
+ <section class=strip>
+ <h2>Same-day sick visits, every weekday</h2>
+ <a href=#>Check today's openings →</a>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted);text-align:center">2929 Buffalo Run Road, Bellefonte, PA, 16823 · +1-814-933-7233</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15297-b.html b/public/mockups/biz-15297-b.html
new file mode 100644
index 0000000..f71ebf4
--- /dev/null
+++ b/public/mockups/biz-15297-b.html
@@ -0,0 +1,45 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Manrope%3Awght%40400%3B700%3B900%26family%3DManrope%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0a0a14; --paper:#f0e8d8; --accent:#0a0a14;
+ --accent2:#c8a85e; --muted:#5d5e6e; --rule:#dccfb3;
+ --h-font:'Manrope', serif; --b-font:'Manrope', system-ui, sans-serif;
+ --btn-r:12px; --card-r:14px; --card-shadow:0 16px 40px rgba(0,0,0,.12);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .hero{padding:7em 4em 6em;background:linear-gradient(140deg,#f0e8d8,#dccfb3);text-align:left}
+ .hero small{text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700;font-size:.9em}
+ .hero h1{font-size:4em;margin:.3em 0;line-height:1.05;font-weight:900}
+ .hero p{font-size:1.25em;color:var(--muted);max-width:600px;margin:1em 0 2em}
+ .hero .btns{display:flex;gap:1em;align-items:center}
+ .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:var(--ink);color:var(--paper)}
+ .grid > div{padding:3em 2.5em;border-right:1px solid rgba(255,255,255,.1)}
+ .grid h3{font-size:1.4em;margin-bottom:.4em}
+ .grid p{color:rgba(255,255,255,.7);margin:0}
+ .foot{padding:2em 4em;background:var(--accent);color:var(--paper);text-align:center;font-weight:600}
+</style></head><body>
+ <section class=hero>
+ <small>boarding · Bellefonte, PA</small>
+ <h1>Buffalo Run Farm</h1>
+ <p>Veterinary care designed around your pet — and your day. Same-week appointments, transparent pricing, kind people.</p>
+ <div class=btns><a class=btn href=#book>Book online</a><a class=btn-ghost href=#about>Meet the team →</a></div>
+ </section>
+ <section class=grid>
+ <div><h3>Wellness</h3><p>Annual exams, vaccinations, and proactive care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house, with same-day discharge for most procedures.</p></div>
+ <div><h3>Urgent Care</h3><p>Same-day sick visits — call us before going to the ER.</p></div>
+ </section>
+ <footer class=foot>Buffalo Run Farm · 2929 Buffalo Run Road, Bellefonte, PA, 16823 · +1-814-933-7233</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15297-c.html b/public/mockups/biz-15297-c.html
new file mode 100644
index 0000000..2667c54
--- /dev/null
+++ b/public/mockups/biz-15297-c.html
@@ -0,0 +1,50 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Merriweather%3Awght%40400%3B700%3B900%26family%3DIBM%2BPlex%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1f1a0a; --paper:#fffaf0; --accent:#b45309;
+ --accent2:#0c1e6e; --muted:#7d6e5d; --rule:#e8d3a3;
+ --h-font:'Merriweather', serif; --b-font:'IBM Plex Sans', system-ui, sans-serif;
+ --btn-r:10px; --card-r:12px; --card-shadow:0 4px 14px rgba(0,0,0,.06);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .nv{padding:1.5em 3em;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between}
+ .st-hero{padding:4em 3em;text-align:center}
+ .st-hero h1{font-size:3em;font-weight:800;margin:0 0 .3em}
+ .st-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:0;border-top:1px solid var(--rule)}
+ .st-tile{padding:3em 2em;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);transition:background .2s}
+ .st-tile:nth-child(4n){border-right:0}
+ .st-tile:hover{background:var(--rule)}
+ .st-tile .num{font-family:var(--h-font);font-size:1.5em;color:var(--accent);font-weight:900;display:block;margin-bottom:.5em}
+ .st-tile h3{font-size:1.2em;margin:.3em 0}
+ .st-tile p{color:var(--muted);font-size:.92em;line-height:1.5}
+</style></head><body>
+ <nav class=nv><strong>Buffalo Run Farm</strong><a class=btn href=#book>Book</a></nav>
+ <section class=st-hero>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">boarding · Bellefonte, PA</small>
+ <h1>Care for the whole life of your pet.</h1>
+ <p class=muted>From the first puppy visit to the last quiet day.</p>
+ </section>
+ <section class=st-tiles>
+ <div class=st-tile><span class=num>01</span><h3>Puppy / kitten</h3><p>First exam, vaccine series, parasite plan.</p></div>
+ <div class=st-tile><span class=num>02</span><h3>Wellness</h3><p>Annual exams, dental check, nutrition.</p></div>
+ <div class=st-tile><span class=num>03</span><h3>Surgery</h3><p>Spay/neuter, soft-tissue, dental procedures.</p></div>
+ <div class=st-tile><span class=num>04</span><h3>Sick visits</h3><p>Same-day when we can fit you.</p></div>
+ <div class=st-tile><span class=num>05</span><h3>Diagnostics</h3><p>Bloodwork, imaging, ultrasound, in-house.</p></div>
+ <div class=st-tile><span class=num>06</span><h3>Senior care</h3><p>Quarterly check-ins for pets 8+.</p></div>
+ <div class=st-tile><span class=num>07</span><h3>Behavior</h3><p>Training referrals, anxiety meds, consults.</p></div>
+ <div class=st-tile><span class=num>08</span><h3>End of life</h3><p>In-home euthanasia + grief support.</p></div>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted)">2929 Buffalo Run Road, Bellefonte, PA, 16823 · +1-814-933-7233</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15303-a.html b/public/mockups/biz-15303-a.html
new file mode 100644
index 0000000..45b6f96
--- /dev/null
+++ b/public/mockups/biz-15303-a.html
@@ -0,0 +1,49 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito%3Awght%40400%3B700%3B900%26family%3DNunito%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0f172a; --paper:#f0f9ff; --accent:#0284c7;
+ --accent2:#facc15; --muted:#475569; --rule:#bae6fd;
+ --h-font:'Nunito', serif; --b-font:'Nunito', system-ui, sans-serif;
+ --btn-r:0; --card-r:0; --card-shadow:none;
+ --divider:solid 2px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .fam-hero{padding:5em 4em;background:var(--paper);max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:4em;align-items:center}
+ .fam-hero h1{font-size:3.2em;font-weight:700;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .fam-hero .lead{font-size:1.2em;color:var(--ink);line-height:1.6;max-width:480px}
+ .fam-hero .stats{margin-top:1.5em;display:flex;gap:2em}
+ .fam-hero .stats div strong{display:block;font-size:1.8em;color:var(--accent);font-family:var(--h-font);font-weight:900}
+ .fam-hero .stats div span{font-size:.85em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}
+ .fam-hero .photo{aspect-ratio:1/1;background:var(--rule);border-radius:var(--card-r);background-image:radial-gradient(circle at 50% 30%, #facc15 0%, #bae6fd 70%)}
+ .fam-strip{background:var(--accent);color:var(--paper);padding:3em 4em;text-align:center}
+ .fam-strip h2{font-size:2em;color:var(--paper);margin:0 0 .3em}
+ .fam-strip p{opacity:.9;max-width:600px;margin:0 auto 1.5em}
+</style></head><body>
+ <section class=fam-hero>
+ <div>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">pet store</small>
+ <h1>Everything Reptile</h1>
+ <p class=lead>The veterinary practice Chadds Ford families have trusted for three generations. We were here when your dog was a puppy. We'll be here when she's grey.</p>
+ <div class=stats><div><strong>34 yrs</strong><span>in practice</span></div><div><strong>4</strong><span>generations served</span></div><div><strong>★ 4.9</strong><span>from 800+</span></div></div>
+ <p style="margin-top:2em"><a class=btn href=#book>Book a visit</a> <a class=btn-ghost href=#about>Meet our team</a></p>
+ </div>
+ <div class=photo></div>
+ </section>
+ <section class=fam-strip>
+ <h2>Same-week appointments, every week.</h2>
+ <p>Most clients book within 3 days. Emergency? Call us — we take same-day sick visits Monday-Friday.</p>
+ <a class=btn-2 href=#book>See this week's openings →</a>
+ </section>
+ <footer style="padding:2em 4em;text-align:center;color:var(--muted)">1147 Smithbridge Road, Chadds Ford, PA, 19317 · +1-610-459-9864</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15303-b.html b/public/mockups/biz-15303-b.html
new file mode 100644
index 0000000..9c685dd
--- /dev/null
+++ b/public/mockups/biz-15303-b.html
@@ -0,0 +1,42 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Merriweather%3Awght%40400%3B700%3B900%26family%3DIBM%2BPlex%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c0c1c; --paper:#f4f3f6; --accent:#581c87;
+ --accent2:#737373; --muted:#787078; --rule:#d8d5e0;
+ --h-font:'Merriweather', serif; --b-font:'IBM Plex Sans', system-ui, sans-serif;
+ --btn-r:6px; --card-r:8px; --card-shadow:none;
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .cal-hero{padding:4em 3em;text-align:center;background:linear-gradient(160deg,#d8d5e0,#f4f3f6)}
+ .cal-hero h1{font-size:3.4em;font-weight:800;margin:0 0 .3em}
+ .cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5em;max-width:900px;margin:2em auto;padding:0 2em}
+ .cal-cell{background:#fff;padding:1em .5em;text-align:center;border-radius:var(--btn-r);box-shadow:var(--card-shadow);font-weight:600}
+ .cal-cell .dow{font-size:.7em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;display:block}
+ .cal-cell .num{font-size:1.3em;font-family:var(--h-font);color:var(--accent);font-weight:900}
+ .cal-cell.closed{opacity:.3}
+ .cal-cell.open:hover{background:var(--accent);color:var(--paper);cursor:pointer}
+ .cal-cell.open:hover .num,.cal-cell.open:hover .dow{color:var(--paper)}
+</style></head><body>
+ <section class=cal-hero>
+ <small style="letter-spacing:.15em;text-transform:uppercase;color:var(--accent2);font-weight:700">pet store · Chadds Ford, PA</small>
+ <h1>Everything Reptile</h1>
+ <p class=muted>Pick a day. We'll text you the openings.</p>
+ <div class=cal-grid>
+ <div class="cal-cell open"><span class=dow>Mon</span><span class=num>4</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>5</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>6</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>7</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>8</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>9</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>10</span></div><div class="cal-cell open"><span class=dow>Mon</span><span class=num>11</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>12</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>13</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>14</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>15</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>16</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>17</span></div>
+ </div>
+ <a class=btn href=#book>Continue →</a>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">1147 Smithbridge Road, Chadds Ford, PA, 19317 · +1-610-459-9864</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15303-c.html b/public/mockups/biz-15303-c.html
new file mode 100644
index 0000000..98213f5
--- /dev/null
+++ b/public/mockups/biz-15303-c.html
@@ -0,0 +1,51 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Manrope%3Awght%40400%3B700%3B900%26family%3DManrope%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#000000; --paper:#fffaf3; --accent:#000000;
+ --accent2:#a16207; --muted:#525252; --rule:#e5e0d8;
+ --h-font:'Manrope', serif; --b-font:'Manrope', system-ui, sans-serif;
+ --btn-r:4px; --card-r:4px; --card-shadow:0 2px 4px rgba(0,0,0,.04);
+ --divider:solid 1px var(--accent);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .split{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}
+ .split-left{padding:5em 4em;background:var(--accent);color:var(--paper);display:flex;flex-direction:column;justify-content:center}
+ .split-right{padding:5em 4em;background:var(--paper);display:flex;flex-direction:column;justify-content:center}
+ .split-left h1{font-size:3.6em;font-weight:900;letter-spacing:-.03em;line-height:1}
+ .split-left p{opacity:.85;font-size:1.15em;margin:1em 0 2em;max-width:480px}
+ .split-right h2{font-size:1.8em;margin-bottom:1em}
+ .svc{padding:1em 0;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:center}
+ .svc:last-child{border:0}
+ .svc strong{color:var(--ink)}
+ .svc small{color:var(--muted)}
+ .svc a{color:var(--accent);font-weight:600}
+</style></head><body>
+ <main class=split>
+ <section class=split-left>
+ <small style="opacity:.7;letter-spacing:.15em;text-transform:uppercase;font-weight:700">pet store</small>
+ <h1>Everything Reptile</h1>
+ <p>Modern veterinary medicine. Honest prices. Real people who remember your pet's name.</p>
+ <div><a class=btn-2 href=#book>Book online</a></div>
+ </section>
+ <section class=split-right>
+ <h2>What we do</h2>
+ <div class=svc><div><strong>Annual wellness</strong><br><small>Includes vaccines + parasite prevention</small></div><a href=#>$95</a></div>
+ <div class=svc><div><strong>Sick visit</strong><br><small>Same-day when we can fit you</small></div><a href=#>$110</a></div>
+ <div class=svc><div><strong>Dental cleaning</strong><br><small>Includes anesthesia + monitoring</small></div><a href=#>From $450</a></div>
+ <div class=svc><div><strong>Spay/Neuter</strong><br><small>Cats and dogs both</small></div><a href=#>From $225</a></div>
+ <hr class=divider>
+ <p class=muted>1147 Smithbridge Road, Chadds Ford, PA, 19317 · +1-610-459-9864</p>
+ </section>
+ </main></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15305-a.html b/public/mockups/biz-15305-a.html
new file mode 100644
index 0000000..85cd6f2
--- /dev/null
+++ b/public/mockups/biz-15305-a.html
@@ -0,0 +1,44 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lora%3Awght%40400%3B700%3B900%26family%3DPublic%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0f172a; --paper:#f0f9ff; --accent:#0284c7;
+ --accent2:#facc15; --muted:#475569; --rule:#bae6fd;
+ --h-font:'Lora', serif; --b-font:'Public Sans', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .bq-hero{padding:5em 4em;background:linear-gradient(180deg,#bae6fd,#f0f9ff);text-align:center}
+ .bq-hero small{font-style:italic;font-family:var(--h-font);font-size:1.1em;color:var(--accent)}
+ .bq-hero h1{font-size:4em;margin:.3em 0 .5em;font-weight:400;letter-spacing:-.01em}
+ .bq-hero p{color:var(--muted);font-size:1.15em;max-width:560px;margin:0 auto 2em;line-height:1.7}
+ .bq-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 4em;max-width:1200px;margin:0 auto}
+ .bq-card{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:2em;text-align:center}
+ .bq-card .ico{font-size:2.4em;color:var(--accent2)}
+ .bq-card h3{font-style:italic;font-family:var(--h-font);margin:.5em 0;font-size:1.4em;font-weight:400}
+ .bq-card p{color:var(--muted);font-size:.95em;line-height:1.6;margin:0}
+</style></head><body>
+ <section class=bq-hero>
+ <small>vet clinic</small>
+ <h1>Chadds Ford Animal Hospital</h1>
+ <p>A neighborhood veterinary practice that feels like home — in the best part of Chadds Ford.</p>
+ <a class=btn href=#book>Book a visit</a>
+ </section>
+ <section class=bq-cards>
+ <div class=bq-card><div class=ico>🐾</div><h3>Wellness</h3><p>Annual exams, vaccines, parasite prevention, nutrition.</p></div>
+ <div class=bq-card><div class=ico>🦴</div><h3>Dental</h3><p>Cleanings under anesthesia with continuous monitoring.</p></div>
+ <div class=bq-card><div class=ico>❤️</div><h3>Senior care</h3><p>A dedicated quarterly visit for pets 8+, with bloodwork.</p></div>
+ </section>
+ <footer style="padding:2em 4em;text-align:center;color:var(--muted)">901 Baltimore Pike, Chadds Ford, PA, 19317 · +1 610-388-2141</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15305-b.html b/public/mockups/biz-15305-b.html
new file mode 100644
index 0000000..626923c
--- /dev/null
+++ b/public/mockups/biz-15305-b.html
@@ -0,0 +1,63 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Cormorant%2BGaramond%3Awght%40400%3B700%3B900%26family%3DLato%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0a0a0a; --paper:#fffaf3; --accent:#dc2626;
+ --accent2:#1f2937; --muted:#52525b; --rule:#fde2cf;
+ --h-font:'Cormorant Garamond', serif; --b-font:'Lato', system-ui, sans-serif;
+ --btn-r:999px; --card-r:18px; --card-shadow:0 2px 8px rgba(0,0,0,.05);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .news{max-width:1100px;margin:0 auto;padding:2em 3em}
+ .news .nameplate{border-top:6px solid var(--ink);border-bottom:3px solid var(--ink);padding:1em 0;text-align:center}
+ .news .nameplate h1{font-size:3em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .news .nameplate small{display:block;color:var(--muted);font-size:.9em;text-transform:uppercase;letter-spacing:.2em;margin-top:.5em}
+ .news .lead-story{padding:2em 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:2fr 1fr;gap:3em}
+ .news .lead-story h2{font-size:2.6em;font-weight:900;line-height:1.05;margin:0 0 .5em}
+ .news .lead-story .sub{font-size:1.1em;color:var(--muted);font-style:italic}
+ .news .sidebar h3{font-size:1.2em;text-transform:uppercase;letter-spacing:.1em;border-bottom:2px solid var(--accent);padding-bottom:.4em}
+ .news .sidebar ul{list-style:none;padding:0;margin:0}
+ .news .sidebar li{padding:.6em 0;border-bottom:1px dotted var(--rule);font-size:.95em}
+ .news .col3{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:2em 0;border-bottom:1px solid var(--rule)}
+ .news .col3 h3{font-size:1.3em;border-bottom:1px solid var(--rule);padding-bottom:.4em}
+</style></head><body>
+ <article class=news>
+ <header class=nameplate>
+ <h1>Chadds Ford Animal Hospital</h1>
+ <small>vet clinic · Chadds Ford, PA · Monday, May 4, 2026</small>
+ </header>
+ <section class=lead-story>
+ <div>
+ <h2>New: Same-day appointments are back, all weekdays.</h2>
+ <p class=sub>After a six-month staffing rebuild, we've reopened walk-in sick visits Monday through Friday. Call before 11 AM, see your DVM before 5.</p>
+ <a class=btn href=#book>Book today's visit</a>
+ </div>
+ <aside class=sidebar>
+ <h3>This week</h3>
+ <ul>
+ <li>Vaccine clinic — Saturday 9-12</li>
+ <li>Senior wellness day — every Wed</li>
+ <li>Free puppy meet-up — first Sat/mo</li>
+ <li>End-of-life consults — by appt</li>
+ </ul>
+ </aside>
+ </section>
+ <section class=col3>
+ <div><h3>General Practice</h3><p>Annual wellness exams, vaccinations, and personalized care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with continuous anesthetic monitoring.</p></div>
+ <div><h3>Specialty Referrals</h3><p>Cardiology, dermatology, oncology — we know the right specialists.</p></div>
+ </section>
+ <footer style="padding:2em 0;color:var(--muted)">901 Baltimore Pike, Chadds Ford, PA, 19317 · +1 610-388-2141</footer>
+ </article></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15305-c.html b/public/mockups/biz-15305-c.html
new file mode 100644
index 0000000..4131bce
--- /dev/null
+++ b/public/mockups/biz-15305-c.html
@@ -0,0 +1,49 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=EB%2BGaramond%3Awght%40400%3B700%3B900%26family%3DKarla%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1a221a; --paper:#f6f9f1; --accent:#3a6d3a;
+ --accent2:#a14d3d; --muted:#6c7766; --rule:#dde5d3;
+ --h-font:'EB Garamond', serif; --b-font:'Karla', system-ui, sans-serif;
+ --btn-r:4px; --card-r:4px; --card-shadow:0 2px 4px rgba(0,0,0,.04);
+ --divider:solid 1px var(--accent);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{background:var(--paper)}
+ .luxe{padding:6em 5em;max-width:1100px;margin:0 auto;text-align:center}
+ .luxe small{font-family:var(--h-font);font-style:italic;font-size:1em;color:var(--accent);letter-spacing:.05em}
+ .luxe h1{font-size:5em;margin:.2em 0;font-weight:400;letter-spacing:-.02em;line-height:1}
+ .luxe .tag{font-family:var(--h-font);font-style:italic;font-size:1.4em;color:var(--muted);margin:.5em 0 2em}
+ .luxe .ornament{display:block;margin:1.5em auto;width:120px;height:1px;background:var(--accent)}
+ .luxe p.intro{max-width:640px;margin:0 auto 2.5em;font-size:1.1em;line-height:1.7;color:var(--ink)}
+ .luxe .cta{display:inline-block;border:1px solid var(--ink);padding:1.1em 2.4em;letter-spacing:.2em;text-transform:uppercase;font-size:.85em;font-weight:600;color:var(--ink)}
+ .pillars2{display:grid;grid-template-columns:repeat(3,1fr);max-width:1100px;margin:0 auto;gap:0;border-top:1px solid var(--rule)}
+ .pillars2 > div{padding:3em 2em;border-right:1px solid var(--rule);text-align:center}
+ .pillars2 > div:last-child{border:0}
+ .pillars2 h3{font-family:var(--h-font);font-style:italic;font-size:1.4em;font-weight:400;color:var(--accent)}
+</style></head><body>
+ <main class=luxe>
+ <small>established · Chadds Ford</small>
+ <h1>Chadds Ford Animal Hospital</h1>
+ <div class=tag>A veterinary concierge for Chadds Ford families.</div>
+ <span class=ornament></span>
+ <p class=intro>For thirty years, the same families have entrusted us with their pets — across generations, through every illness, every joy, every loss. We answer the phone ourselves. We remember what you fed your dog last summer. That is the practice we have built.</p>
+ <a class=cta href=#book>Become a client</a>
+ </main>
+ <section class=pillars2>
+ <div><h3>House calls</h3><p>For senior pets, end-of-life care, or pets who simply hate the car.</p></div>
+ <div><h3>Concierge medicine</h3><p>Direct cell-phone access to your DVM. No portal. No phone tree.</p></div>
+ <div><h3>Estate planning</h3><p>Pet-trust referrals, end-of-life planning, in-home euthanasia.</p></div>
+ </section>
+ <footer style="padding:3em;text-align:center;color:var(--muted);font-size:.85em">901 Baltimore Pike, Chadds Ford, PA, 19317 · +1 610-388-2141</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15320-a.html b/public/mockups/biz-15320-a.html
new file mode 100644
index 0000000..36028c9
--- /dev/null
+++ b/public/mockups/biz-15320-a.html
@@ -0,0 +1,49 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Libre%2BBaskerville%3Awght%40400%3B700%3B900%26family%3DOpen%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1e1b3a; --paper:#faf5ff; --accent:#7c3aed;
+ --accent2:#d97706; --muted:#6b6989; --rule:#e9d5ff;
+ --h-font:'Libre Baskerville', serif; --b-font:'Open Sans', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:inset 0 -3px 0 var(--accent2);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .fam-hero{padding:5em 4em;background:var(--paper);max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:4em;align-items:center}
+ .fam-hero h1{font-size:3.2em;font-weight:700;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .fam-hero .lead{font-size:1.2em;color:var(--ink);line-height:1.6;max-width:480px}
+ .fam-hero .stats{margin-top:1.5em;display:flex;gap:2em}
+ .fam-hero .stats div strong{display:block;font-size:1.8em;color:var(--accent);font-family:var(--h-font);font-weight:900}
+ .fam-hero .stats div span{font-size:.85em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}
+ .fam-hero .photo{aspect-ratio:1/1;background:var(--rule);border-radius:var(--card-r);background-image:radial-gradient(circle at 50% 30%, #d97706 0%, #e9d5ff 70%)}
+ .fam-strip{background:var(--accent);color:var(--paper);padding:3em 4em;text-align:center}
+ .fam-strip h2{font-size:2em;color:var(--paper);margin:0 0 .3em}
+ .fam-strip p{opacity:.9;max-width:600px;margin:0 auto 1.5em}
+</style></head><body>
+ <section class=fam-hero>
+ <div>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">pet store</small>
+ <h1>Wild Birds Unlimited</h1>
+ <p class=lead>The veterinary practice Havertown families have trusted for three generations. We were here when your dog was a puppy. We'll be here when she's grey.</p>
+ <div class=stats><div><strong>34 yrs</strong><span>in practice</span></div><div><strong>4</strong><span>generations served</span></div><div><strong>★ 4.9</strong><span>from 800+</span></div></div>
+ <p style="margin-top:2em"><a class=btn href=#book>Book a visit</a> <a class=btn-ghost href=#about>Meet our team</a></p>
+ </div>
+ <div class=photo></div>
+ </section>
+ <section class=fam-strip>
+ <h2>Same-week appointments, every week.</h2>
+ <p>Most clients book within 3 days. Emergency? Call us — we take same-day sick visits Monday-Friday.</p>
+ <a class=btn-2 href=#book>See this week's openings →</a>
+ </section>
+ <footer style="padding:2em 4em;text-align:center;color:var(--muted)">1305 West Chester Pike, Havertown, PA, 19083 · +1 484-453-8721</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15320-b.html b/public/mockups/biz-15320-b.html
new file mode 100644
index 0000000..2ffe95e
--- /dev/null
+++ b/public/mockups/biz-15320-b.html
@@ -0,0 +1,63 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Cormorant%2BGaramond%3Awght%40400%3B700%3B900%26family%3DLato%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#000000; --paper:#fffaf3; --accent:#000000;
+ --accent2:#a16207; --muted:#525252; --rule:#e5e0d8;
+ --h-font:'Cormorant Garamond', serif; --b-font:'Lato', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .news{max-width:1100px;margin:0 auto;padding:2em 3em}
+ .news .nameplate{border-top:6px solid var(--ink);border-bottom:3px solid var(--ink);padding:1em 0;text-align:center}
+ .news .nameplate h1{font-size:3em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .news .nameplate small{display:block;color:var(--muted);font-size:.9em;text-transform:uppercase;letter-spacing:.2em;margin-top:.5em}
+ .news .lead-story{padding:2em 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:2fr 1fr;gap:3em}
+ .news .lead-story h2{font-size:2.6em;font-weight:900;line-height:1.05;margin:0 0 .5em}
+ .news .lead-story .sub{font-size:1.1em;color:var(--muted);font-style:italic}
+ .news .sidebar h3{font-size:1.2em;text-transform:uppercase;letter-spacing:.1em;border-bottom:2px solid var(--accent);padding-bottom:.4em}
+ .news .sidebar ul{list-style:none;padding:0;margin:0}
+ .news .sidebar li{padding:.6em 0;border-bottom:1px dotted var(--rule);font-size:.95em}
+ .news .col3{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:2em 0;border-bottom:1px solid var(--rule)}
+ .news .col3 h3{font-size:1.3em;border-bottom:1px solid var(--rule);padding-bottom:.4em}
+</style></head><body>
+ <article class=news>
+ <header class=nameplate>
+ <h1>Wild Birds Unlimited</h1>
+ <small>pet store · Havertown, PA · Monday, May 4, 2026</small>
+ </header>
+ <section class=lead-story>
+ <div>
+ <h2>New: Same-day appointments are back, all weekdays.</h2>
+ <p class=sub>After a six-month staffing rebuild, we've reopened walk-in sick visits Monday through Friday. Call before 11 AM, see your DVM before 5.</p>
+ <a class=btn href=#book>Book today's visit</a>
+ </div>
+ <aside class=sidebar>
+ <h3>This week</h3>
+ <ul>
+ <li>Vaccine clinic — Saturday 9-12</li>
+ <li>Senior wellness day — every Wed</li>
+ <li>Free puppy meet-up — first Sat/mo</li>
+ <li>End-of-life consults — by appt</li>
+ </ul>
+ </aside>
+ </section>
+ <section class=col3>
+ <div><h3>General Practice</h3><p>Annual wellness exams, vaccinations, and personalized care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with continuous anesthetic monitoring.</p></div>
+ <div><h3>Specialty Referrals</h3><p>Cardiology, dermatology, oncology — we know the right specialists.</p></div>
+ </section>
+ <footer style="padding:2em 0;color:var(--muted)">1305 West Chester Pike, Havertown, PA, 19083 · +1 484-453-8721</footer>
+ </article></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15320-c.html b/public/mockups/biz-15320-c.html
new file mode 100644
index 0000000..506ca3d
--- /dev/null
+++ b/public/mockups/biz-15320-c.html
@@ -0,0 +1,65 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lora%3Awght%40400%3B700%3B900%26family%3DPublic%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1a1a1a; --paper:#fafaf7; --accent:#0f4d3a;
+ --accent2:#c97a3e; --muted:#6b6b6b; --rule:#e6e1d6;
+ --h-font:'Lora', serif; --b-font:'Public Sans', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .mc-nav{padding:1.4em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule);background:var(--paper);position:sticky;top:0;z-index:10}
+ .mc-nav strong{font-size:1.1em}
+ .mc-nav nav a{margin-left:1.5em;color:var(--ink);font-weight:500}
+ .mc-hero{padding:6em 3em 4em;text-align:left;max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr;gap:4em;align-items:end}
+ .mc-hero h1{font-size:3.8em;font-weight:800;letter-spacing:-.025em;line-height:1.05;margin:0}
+ .mc-hero p{font-size:1.2em;color:var(--muted);margin:1em 0;max-width:520px}
+ .mc-hero .actions{display:flex;gap:1em}
+ .mc-hero .badges{display:grid;grid-template-columns:1fr 1fr;gap:.7em;align-items:end}
+ .mc-hero .badge{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:.8em;text-align:center;font-size:.85em}
+ .mc-hero .badge strong{display:block;color:var(--accent);font-size:1.4em;font-family:var(--h-font);font-weight:900}
+ .mc-services{padding:4em 3em;background:var(--rule)}
+ .mc-services h2{font-size:1.8em;text-align:center;margin-bottom:2em}
+ .mc-services ul{list-style:none;padding:0;max-width:900px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:1em}
+ .mc-services li{background:var(--paper);padding:1.2em 1.5em;border-radius:var(--card-r);font-weight:600;display:flex;justify-content:space-between;align-items:center}
+ .mc-services li small{color:var(--muted);font-weight:400}
+</style></head><body>
+ <nav class=mc-nav><strong>Wild Birds Unlimited</strong><nav><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a></nav><a class=btn href=#book>Book</a></nav>
+ <section class=mc-hero>
+ <div>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">pet store · Havertown, PA</small>
+ <h1>Modern medicine. Honest pricing. Real follow-through.</h1>
+ <p>The veterinary practice Havertown has been waiting for. Open 7 days. Online booking. Email reminders. Estimates before treatment.</p>
+ <div class=actions><a class=btn href=#book>Book in 60 seconds</a><a class=btn-ghost href=#tour>Take a tour →</a></div>
+ </div>
+ <div class=badges>
+ <div class=badge><strong>★ 4.9</strong>412 reviews</div>
+ <div class=badge><strong>7 days</strong>Open weekly</div>
+ <div class=badge><strong>$95</strong>Wellness exam</div>
+ <div class=badge><strong>24h</strong>Lab results</div>
+ </div>
+ </section>
+ <section class=mc-services>
+ <h2>Common visits</h2>
+ <ul>
+ <li>Annual wellness <small>$95</small></li>
+ <li>Sick visit <small>$110</small></li>
+ <li>Dental cleaning <small>From $450</small></li>
+ <li>Spay / neuter <small>From $225</small></li>
+ <li>Vaccine package <small>$140</small></li>
+ <li>Senior bloodwork <small>$185</small></li>
+ </ul>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">1305 West Chester Pike, Havertown, PA, 19083 · +1 484-453-8721</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15322-a.html b/public/mockups/biz-15322-a.html
new file mode 100644
index 0000000..baf34b1
--- /dev/null
+++ b/public/mockups/biz-15322-a.html
@@ -0,0 +1,65 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Merriweather%3Awght%40400%3B700%3B900%26family%3DIBM%2BPlex%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c1f1a; --paper:#ecf3ee; --accent:#14532d;
+ --accent2:#c97a3e; --muted:#5a716a; --rule:#bce3c8;
+ --h-font:'Merriweather', serif; --b-font:'IBM Plex Sans', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .mc-nav{padding:1.4em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule);background:var(--paper);position:sticky;top:0;z-index:10}
+ .mc-nav strong{font-size:1.1em}
+ .mc-nav nav a{margin-left:1.5em;color:var(--ink);font-weight:500}
+ .mc-hero{padding:6em 3em 4em;text-align:left;max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr;gap:4em;align-items:end}
+ .mc-hero h1{font-size:3.8em;font-weight:800;letter-spacing:-.025em;line-height:1.05;margin:0}
+ .mc-hero p{font-size:1.2em;color:var(--muted);margin:1em 0;max-width:520px}
+ .mc-hero .actions{display:flex;gap:1em}
+ .mc-hero .badges{display:grid;grid-template-columns:1fr 1fr;gap:.7em;align-items:end}
+ .mc-hero .badge{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:.8em;text-align:center;font-size:.85em}
+ .mc-hero .badge strong{display:block;color:var(--accent);font-size:1.4em;font-family:var(--h-font);font-weight:900}
+ .mc-services{padding:4em 3em;background:var(--rule)}
+ .mc-services h2{font-size:1.8em;text-align:center;margin-bottom:2em}
+ .mc-services ul{list-style:none;padding:0;max-width:900px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:1em}
+ .mc-services li{background:var(--paper);padding:1.2em 1.5em;border-radius:var(--card-r);font-weight:600;display:flex;justify-content:space-between;align-items:center}
+ .mc-services li small{color:var(--muted);font-weight:400}
+</style></head><body>
+ <nav class=mc-nav><strong>Concord Pike Veterinary Hospital</strong><nav><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a></nav><a class=btn href=#book>Book</a></nav>
+ <section class=mc-hero>
+ <div>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">vet clinic · Chadds Ford, PA</small>
+ <h1>Modern medicine. Honest pricing. Real follow-through.</h1>
+ <p>The veterinary practice Chadds Ford has been waiting for. Open 7 days. Online booking. Email reminders. Estimates before treatment.</p>
+ <div class=actions><a class=btn href=#book>Book in 60 seconds</a><a class=btn-ghost href=#tour>Take a tour →</a></div>
+ </div>
+ <div class=badges>
+ <div class=badge><strong>★ 4.9</strong>412 reviews</div>
+ <div class=badge><strong>7 days</strong>Open weekly</div>
+ <div class=badge><strong>$95</strong>Wellness exam</div>
+ <div class=badge><strong>24h</strong>Lab results</div>
+ </div>
+ </section>
+ <section class=mc-services>
+ <h2>Common visits</h2>
+ <ul>
+ <li>Annual wellness <small>$95</small></li>
+ <li>Sick visit <small>$110</small></li>
+ <li>Dental cleaning <small>From $450</small></li>
+ <li>Spay / neuter <small>From $225</small></li>
+ <li>Vaccine package <small>$140</small></li>
+ <li>Senior bloodwork <small>$185</small></li>
+ </ul>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">12 Beaver Valley Road, Chadds Ford, PA, 19317 · +1 610-459-4818</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15322-b.html b/public/mockups/biz-15322-b.html
new file mode 100644
index 0000000..a402d20
--- /dev/null
+++ b/public/mockups/biz-15322-b.html
@@ -0,0 +1,56 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Manrope%3Awght%40400%3B700%3B900%26family%3DManrope%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c0c0c; --paper:#fcfcfa; --accent:#0a0a0a;
+ --accent2:#d4a017; --muted:#5e5e5e; --rule:#e5e5e0;
+ --h-font:'Manrope', serif; --b-font:'Manrope', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{font-feature-settings:'kern','liga'}
+ .auth-hero{padding:5em 4em 4em;border-bottom:6px solid var(--accent)}
+ .auth-hero h1{font-size:3.4em;font-weight:800;letter-spacing:-.025em;line-height:1.05;max-width:14ch}
+ .auth-hero .credentials{margin:1em 0 1.5em;font-size:1.1em;color:var(--muted)}
+ .auth-hero .credentials span{display:inline-block;background:var(--accent);color:var(--paper);padding:.2em .6em;border-radius:var(--btn-r);font-size:.85em;font-weight:700;margin-right:.5em;margin-bottom:.4em}
+ .specs{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ink);color:var(--paper)}
+ .specs > div{padding:2em;border-right:1px solid rgba(255,255,255,.1)}
+ .specs strong{display:block;font-size:2.2em;font-family:var(--h-font);color:var(--accent2);font-weight:900}
+ .specs span{display:block;color:rgba(255,255,255,.7);font-size:.9em;margin-top:.3em;text-transform:uppercase;letter-spacing:.1em}
+ .pillars{padding:4em;display:grid;grid-template-columns:repeat(2,1fr);gap:3em}
+ .pillars h3{font-size:1.6em;border-bottom:1px solid var(--rule);padding-bottom:.5em}
+ .pillars p{color:var(--muted);line-height:1.6}
+</style></head><body>
+ <header class=auth-hero>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">vet clinic · Chadds Ford, PA</small>
+ <h1>Concord Pike Veterinary Hospital</h1>
+ <div class=credentials>
+ <span>AAHA Accredited</span><span>24-Hour ICU</span><span>Board-Certified Specialists</span>
+ </div>
+ <a class=btn href=#refer>Refer a patient →</a>
+ </header>
+ <section class=specs>
+ <div><strong>15K+</strong><span>patients seen / yr</span></div>
+ <div><strong>9</strong><span>specialties on staff</span></div>
+ <div><strong>24/7</strong><span>emergency coverage</span></div>
+ <div><strong>14 yrs</strong><span>median DVM tenure</span></div>
+ </section>
+ <section class=pillars>
+ <div><h3>Internal Medicine</h3><p>Endocrine, gastrointestinal, hematology — diagnostics in-house, treatment plans coordinated with your primary vet.</p></div>
+ <div><h3>Cardiology</h3><p>Echocardiography, holter monitoring, BNP testing. Same-week appointments for complex cases.</p></div>
+ <div><h3>Surgery</h3><p>Soft-tissue, orthopedic, and neurosurgical procedures. Board-certified surgeons on every case.</p></div>
+ <div><h3>Oncology</h3><p>Chemotherapy, radiation referrals, palliative-care consults. We call you within 24h of every diagnosis.</p></div>
+ </section>
+ <footer style="padding:2em 4em;background:var(--ink);color:rgba(255,255,255,.7)">12 Beaver Valley Road, Chadds Ford, PA, 19317 · +1 610-459-4818</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15322-c.html b/public/mockups/biz-15322-c.html
new file mode 100644
index 0000000..287c744
--- /dev/null
+++ b/public/mockups/biz-15322-c.html
@@ -0,0 +1,42 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#222218; --paper:#f9f8f1; --accent:#5d6b3a;
+ --accent2:#c97a3e; --muted:#7d7c66; --rule:#e6e3d4;
+ --h-font:'Inter', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .cal-hero{padding:4em 3em;text-align:center;background:linear-gradient(160deg,#e6e3d4,#f9f8f1)}
+ .cal-hero h1{font-size:3.4em;font-weight:800;margin:0 0 .3em}
+ .cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5em;max-width:900px;margin:2em auto;padding:0 2em}
+ .cal-cell{background:#fff;padding:1em .5em;text-align:center;border-radius:var(--btn-r);box-shadow:var(--card-shadow);font-weight:600}
+ .cal-cell .dow{font-size:.7em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;display:block}
+ .cal-cell .num{font-size:1.3em;font-family:var(--h-font);color:var(--accent);font-weight:900}
+ .cal-cell.closed{opacity:.3}
+ .cal-cell.open:hover{background:var(--accent);color:var(--paper);cursor:pointer}
+ .cal-cell.open:hover .num,.cal-cell.open:hover .dow{color:var(--paper)}
+</style></head><body>
+ <section class=cal-hero>
+ <small style="letter-spacing:.15em;text-transform:uppercase;color:var(--accent2);font-weight:700">vet clinic · Chadds Ford, PA</small>
+ <h1>Concord Pike Veterinary Hospital</h1>
+ <p class=muted>Pick a day. We'll text you the openings.</p>
+ <div class=cal-grid>
+ <div class="cal-cell open"><span class=dow>Mon</span><span class=num>4</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>5</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>6</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>7</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>8</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>9</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>10</span></div><div class="cal-cell open"><span class=dow>Mon</span><span class=num>11</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>12</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>13</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>14</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>15</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>16</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>17</span></div>
+ </div>
+ <a class=btn href=#book>Continue →</a>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">12 Beaver Valley Road, Chadds Ford, PA, 19317 · +1 610-459-4818</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15334-a.html b/public/mockups/biz-15334-a.html
new file mode 100644
index 0000000..8c55eba
--- /dev/null
+++ b/public/mockups/biz-15334-a.html
@@ -0,0 +1,63 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Merriweather%3Awght%40400%3B700%3B900%26family%3DIBM%2BPlex%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c1f1a; --paper:#f1faf6; --accent:#1d8466;
+ --accent2:#d97706; --muted:#5a716a; --rule:#cce8db;
+ --h-font:'Merriweather', serif; --b-font:'IBM Plex Sans', system-ui, sans-serif;
+ --btn-r:10px; --card-r:12px; --card-shadow:0 4px 14px rgba(0,0,0,.06);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .news{max-width:1100px;margin:0 auto;padding:2em 3em}
+ .news .nameplate{border-top:6px solid var(--ink);border-bottom:3px solid var(--ink);padding:1em 0;text-align:center}
+ .news .nameplate h1{font-size:3em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .news .nameplate small{display:block;color:var(--muted);font-size:.9em;text-transform:uppercase;letter-spacing:.2em;margin-top:.5em}
+ .news .lead-story{padding:2em 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:2fr 1fr;gap:3em}
+ .news .lead-story h2{font-size:2.6em;font-weight:900;line-height:1.05;margin:0 0 .5em}
+ .news .lead-story .sub{font-size:1.1em;color:var(--muted);font-style:italic}
+ .news .sidebar h3{font-size:1.2em;text-transform:uppercase;letter-spacing:.1em;border-bottom:2px solid var(--accent);padding-bottom:.4em}
+ .news .sidebar ul{list-style:none;padding:0;margin:0}
+ .news .sidebar li{padding:.6em 0;border-bottom:1px dotted var(--rule);font-size:.95em}
+ .news .col3{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:2em 0;border-bottom:1px solid var(--rule)}
+ .news .col3 h3{font-size:1.3em;border-bottom:1px solid var(--rule);padding-bottom:.4em}
+</style></head><body>
+ <article class=news>
+ <header class=nameplate>
+ <h1>Avets</h1>
+ <small>vet clinic · , PA · Monday, May 4, 2026</small>
+ </header>
+ <section class=lead-story>
+ <div>
+ <h2>New: Same-day appointments are back, all weekdays.</h2>
+ <p class=sub>After a six-month staffing rebuild, we've reopened walk-in sick visits Monday through Friday. Call before 11 AM, see your DVM before 5.</p>
+ <a class=btn href=#book>Book today's visit</a>
+ </div>
+ <aside class=sidebar>
+ <h3>This week</h3>
+ <ul>
+ <li>Vaccine clinic — Saturday 9-12</li>
+ <li>Senior wellness day — every Wed</li>
+ <li>Free puppy meet-up — first Sat/mo</li>
+ <li>End-of-life consults — by appt</li>
+ </ul>
+ </aside>
+ </section>
+ <section class=col3>
+ <div><h3>General Practice</h3><p>Annual wellness exams, vaccinations, and personalized care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with continuous anesthetic monitoring.</p></div>
+ <div><h3>Specialty Referrals</h3><p>Cardiology, dermatology, oncology — we know the right specialists.</p></div>
+ </section>
+ <footer style="padding:2em 0;color:var(--muted)">2674 Monroeville Boulevard, PA, 15146 · +1 412-373-4200</footer>
+ </article></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15334-b.html b/public/mockups/biz-15334-b.html
new file mode 100644
index 0000000..463c4b6
--- /dev/null
+++ b/public/mockups/biz-15334-b.html
@@ -0,0 +1,44 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lora%3Awght%40400%3B700%3B900%26family%3DPublic%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0a0a0a; --paper:#fffaf3; --accent:#dc2626;
+ --accent2:#1f2937; --muted:#52525b; --rule:#fde2cf;
+ --h-font:'Lora', serif; --b-font:'Public Sans', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .bq-hero{padding:5em 4em;background:linear-gradient(180deg,#fde2cf,#fffaf3);text-align:center}
+ .bq-hero small{font-style:italic;font-family:var(--h-font);font-size:1.1em;color:var(--accent)}
+ .bq-hero h1{font-size:4em;margin:.3em 0 .5em;font-weight:400;letter-spacing:-.01em}
+ .bq-hero p{color:var(--muted);font-size:1.15em;max-width:560px;margin:0 auto 2em;line-height:1.7}
+ .bq-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 4em;max-width:1200px;margin:0 auto}
+ .bq-card{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:2em;text-align:center}
+ .bq-card .ico{font-size:2.4em;color:var(--accent2)}
+ .bq-card h3{font-style:italic;font-family:var(--h-font);margin:.5em 0;font-size:1.4em;font-weight:400}
+ .bq-card p{color:var(--muted);font-size:.95em;line-height:1.6;margin:0}
+</style></head><body>
+ <section class=bq-hero>
+ <small>vet clinic</small>
+ <h1>Avets</h1>
+ <p>A neighborhood veterinary practice that feels like home — in the best part of town.</p>
+ <a class=btn href=#book>Book a visit</a>
+ </section>
+ <section class=bq-cards>
+ <div class=bq-card><div class=ico>🐾</div><h3>Wellness</h3><p>Annual exams, vaccines, parasite prevention, nutrition.</p></div>
+ <div class=bq-card><div class=ico>🦴</div><h3>Dental</h3><p>Cleanings under anesthesia with continuous monitoring.</p></div>
+ <div class=bq-card><div class=ico>❤️</div><h3>Senior care</h3><p>A dedicated quarterly visit for pets 8+, with bloodwork.</p></div>
+ </section>
+ <footer style="padding:2em 4em;text-align:center;color:var(--muted)">2674 Monroeville Boulevard, PA, 15146 · +1 412-373-4200</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15334-c.html b/public/mockups/biz-15334-c.html
new file mode 100644
index 0000000..5f15b07
--- /dev/null
+++ b/public/mockups/biz-15334-c.html
@@ -0,0 +1,45 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c1f2a; --paper:#f1f9fa; --accent:#0e7490;
+ --accent2:#f97316; --muted:#5d748a; --rule:#a5e5e5;
+ --h-font:'Inter', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:0; --card-r:0; --card-shadow:none;
+ --divider:solid 2px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .hero{padding:7em 4em 6em;background:linear-gradient(140deg,#f1f9fa,#a5e5e5);text-align:left}
+ .hero small{text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700;font-size:.9em}
+ .hero h1{font-size:4em;margin:.3em 0;line-height:1.05;font-weight:900}
+ .hero p{font-size:1.25em;color:var(--muted);max-width:600px;margin:1em 0 2em}
+ .hero .btns{display:flex;gap:1em;align-items:center}
+ .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:var(--ink);color:var(--paper)}
+ .grid > div{padding:3em 2.5em;border-right:1px solid rgba(255,255,255,.1)}
+ .grid h3{font-size:1.4em;margin-bottom:.4em}
+ .grid p{color:rgba(255,255,255,.7);margin:0}
+ .foot{padding:2em 4em;background:var(--accent);color:var(--paper);text-align:center;font-weight:600}
+</style></head><body>
+ <section class=hero>
+ <small>vet clinic · , PA</small>
+ <h1>Avets</h1>
+ <p>Veterinary care designed around your pet — and your day. Same-week appointments, transparent pricing, kind people.</p>
+ <div class=btns><a class=btn href=#book>Book online</a><a class=btn-ghost href=#about>Meet the team →</a></div>
+ </section>
+ <section class=grid>
+ <div><h3>Wellness</h3><p>Annual exams, vaccinations, and proactive care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house, with same-day discharge for most procedures.</p></div>
+ <div><h3>Urgent Care</h3><p>Same-day sick visits — call us before going to the ER.</p></div>
+ </section>
+ <footer class=foot>Avets · 2674 Monroeville Boulevard, PA, 15146 · +1 412-373-4200</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15351-a.html b/public/mockups/biz-15351-a.html
new file mode 100644
index 0000000..b2d37d8
--- /dev/null
+++ b/public/mockups/biz-15351-a.html
@@ -0,0 +1,56 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=EB%2BGaramond%3Awght%40400%3B700%3B900%26family%3DKarla%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c0c1c; --paper:#f4f3f6; --accent:#581c87;
+ --accent2:#737373; --muted:#787078; --rule:#d8d5e0;
+ --h-font:'EB Garamond', serif; --b-font:'Karla', system-ui, sans-serif;
+ --btn-r:999px; --card-r:18px; --card-shadow:0 2px 8px rgba(0,0,0,.05);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{font-feature-settings:'kern','liga'}
+ .auth-hero{padding:5em 4em 4em;border-bottom:6px solid var(--accent)}
+ .auth-hero h1{font-size:3.4em;font-weight:800;letter-spacing:-.025em;line-height:1.05;max-width:14ch}
+ .auth-hero .credentials{margin:1em 0 1.5em;font-size:1.1em;color:var(--muted)}
+ .auth-hero .credentials span{display:inline-block;background:var(--accent);color:var(--paper);padding:.2em .6em;border-radius:var(--btn-r);font-size:.85em;font-weight:700;margin-right:.5em;margin-bottom:.4em}
+ .specs{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ink);color:var(--paper)}
+ .specs > div{padding:2em;border-right:1px solid rgba(255,255,255,.1)}
+ .specs strong{display:block;font-size:2.2em;font-family:var(--h-font);color:var(--accent2);font-weight:900}
+ .specs span{display:block;color:rgba(255,255,255,.7);font-size:.9em;margin-top:.3em;text-transform:uppercase;letter-spacing:.1em}
+ .pillars{padding:4em;display:grid;grid-template-columns:repeat(2,1fr);gap:3em}
+ .pillars h3{font-size:1.6em;border-bottom:1px solid var(--rule);padding-bottom:.5em}
+ .pillars p{color:var(--muted);line-height:1.6}
+</style></head><body>
+ <header class=auth-hero>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">pet store · Lancaster, PA</small>
+ <h1>That Pet Place</h1>
+ <div class=credentials>
+ <span>AAHA Accredited</span><span>24-Hour ICU</span><span>Board-Certified Specialists</span>
+ </div>
+ <a class=btn href=#refer>Refer a patient →</a>
+ </header>
+ <section class=specs>
+ <div><strong>15K+</strong><span>patients seen / yr</span></div>
+ <div><strong>9</strong><span>specialties on staff</span></div>
+ <div><strong>24/7</strong><span>emergency coverage</span></div>
+ <div><strong>14 yrs</strong><span>median DVM tenure</span></div>
+ </section>
+ <section class=pillars>
+ <div><h3>Internal Medicine</h3><p>Endocrine, gastrointestinal, hematology — diagnostics in-house, treatment plans coordinated with your primary vet.</p></div>
+ <div><h3>Cardiology</h3><p>Echocardiography, holter monitoring, BNP testing. Same-week appointments for complex cases.</p></div>
+ <div><h3>Surgery</h3><p>Soft-tissue, orthopedic, and neurosurgical procedures. Board-certified surgeons on every case.</p></div>
+ <div><h3>Oncology</h3><p>Chemotherapy, radiation referrals, palliative-care consults. We call you within 24h of every diagnosis.</p></div>
+ </section>
+ <footer style="padding:2em 4em;background:var(--ink);color:rgba(255,255,255,.7)">237 Centerville Road, Lancaster, PA, 17603 · +1 717-299-5691</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15351-b.html b/public/mockups/biz-15351-b.html
new file mode 100644
index 0000000..691c1ed
--- /dev/null
+++ b/public/mockups/biz-15351-b.html
@@ -0,0 +1,45 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito%3Awght%40400%3B700%3B900%26family%3DNunito%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1e1b3a; --paper:#f6f6fb; --accent:#3a3a72;
+ --accent2:#e3589d; --muted:#6b6989; --rule:#e0dfeb;
+ --h-font:'Nunito', serif; --b-font:'Nunito', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .hero{padding:7em 4em 6em;background:linear-gradient(140deg,#f6f6fb,#e0dfeb);text-align:left}
+ .hero small{text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700;font-size:.9em}
+ .hero h1{font-size:4em;margin:.3em 0;line-height:1.05;font-weight:900}
+ .hero p{font-size:1.25em;color:var(--muted);max-width:600px;margin:1em 0 2em}
+ .hero .btns{display:flex;gap:1em;align-items:center}
+ .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:var(--ink);color:var(--paper)}
+ .grid > div{padding:3em 2.5em;border-right:1px solid rgba(255,255,255,.1)}
+ .grid h3{font-size:1.4em;margin-bottom:.4em}
+ .grid p{color:rgba(255,255,255,.7);margin:0}
+ .foot{padding:2em 4em;background:var(--accent);color:var(--paper);text-align:center;font-weight:600}
+</style></head><body>
+ <section class=hero>
+ <small>pet store · Lancaster, PA</small>
+ <h1>That Pet Place</h1>
+ <p>Veterinary care designed around your pet — and your day. Same-week appointments, transparent pricing, kind people.</p>
+ <div class=btns><a class=btn href=#book>Book online</a><a class=btn-ghost href=#about>Meet the team →</a></div>
+ </section>
+ <section class=grid>
+ <div><h3>Wellness</h3><p>Annual exams, vaccinations, and proactive care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house, with same-day discharge for most procedures.</p></div>
+ <div><h3>Urgent Care</h3><p>Same-day sick visits — call us before going to the ER.</p></div>
+ </section>
+ <footer class=foot>That Pet Place · 237 Centerville Road, Lancaster, PA, 17603 · +1 717-299-5691</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15351-c.html b/public/mockups/biz-15351-c.html
new file mode 100644
index 0000000..a2c9aee
--- /dev/null
+++ b/public/mockups/biz-15351-c.html
@@ -0,0 +1,49 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Space%2BGrotesk%3Awght%40400%3B700%3B900%26family%3DSpace%2BGrotesk%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0a0a0a; --paper:#fffaf3; --accent:#dc2626;
+ --accent2:#1f2937; --muted:#52525b; --rule:#fde2cf;
+ --h-font:'Space Grotesk', serif; --b-font:'Space Grotesk', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .fam-hero{padding:5em 4em;background:var(--paper);max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:4em;align-items:center}
+ .fam-hero h1{font-size:3.2em;font-weight:700;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .fam-hero .lead{font-size:1.2em;color:var(--ink);line-height:1.6;max-width:480px}
+ .fam-hero .stats{margin-top:1.5em;display:flex;gap:2em}
+ .fam-hero .stats div strong{display:block;font-size:1.8em;color:var(--accent);font-family:var(--h-font);font-weight:900}
+ .fam-hero .stats div span{font-size:.85em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}
+ .fam-hero .photo{aspect-ratio:1/1;background:var(--rule);border-radius:var(--card-r);background-image:radial-gradient(circle at 50% 30%, #1f2937 0%, #fde2cf 70%)}
+ .fam-strip{background:var(--accent);color:var(--paper);padding:3em 4em;text-align:center}
+ .fam-strip h2{font-size:2em;color:var(--paper);margin:0 0 .3em}
+ .fam-strip p{opacity:.9;max-width:600px;margin:0 auto 1.5em}
+</style></head><body>
+ <section class=fam-hero>
+ <div>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">pet store</small>
+ <h1>That Pet Place</h1>
+ <p class=lead>The veterinary practice Lancaster families have trusted for three generations. We were here when your dog was a puppy. We'll be here when she's grey.</p>
+ <div class=stats><div><strong>34 yrs</strong><span>in practice</span></div><div><strong>4</strong><span>generations served</span></div><div><strong>★ 4.9</strong><span>from 800+</span></div></div>
+ <p style="margin-top:2em"><a class=btn href=#book>Book a visit</a> <a class=btn-ghost href=#about>Meet our team</a></p>
+ </div>
+ <div class=photo></div>
+ </section>
+ <section class=fam-strip>
+ <h2>Same-week appointments, every week.</h2>
+ <p>Most clients book within 3 days. Emergency? Call us — we take same-day sick visits Monday-Friday.</p>
+ <a class=btn-2 href=#book>See this week's openings →</a>
+ </section>
+ <footer style="padding:2em 4em;text-align:center;color:var(--muted)">237 Centerville Road, Lancaster, PA, 17603 · +1 717-299-5691</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15359-a.html b/public/mockups/biz-15359-a.html
new file mode 100644
index 0000000..666b317
--- /dev/null
+++ b/public/mockups/biz-15359-a.html
@@ -0,0 +1,45 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito%3Awght%40400%3B700%3B900%26family%3DNunito%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#221913; --paper:#faf2e8; --accent:#5a3920;
+ --accent2:#c97a3e; --muted:#7d6e5d; --rule:#ead9c1;
+ --h-font:'Nunito', serif; --b-font:'Nunito', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .hero{padding:7em 4em 6em;background:linear-gradient(140deg,#faf2e8,#ead9c1);text-align:left}
+ .hero small{text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700;font-size:.9em}
+ .hero h1{font-size:4em;margin:.3em 0;line-height:1.05;font-weight:900}
+ .hero p{font-size:1.25em;color:var(--muted);max-width:600px;margin:1em 0 2em}
+ .hero .btns{display:flex;gap:1em;align-items:center}
+ .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:var(--ink);color:var(--paper)}
+ .grid > div{padding:3em 2.5em;border-right:1px solid rgba(255,255,255,.1)}
+ .grid h3{font-size:1.4em;margin-bottom:.4em}
+ .grid p{color:rgba(255,255,255,.7);margin:0}
+ .foot{padding:2em 4em;background:var(--accent);color:var(--paper);text-align:center;font-weight:600}
+</style></head><body>
+ <section class=hero>
+ <small>pet store · Quakertown, PA</small>
+ <h1>Pets Plus Natural</h1>
+ <p>Veterinary care designed around your pet — and your day. Same-week appointments, transparent pricing, kind people.</p>
+ <div class=btns><a class=btn href=#book>Book online</a><a class=btn-ghost href=#about>Meet the team →</a></div>
+ </section>
+ <section class=grid>
+ <div><h3>Wellness</h3><p>Annual exams, vaccinations, and proactive care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house, with same-day discharge for most procedures.</p></div>
+ <div><h3>Urgent Care</h3><p>Same-day sick visits — call us before going to the ER.</p></div>
+ </section>
+ <footer class=foot>Pets Plus Natural · 117 South West End Boulevard, Quakertown, PA, 18951 · +1 215-536-8777</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15359-b.html b/public/mockups/biz-15359-b.html
new file mode 100644
index 0000000..debdc85
--- /dev/null
+++ b/public/mockups/biz-15359-b.html
@@ -0,0 +1,60 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Space%2BGrotesk%3Awght%40400%3B700%3B900%26family%3DSpace%2BGrotesk%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#000000; --paper:#fffaf3; --accent:#000000;
+ --accent2:#a16207; --muted:#525252; --rule:#e5e0d8;
+ --h-font:'Space Grotesk', serif; --b-font:'Space Grotesk', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .nav{padding:1.2em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule)}
+ .nav strong{font-size:1.1em}
+ .hero2{display:grid;grid-template-columns:1.4fr 1fr;padding:5em 3em;gap:4em;align-items:start}
+ .hero2 h1{font-size:3.2em;font-weight:800;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .hero2 .sub{font-size:1.15em;color:var(--muted);max-width:560px;margin:0 0 2em}
+ .booking{background:#fff;border:2px solid var(--ink);border-radius:var(--card-r);padding:2em}
+ .booking h3{margin:0 0 1em;font-size:1.3em}
+ .booking label{display:block;margin:.7em 0 .2em;font-weight:600;font-size:.92em}
+ .booking input,.booking select{width:100%;padding:.6em .8em;border:1px solid var(--rule);border-radius:var(--btn-r);font:inherit}
+ .booking button{margin-top:1em;width:100%;background:var(--accent);color:var(--paper);border:0;padding:1em;font-weight:700;font-size:1.05em;border-radius:var(--btn-r);cursor:pointer}
+ .why{padding:3em;background:var(--rule)}
+ .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;max-width:1100px;margin:0 auto}
+ .why-grid > div{background:var(--paper);padding:1.5em;border-radius:var(--card-r)}
+</style></head><body>
+ <nav class=nav><strong>Pets Plus Natural</strong><a class=btn href=#book>Book online</a></nav>
+ <section class=hero2>
+ <div>
+ <h1>Skip the phone. Book your visit in 60 seconds.</h1>
+ <p class=sub>Real-time availability. Choose your doctor. Add your pet's symptoms. We'll send a confirmation by email + text.</p>
+ <p class=muted>★ 4.9 from 412 Quakertown pet families</p>
+ </div>
+ <form class=booking>
+ <h3>Request an appointment</h3>
+ <label>Your name</label><input placeholder="Jane Doe">
+ <label>Email</label><input placeholder="you@example.com">
+ <label>Pet & reason</label><select><option>Dog — wellness</option><option>Cat — sick visit</option><option>Other</option></select>
+ <label>Preferred day</label><input type=date>
+ <button>Request appointment</button>
+ </form>
+ </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>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted)">117 South West End Boulevard, Quakertown, PA, 18951 · +1 215-536-8777</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15359-c.html b/public/mockups/biz-15359-c.html
new file mode 100644
index 0000000..974aa8d
--- /dev/null
+++ b/public/mockups/biz-15359-c.html
@@ -0,0 +1,63 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lora%3Awght%40400%3B700%3B900%26family%3DPublic%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c1d2e; --paper:#f4f8fb; --accent:#0a4d6e;
+ --accent2:#e89241; --muted:#5d748a; --rule:#d5e1ea;
+ --h-font:'Lora', serif; --b-font:'Public Sans', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .news{max-width:1100px;margin:0 auto;padding:2em 3em}
+ .news .nameplate{border-top:6px solid var(--ink);border-bottom:3px solid var(--ink);padding:1em 0;text-align:center}
+ .news .nameplate h1{font-size:3em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .news .nameplate small{display:block;color:var(--muted);font-size:.9em;text-transform:uppercase;letter-spacing:.2em;margin-top:.5em}
+ .news .lead-story{padding:2em 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:2fr 1fr;gap:3em}
+ .news .lead-story h2{font-size:2.6em;font-weight:900;line-height:1.05;margin:0 0 .5em}
+ .news .lead-story .sub{font-size:1.1em;color:var(--muted);font-style:italic}
+ .news .sidebar h3{font-size:1.2em;text-transform:uppercase;letter-spacing:.1em;border-bottom:2px solid var(--accent);padding-bottom:.4em}
+ .news .sidebar ul{list-style:none;padding:0;margin:0}
+ .news .sidebar li{padding:.6em 0;border-bottom:1px dotted var(--rule);font-size:.95em}
+ .news .col3{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:2em 0;border-bottom:1px solid var(--rule)}
+ .news .col3 h3{font-size:1.3em;border-bottom:1px solid var(--rule);padding-bottom:.4em}
+</style></head><body>
+ <article class=news>
+ <header class=nameplate>
+ <h1>Pets Plus Natural</h1>
+ <small>pet store · Quakertown, PA · Monday, May 4, 2026</small>
+ </header>
+ <section class=lead-story>
+ <div>
+ <h2>New: Same-day appointments are back, all weekdays.</h2>
+ <p class=sub>After a six-month staffing rebuild, we've reopened walk-in sick visits Monday through Friday. Call before 11 AM, see your DVM before 5.</p>
+ <a class=btn href=#book>Book today's visit</a>
+ </div>
+ <aside class=sidebar>
+ <h3>This week</h3>
+ <ul>
+ <li>Vaccine clinic — Saturday 9-12</li>
+ <li>Senior wellness day — every Wed</li>
+ <li>Free puppy meet-up — first Sat/mo</li>
+ <li>End-of-life consults — by appt</li>
+ </ul>
+ </aside>
+ </section>
+ <section class=col3>
+ <div><h3>General Practice</h3><p>Annual wellness exams, vaccinations, and personalized care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with continuous anesthetic monitoring.</p></div>
+ <div><h3>Specialty Referrals</h3><p>Cardiology, dermatology, oncology — we know the right specialists.</p></div>
+ </section>
+ <footer style="padding:2em 0;color:var(--muted)">117 South West End Boulevard, Quakertown, PA, 18951 · +1 215-536-8777</footer>
+ </article></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15360-a.html b/public/mockups/biz-15360-a.html
new file mode 100644
index 0000000..71ecdff
--- /dev/null
+++ b/public/mockups/biz-15360-a.html
@@ -0,0 +1,44 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Space%2BGrotesk%3Awght%40400%3B700%3B900%26family%3DSpace%2BGrotesk%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1a1a1a; --paper:#fafaf7; --accent:#0f4d3a;
+ --accent2:#c97a3e; --muted:#6b6b6b; --rule:#e6e1d6;
+ --h-font:'Space Grotesk', serif; --b-font:'Space Grotesk', system-ui, sans-serif;
+ --btn-r:6px; --card-r:8px; --card-shadow:none;
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .bq-hero{padding:5em 4em;background:linear-gradient(180deg,#e6e1d6,#fafaf7);text-align:center}
+ .bq-hero small{font-style:italic;font-family:var(--h-font);font-size:1.1em;color:var(--accent)}
+ .bq-hero h1{font-size:4em;margin:.3em 0 .5em;font-weight:400;letter-spacing:-.01em}
+ .bq-hero p{color:var(--muted);font-size:1.15em;max-width:560px;margin:0 auto 2em;line-height:1.7}
+ .bq-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 4em;max-width:1200px;margin:0 auto}
+ .bq-card{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:2em;text-align:center}
+ .bq-card .ico{font-size:2.4em;color:var(--accent2)}
+ .bq-card h3{font-style:italic;font-family:var(--h-font);margin:.5em 0;font-size:1.4em;font-weight:400}
+ .bq-card p{color:var(--muted);font-size:.95em;line-height:1.6;margin:0}
+</style></head><body>
+ <section class=bq-hero>
+ <small>vet clinic</small>
+ <h1>Kish Veterinary Services</h1>
+ <p>A neighborhood veterinary practice that feels like home — in the best part of town.</p>
+ <a class=btn href=#book>Book a visit</a>
+ </section>
+ <section class=bq-cards>
+ <div class=bq-card><div class=ico>🐾</div><h3>Wellness</h3><p>Annual exams, vaccines, parasite prevention, nutrition.</p></div>
+ <div class=bq-card><div class=ico>🦴</div><h3>Dental</h3><p>Cleanings under anesthesia with continuous monitoring.</p></div>
+ <div class=bq-card><div class=ico>❤️</div><h3>Senior care</h3><p>A dedicated quarterly visit for pets 8+, with bloodwork.</p></div>
+ </section>
+ <footer style="padding:2em 4em;text-align:center;color:var(--muted)">4 Glenlew Drive, PA, 17044 · </footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15360-b.html b/public/mockups/biz-15360-b.html
new file mode 100644
index 0000000..16ace3a
--- /dev/null
+++ b/public/mockups/biz-15360-b.html
@@ -0,0 +1,49 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Manrope%3Awght%40400%3B700%3B900%26family%3DManrope%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1e1b3a; --paper:#faf5ff; --accent:#7c3aed;
+ --accent2:#d97706; --muted:#6b6989; --rule:#e9d5ff;
+ --h-font:'Manrope', serif; --b-font:'Manrope', system-ui, sans-serif;
+ --btn-r:10px; --card-r:12px; --card-shadow:0 4px 14px rgba(0,0,0,.06);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{background:var(--paper)}
+ .luxe{padding:6em 5em;max-width:1100px;margin:0 auto;text-align:center}
+ .luxe small{font-family:var(--h-font);font-style:italic;font-size:1em;color:var(--accent);letter-spacing:.05em}
+ .luxe h1{font-size:5em;margin:.2em 0;font-weight:400;letter-spacing:-.02em;line-height:1}
+ .luxe .tag{font-family:var(--h-font);font-style:italic;font-size:1.4em;color:var(--muted);margin:.5em 0 2em}
+ .luxe .ornament{display:block;margin:1.5em auto;width:120px;height:1px;background:var(--accent)}
+ .luxe p.intro{max-width:640px;margin:0 auto 2.5em;font-size:1.1em;line-height:1.7;color:var(--ink)}
+ .luxe .cta{display:inline-block;border:1px solid var(--ink);padding:1.1em 2.4em;letter-spacing:.2em;text-transform:uppercase;font-size:.85em;font-weight:600;color:var(--ink)}
+ .pillars2{display:grid;grid-template-columns:repeat(3,1fr);max-width:1100px;margin:0 auto;gap:0;border-top:1px solid var(--rule)}
+ .pillars2 > div{padding:3em 2em;border-right:1px solid var(--rule);text-align:center}
+ .pillars2 > div:last-child{border:0}
+ .pillars2 h3{font-family:var(--h-font);font-style:italic;font-size:1.4em;font-weight:400;color:var(--accent)}
+</style></head><body>
+ <main class=luxe>
+ <small>established · 1989</small>
+ <h1>Kish Veterinary Services</h1>
+ <div class=tag>A veterinary concierge for discerning families.</div>
+ <span class=ornament></span>
+ <p class=intro>For thirty years, the same families have entrusted us with their pets — across generations, through every illness, every joy, every loss. We answer the phone ourselves. We remember what you fed your dog last summer. That is the practice we have built.</p>
+ <a class=cta href=#book>Become a client</a>
+ </main>
+ <section class=pillars2>
+ <div><h3>House calls</h3><p>For senior pets, end-of-life care, or pets who simply hate the car.</p></div>
+ <div><h3>Concierge medicine</h3><p>Direct cell-phone access to your DVM. No portal. No phone tree.</p></div>
+ <div><h3>Estate planning</h3><p>Pet-trust referrals, end-of-life planning, in-home euthanasia.</p></div>
+ </section>
+ <footer style="padding:3em;text-align:center;color:var(--muted);font-size:.85em">4 Glenlew Drive, PA, 17044 · </footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15360-c.html b/public/mockups/biz-15360-c.html
new file mode 100644
index 0000000..202f360
--- /dev/null
+++ b/public/mockups/biz-15360-c.html
@@ -0,0 +1,56 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c1d2e; --paper:#f4f8fb; --accent:#0a4d6e;
+ --accent2:#e89241; --muted:#5d748a; --rule:#d5e1ea;
+ --h-font:'Inter', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{font-feature-settings:'kern','liga'}
+ .auth-hero{padding:5em 4em 4em;border-bottom:6px solid var(--accent)}
+ .auth-hero h1{font-size:3.4em;font-weight:800;letter-spacing:-.025em;line-height:1.05;max-width:14ch}
+ .auth-hero .credentials{margin:1em 0 1.5em;font-size:1.1em;color:var(--muted)}
+ .auth-hero .credentials span{display:inline-block;background:var(--accent);color:var(--paper);padding:.2em .6em;border-radius:var(--btn-r);font-size:.85em;font-weight:700;margin-right:.5em;margin-bottom:.4em}
+ .specs{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ink);color:var(--paper)}
+ .specs > div{padding:2em;border-right:1px solid rgba(255,255,255,.1)}
+ .specs strong{display:block;font-size:2.2em;font-family:var(--h-font);color:var(--accent2);font-weight:900}
+ .specs span{display:block;color:rgba(255,255,255,.7);font-size:.9em;margin-top:.3em;text-transform:uppercase;letter-spacing:.1em}
+ .pillars{padding:4em;display:grid;grid-template-columns:repeat(2,1fr);gap:3em}
+ .pillars h3{font-size:1.6em;border-bottom:1px solid var(--rule);padding-bottom:.5em}
+ .pillars p{color:var(--muted);line-height:1.6}
+</style></head><body>
+ <header class=auth-hero>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">vet clinic · , PA</small>
+ <h1>Kish Veterinary Services</h1>
+ <div class=credentials>
+ <span>AAHA Accredited</span><span>24-Hour ICU</span><span>Board-Certified Specialists</span>
+ </div>
+ <a class=btn href=#refer>Refer a patient →</a>
+ </header>
+ <section class=specs>
+ <div><strong>15K+</strong><span>patients seen / yr</span></div>
+ <div><strong>9</strong><span>specialties on staff</span></div>
+ <div><strong>24/7</strong><span>emergency coverage</span></div>
+ <div><strong>14 yrs</strong><span>median DVM tenure</span></div>
+ </section>
+ <section class=pillars>
+ <div><h3>Internal Medicine</h3><p>Endocrine, gastrointestinal, hematology — diagnostics in-house, treatment plans coordinated with your primary vet.</p></div>
+ <div><h3>Cardiology</h3><p>Echocardiography, holter monitoring, BNP testing. Same-week appointments for complex cases.</p></div>
+ <div><h3>Surgery</h3><p>Soft-tissue, orthopedic, and neurosurgical procedures. Board-certified surgeons on every case.</p></div>
+ <div><h3>Oncology</h3><p>Chemotherapy, radiation referrals, palliative-care consults. We call you within 24h of every diagnosis.</p></div>
+ </section>
+ <footer style="padding:2em 4em;background:var(--ink);color:rgba(255,255,255,.7)">4 Glenlew Drive, PA, 17044 · </footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15362-a.html b/public/mockups/biz-15362-a.html
new file mode 100644
index 0000000..4148ecb
--- /dev/null
+++ b/public/mockups/biz-15362-a.html
@@ -0,0 +1,39 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Manrope%3Awght%40400%3B700%3B900%26family%3DManrope%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1f1818; --paper:#fdf8f3; --accent:#a01a3a;
+ --accent2:#345b3b; --muted:#807070; --rule:#ebd5d0;
+ --h-font:'Manrope', serif; --b-font:'Manrope', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{display:flex;flex-direction:column;min-height:100vh}
+ .min-nav{padding:2em 4em;display:flex;justify-content:space-between;align-items:center;font-size:.9em;letter-spacing:.05em}
+ .min-nav strong{font-size:1em;font-weight:600}
+ .min-nav a{margin-left:1.5em;color:var(--ink)}
+ .min-hero{flex:1;padding:6em 4em;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:900px;margin:0 auto}
+ .min-hero h1{font-size:5em;font-weight:300;letter-spacing:-.04em;line-height:1.05;margin:0 0 .3em}
+ .min-hero p{font-size:1.2em;color:var(--muted);max-width:520px;margin:1em 0 2em;line-height:1.7;font-weight:300}
+ .min-hero .arrow{font-size:1em;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:.2em}
+ .min-foot{padding:2em 4em;border-top:1px solid var(--rule);display:flex;justify-content:space-between;color:var(--muted);font-size:.85em}
+</style></head><body>
+ <header class=min-nav><strong>Ruh Ro's Pet Shoppe</strong><div><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a><a href=#>Book</a></div></header>
+ <main class=min-hero>
+ <h1>Ruh Ro's Pet Shoppe.</h1>
+ <p>A small, deliberately quiet veterinary practice in Conshohocken.<br>By appointment.</p>
+ <a class=arrow href=#book>Request an appointment →</a>
+ </main>
+ <footer class=min-foot><span>30 East Ridge Pike, Conshohocken, PA, 19428</span><span>+1 610-897-8406</span></footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15362-b.html b/public/mockups/biz-15362-b.html
new file mode 100644
index 0000000..c09e0f2
--- /dev/null
+++ b/public/mockups/biz-15362-b.html
@@ -0,0 +1,49 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Playfair%2BDisplay%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0f172a; --paper:#f0f9ff; --accent:#0284c7;
+ --accent2:#facc15; --muted:#475569; --rule:#bae6fd;
+ --h-font:'Playfair Display', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:4px; --card-r:4px; --card-shadow:0 2px 4px rgba(0,0,0,.04);
+ --divider:solid 1px var(--accent);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{background:var(--paper)}
+ .luxe{padding:6em 5em;max-width:1100px;margin:0 auto;text-align:center}
+ .luxe small{font-family:var(--h-font);font-style:italic;font-size:1em;color:var(--accent);letter-spacing:.05em}
+ .luxe h1{font-size:5em;margin:.2em 0;font-weight:400;letter-spacing:-.02em;line-height:1}
+ .luxe .tag{font-family:var(--h-font);font-style:italic;font-size:1.4em;color:var(--muted);margin:.5em 0 2em}
+ .luxe .ornament{display:block;margin:1.5em auto;width:120px;height:1px;background:var(--accent)}
+ .luxe p.intro{max-width:640px;margin:0 auto 2.5em;font-size:1.1em;line-height:1.7;color:var(--ink)}
+ .luxe .cta{display:inline-block;border:1px solid var(--ink);padding:1.1em 2.4em;letter-spacing:.2em;text-transform:uppercase;font-size:.85em;font-weight:600;color:var(--ink)}
+ .pillars2{display:grid;grid-template-columns:repeat(3,1fr);max-width:1100px;margin:0 auto;gap:0;border-top:1px solid var(--rule)}
+ .pillars2 > div{padding:3em 2em;border-right:1px solid var(--rule);text-align:center}
+ .pillars2 > div:last-child{border:0}
+ .pillars2 h3{font-family:var(--h-font);font-style:italic;font-size:1.4em;font-weight:400;color:var(--accent)}
+</style></head><body>
+ <main class=luxe>
+ <small>established · Conshohocken</small>
+ <h1>Ruh Ro's Pet Shoppe</h1>
+ <div class=tag>A veterinary concierge for Conshohocken families.</div>
+ <span class=ornament></span>
+ <p class=intro>For thirty years, the same families have entrusted us with their pets — across generations, through every illness, every joy, every loss. We answer the phone ourselves. We remember what you fed your dog last summer. That is the practice we have built.</p>
+ <a class=cta href=#book>Become a client</a>
+ </main>
+ <section class=pillars2>
+ <div><h3>House calls</h3><p>For senior pets, end-of-life care, or pets who simply hate the car.</p></div>
+ <div><h3>Concierge medicine</h3><p>Direct cell-phone access to your DVM. No portal. No phone tree.</p></div>
+ <div><h3>Estate planning</h3><p>Pet-trust referrals, end-of-life planning, in-home euthanasia.</p></div>
+ </section>
+ <footer style="padding:3em;text-align:center;color:var(--muted);font-size:.85em">30 East Ridge Pike, Conshohocken, PA, 19428 · +1 610-897-8406</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15362-c.html b/public/mockups/biz-15362-c.html
new file mode 100644
index 0000000..8f3368a
--- /dev/null
+++ b/public/mockups/biz-15362-c.html
@@ -0,0 +1,60 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=EB%2BGaramond%3Awght%40400%3B700%3B900%26family%3DKarla%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#22201d; --paper:#f5efea; --accent:#a13d2d;
+ --accent2:#3a4a3a; --muted:#7a7166; --rule:#e0d6cb;
+ --h-font:'EB Garamond', serif; --b-font:'Karla', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .nav{padding:1.2em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule)}
+ .nav strong{font-size:1.1em}
+ .hero2{display:grid;grid-template-columns:1.4fr 1fr;padding:5em 3em;gap:4em;align-items:start}
+ .hero2 h1{font-size:3.2em;font-weight:800;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .hero2 .sub{font-size:1.15em;color:var(--muted);max-width:560px;margin:0 0 2em}
+ .booking{background:#fff;border:2px solid var(--ink);border-radius:var(--card-r);padding:2em}
+ .booking h3{margin:0 0 1em;font-size:1.3em}
+ .booking label{display:block;margin:.7em 0 .2em;font-weight:600;font-size:.92em}
+ .booking input,.booking select{width:100%;padding:.6em .8em;border:1px solid var(--rule);border-radius:var(--btn-r);font:inherit}
+ .booking button{margin-top:1em;width:100%;background:var(--accent);color:var(--paper);border:0;padding:1em;font-weight:700;font-size:1.05em;border-radius:var(--btn-r);cursor:pointer}
+ .why{padding:3em;background:var(--rule)}
+ .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;max-width:1100px;margin:0 auto}
+ .why-grid > div{background:var(--paper);padding:1.5em;border-radius:var(--card-r)}
+</style></head><body>
+ <nav class=nav><strong>Ruh Ro's Pet Shoppe</strong><a class=btn href=#book>Book online</a></nav>
+ <section class=hero2>
+ <div>
+ <h1>Skip the phone. Book your visit in 60 seconds.</h1>
+ <p class=sub>Real-time availability. Choose your doctor. Add your pet's symptoms. We'll send a confirmation by email + text.</p>
+ <p class=muted>★ 4.9 from 412 Conshohocken pet families</p>
+ </div>
+ <form class=booking>
+ <h3>Request an appointment</h3>
+ <label>Your name</label><input placeholder="Jane Doe">
+ <label>Email</label><input placeholder="you@example.com">
+ <label>Pet & reason</label><select><option>Dog — wellness</option><option>Cat — sick visit</option><option>Other</option></select>
+ <label>Preferred day</label><input type=date>
+ <button>Request appointment</button>
+ </form>
+ </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>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted)">30 East Ridge Pike, Conshohocken, PA, 19428 · +1 610-897-8406</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15363-a.html b/public/mockups/biz-15363-a.html
new file mode 100644
index 0000000..a8f820f
--- /dev/null
+++ b/public/mockups/biz-15363-a.html
@@ -0,0 +1,60 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Playfair%2BDisplay%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c1d2e; --paper:#f4f8fb; --accent:#0a4d6e;
+ --accent2:#e89241; --muted:#5d748a; --rule:#d5e1ea;
+ --h-font:'Playfair Display', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .nav{padding:1.2em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule)}
+ .nav strong{font-size:1.1em}
+ .hero2{display:grid;grid-template-columns:1.4fr 1fr;padding:5em 3em;gap:4em;align-items:start}
+ .hero2 h1{font-size:3.2em;font-weight:800;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .hero2 .sub{font-size:1.15em;color:var(--muted);max-width:560px;margin:0 0 2em}
+ .booking{background:#fff;border:2px solid var(--ink);border-radius:var(--card-r);padding:2em}
+ .booking h3{margin:0 0 1em;font-size:1.3em}
+ .booking label{display:block;margin:.7em 0 .2em;font-weight:600;font-size:.92em}
+ .booking input,.booking select{width:100%;padding:.6em .8em;border:1px solid var(--rule);border-radius:var(--btn-r);font:inherit}
+ .booking button{margin-top:1em;width:100%;background:var(--accent);color:var(--paper);border:0;padding:1em;font-weight:700;font-size:1.05em;border-radius:var(--btn-r);cursor:pointer}
+ .why{padding:3em;background:var(--rule)}
+ .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;max-width:1100px;margin:0 auto}
+ .why-grid > div{background:var(--paper);padding:1.5em;border-radius:var(--card-r)}
+</style></head><body>
+ <nav class=nav><strong>Canine Creature Comforts</strong><a class=btn href=#book>Book online</a></nav>
+ <section class=hero2>
+ <div>
+ <h1>Skip the phone. Book your visit in 60 seconds.</h1>
+ <p class=sub>Real-time availability. Choose your doctor. Add your pet's symptoms. We'll send a confirmation by email + text.</p>
+ <p class=muted>★ 4.9 from 412 Malvern pet families</p>
+ </div>
+ <form class=booking>
+ <h3>Request an appointment</h3>
+ <label>Your name</label><input placeholder="Jane Doe">
+ <label>Email</label><input placeholder="you@example.com">
+ <label>Pet & reason</label><select><option>Dog — wellness</option><option>Cat — sick visit</option><option>Other</option></select>
+ <label>Preferred day</label><input type=date>
+ <button>Request appointment</button>
+ </form>
+ </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>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted)">286 Lancaster Avenue, Malvern, PA · +1 610-296-8407</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15363-b.html b/public/mockups/biz-15363-b.html
new file mode 100644
index 0000000..d41b569
--- /dev/null
+++ b/public/mockups/biz-15363-b.html
@@ -0,0 +1,42 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Spectral%3Awght%40400%3B700%3B900%26family%3DWork%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c0c0c; --paper:#fcfcfa; --accent:#0a0a0a;
+ --accent2:#d4a017; --muted:#5e5e5e; --rule:#e5e5e0;
+ --h-font:'Spectral', serif; --b-font:'Work Sans', system-ui, sans-serif;
+ --btn-r:4px; --card-r:4px; --card-shadow:0 2px 4px rgba(0,0,0,.04);
+ --divider:solid 1px var(--accent);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .cal-hero{padding:4em 3em;text-align:center;background:linear-gradient(160deg,#e5e5e0,#fcfcfa)}
+ .cal-hero h1{font-size:3.4em;font-weight:800;margin:0 0 .3em}
+ .cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5em;max-width:900px;margin:2em auto;padding:0 2em}
+ .cal-cell{background:#fff;padding:1em .5em;text-align:center;border-radius:var(--btn-r);box-shadow:var(--card-shadow);font-weight:600}
+ .cal-cell .dow{font-size:.7em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;display:block}
+ .cal-cell .num{font-size:1.3em;font-family:var(--h-font);color:var(--accent);font-weight:900}
+ .cal-cell.closed{opacity:.3}
+ .cal-cell.open:hover{background:var(--accent);color:var(--paper);cursor:pointer}
+ .cal-cell.open:hover .num,.cal-cell.open:hover .dow{color:var(--paper)}
+</style></head><body>
+ <section class=cal-hero>
+ <small style="letter-spacing:.15em;text-transform:uppercase;color:var(--accent2);font-weight:700">boarding · Malvern, PA</small>
+ <h1>Canine Creature Comforts</h1>
+ <p class=muted>Pick a day. We'll text you the openings.</p>
+ <div class=cal-grid>
+ <div class="cal-cell open"><span class=dow>Mon</span><span class=num>4</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>5</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>6</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>7</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>8</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>9</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>10</span></div><div class="cal-cell open"><span class=dow>Mon</span><span class=num>11</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>12</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>13</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>14</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>15</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>16</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>17</span></div>
+ </div>
+ <a class=btn href=#book>Continue →</a>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">286 Lancaster Avenue, Malvern, PA · +1 610-296-8407</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15363-c.html b/public/mockups/biz-15363-c.html
new file mode 100644
index 0000000..de76692
--- /dev/null
+++ b/public/mockups/biz-15363-c.html
@@ -0,0 +1,51 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c1f1a; --paper:#f1faf6; --accent:#1d8466;
+ --accent2:#d97706; --muted:#5a716a; --rule:#cce8db;
+ --h-font:'Inter', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:12px; --card-r:14px; --card-shadow:0 16px 40px rgba(0,0,0,.12);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .split{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}
+ .split-left{padding:5em 4em;background:var(--accent);color:var(--paper);display:flex;flex-direction:column;justify-content:center}
+ .split-right{padding:5em 4em;background:var(--paper);display:flex;flex-direction:column;justify-content:center}
+ .split-left h1{font-size:3.6em;font-weight:900;letter-spacing:-.03em;line-height:1}
+ .split-left p{opacity:.85;font-size:1.15em;margin:1em 0 2em;max-width:480px}
+ .split-right h2{font-size:1.8em;margin-bottom:1em}
+ .svc{padding:1em 0;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:center}
+ .svc:last-child{border:0}
+ .svc strong{color:var(--ink)}
+ .svc small{color:var(--muted)}
+ .svc a{color:var(--accent);font-weight:600}
+</style></head><body>
+ <main class=split>
+ <section class=split-left>
+ <small style="opacity:.7;letter-spacing:.15em;text-transform:uppercase;font-weight:700">boarding</small>
+ <h1>Canine Creature Comforts</h1>
+ <p>Modern veterinary medicine. Honest prices. Real people who remember your pet's name.</p>
+ <div><a class=btn-2 href=#book>Book online</a></div>
+ </section>
+ <section class=split-right>
+ <h2>What we do</h2>
+ <div class=svc><div><strong>Annual wellness</strong><br><small>Includes vaccines + parasite prevention</small></div><a href=#>$95</a></div>
+ <div class=svc><div><strong>Sick visit</strong><br><small>Same-day when we can fit you</small></div><a href=#>$110</a></div>
+ <div class=svc><div><strong>Dental cleaning</strong><br><small>Includes anesthesia + monitoring</small></div><a href=#>From $450</a></div>
+ <div class=svc><div><strong>Spay/Neuter</strong><br><small>Cats and dogs both</small></div><a href=#>From $225</a></div>
+ <hr class=divider>
+ <p class=muted>286 Lancaster Avenue, Malvern, PA · +1 610-296-8407</p>
+ </section>
+ </main></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15365-a.html b/public/mockups/biz-15365-a.html
new file mode 100644
index 0000000..c297183
--- /dev/null
+++ b/public/mockups/biz-15365-a.html
@@ -0,0 +1,49 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Source%2BSerif%2BPro%3Awght%40400%3B700%3B900%26family%3DSource%2BSans%2BPro%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c0c0c; --paper:#fcfcfa; --accent:#0a0a0a;
+ --accent2:#d4a017; --muted:#5e5e5e; --rule:#e5e5e0;
+ --h-font:'Source Serif Pro', serif; --b-font:'Source Sans Pro', system-ui, sans-serif;
+ --btn-r:6px; --card-r:8px; --card-shadow:none;
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .fam-hero{padding:5em 4em;background:var(--paper);max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:4em;align-items:center}
+ .fam-hero h1{font-size:3.2em;font-weight:700;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .fam-hero .lead{font-size:1.2em;color:var(--ink);line-height:1.6;max-width:480px}
+ .fam-hero .stats{margin-top:1.5em;display:flex;gap:2em}
+ .fam-hero .stats div strong{display:block;font-size:1.8em;color:var(--accent);font-family:var(--h-font);font-weight:900}
+ .fam-hero .stats div span{font-size:.85em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}
+ .fam-hero .photo{aspect-ratio:1/1;background:var(--rule);border-radius:var(--card-r);background-image:radial-gradient(circle at 50% 30%, #d4a017 0%, #e5e5e0 70%)}
+ .fam-strip{background:var(--accent);color:var(--paper);padding:3em 4em;text-align:center}
+ .fam-strip h2{font-size:2em;color:var(--paper);margin:0 0 .3em}
+ .fam-strip p{opacity:.9;max-width:600px;margin:0 auto 1.5em}
+</style></head><body>
+ <section class=fam-hero>
+ <div>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">pet store</small>
+ <h1>Monster Pets</h1>
+ <p class=lead>The veterinary practice Philadelphia families have trusted for three generations. We were here when your dog was a puppy. We'll be here when she's grey.</p>
+ <div class=stats><div><strong>34 yrs</strong><span>in practice</span></div><div><strong>4</strong><span>generations served</span></div><div><strong>★ 4.9</strong><span>from 800+</span></div></div>
+ <p style="margin-top:2em"><a class=btn href=#book>Book a visit</a> <a class=btn-ghost href=#about>Meet our team</a></p>
+ </div>
+ <div class=photo></div>
+ </section>
+ <section class=fam-strip>
+ <h2>Same-week appointments, every week.</h2>
+ <p>Most clients book within 3 days. Emergency? Call us — we take same-day sick visits Monday-Friday.</p>
+ <a class=btn-2 href=#book>See this week's openings →</a>
+ </section>
+ <footer style="padding:2em 4em;text-align:center;color:var(--muted)">1946 South Christopher Columbus Boulevard, Philadelphia, PA, 19148 · </footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15365-b.html b/public/mockups/biz-15365-b.html
new file mode 100644
index 0000000..f052773
--- /dev/null
+++ b/public/mockups/biz-15365-b.html
@@ -0,0 +1,45 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Manrope%3Awght%40400%3B700%3B900%26family%3DManrope%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1e293b; --paper:#f1f5f9; --accent:#334155;
+ --accent2:#0ea5e9; --muted:#64748b; --rule:#cbd5e1;
+ --h-font:'Manrope', serif; --b-font:'Manrope', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pl-hero{padding:5em 3em;background:var(--accent);color:var(--paper);position:relative;overflow:hidden}
+ .pl-hero:after{content:"🐶 🐱 🐾 🦴 🐾 🐶 🐱 🦴";position:absolute;top:0;right:-20%;font-size:14em;opacity:.05;line-height:1;letter-spacing:.5em}
+ .pl-hero h1{font-size:4.5em;font-weight:900;letter-spacing:-.03em;line-height:1;max-width:14ch;margin:0 0 .3em;color:var(--paper)}
+ .pl-hero p{font-size:1.3em;opacity:.9;max-width:600px;margin:1em 0 2em}
+ .pl-hero .btn{background:var(--accent2);color:#fff}
+ .pl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5em;padding:3em;max-width:1200px;margin:0 auto}
+ .pl-card{background:#fff;padding:2em;border-radius:var(--card-r);box-shadow:var(--card-shadow);text-align:center}
+ .pl-card .emoji{font-size:3em;line-height:1}
+ .pl-card h3{margin:.4em 0;font-size:1.3em}
+ .pl-card p{margin:0;color:var(--muted);font-size:.95em}
+</style></head><body>
+ <section class=pl-hero>
+ <small style="opacity:.7;font-weight:700;letter-spacing:.15em;text-transform:uppercase">pet store</small>
+ <h1>Monster Pets</h1>
+ <p>The Philadelphia vet your dog actually wants to visit. Treats, head scratches, and zero waiting-room shaking.</p>
+ <a class=btn href=#book>Book online →</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>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">1946 South Christopher Columbus Boulevard, Philadelphia, PA, 19148 · </footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15365-c.html b/public/mockups/biz-15365-c.html
new file mode 100644
index 0000000..21453d2
--- /dev/null
+++ b/public/mockups/biz-15365-c.html
@@ -0,0 +1,39 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Playfair%2BDisplay%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c1f1a; --paper:#f1faf6; --accent:#1d8466;
+ --accent2:#d97706; --muted:#5a716a; --rule:#cce8db;
+ --h-font:'Playfair Display', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{display:flex;flex-direction:column;min-height:100vh}
+ .min-nav{padding:2em 4em;display:flex;justify-content:space-between;align-items:center;font-size:.9em;letter-spacing:.05em}
+ .min-nav strong{font-size:1em;font-weight:600}
+ .min-nav a{margin-left:1.5em;color:var(--ink)}
+ .min-hero{flex:1;padding:6em 4em;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:900px;margin:0 auto}
+ .min-hero h1{font-size:5em;font-weight:300;letter-spacing:-.04em;line-height:1.05;margin:0 0 .3em}
+ .min-hero p{font-size:1.2em;color:var(--muted);max-width:520px;margin:1em 0 2em;line-height:1.7;font-weight:300}
+ .min-hero .arrow{font-size:1em;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:.2em}
+ .min-foot{padding:2em 4em;border-top:1px solid var(--rule);display:flex;justify-content:space-between;color:var(--muted);font-size:.85em}
+</style></head><body>
+ <header class=min-nav><strong>Monster Pets</strong><div><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a><a href=#>Book</a></div></header>
+ <main class=min-hero>
+ <h1>Monster Pets.</h1>
+ <p>A small, deliberately quiet veterinary practice in Philadelphia.<br>By appointment.</p>
+ <a class=arrow href=#book>Request an appointment →</a>
+ </main>
+ <footer class=min-foot><span>1946 South Christopher Columbus Boulevard, Philadelphia, PA, 19148</span><span></span></footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15367-a.html b/public/mockups/biz-15367-a.html
new file mode 100644
index 0000000..a20bd9c
--- /dev/null
+++ b/public/mockups/biz-15367-a.html
@@ -0,0 +1,45 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Libre%2BBaskerville%3Awght%40400%3B700%3B900%26family%3DOpen%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c0c1c; --paper:#f4f3f6; --accent:#581c87;
+ --accent2:#737373; --muted:#787078; --rule:#d8d5e0;
+ --h-font:'Libre Baskerville', serif; --b-font:'Open Sans', system-ui, sans-serif;
+ --btn-r:4px; --card-r:4px; --card-shadow:0 2px 4px rgba(0,0,0,.04);
+ --divider:solid 1px var(--accent);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pl-hero{padding:5em 3em;background:var(--accent);color:var(--paper);position:relative;overflow:hidden}
+ .pl-hero:after{content:"🐶 🐱 🐾 🦴 🐾 🐶 🐱 🦴";position:absolute;top:0;right:-20%;font-size:14em;opacity:.05;line-height:1;letter-spacing:.5em}
+ .pl-hero h1{font-size:4.5em;font-weight:900;letter-spacing:-.03em;line-height:1;max-width:14ch;margin:0 0 .3em;color:var(--paper)}
+ .pl-hero p{font-size:1.3em;opacity:.9;max-width:600px;margin:1em 0 2em}
+ .pl-hero .btn{background:var(--accent2);color:#fff}
+ .pl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5em;padding:3em;max-width:1200px;margin:0 auto}
+ .pl-card{background:#fff;padding:2em;border-radius:var(--card-r);box-shadow:var(--card-shadow);text-align:center}
+ .pl-card .emoji{font-size:3em;line-height:1}
+ .pl-card h3{margin:.4em 0;font-size:1.3em}
+ .pl-card p{margin:0;color:var(--muted);font-size:.95em}
+</style></head><body>
+ <section class=pl-hero>
+ <small style="opacity:.7;font-weight:700;letter-spacing:.15em;text-transform:uppercase">vet clinic</small>
+ <h1>Hillmount Small Animal Hospital</h1>
+ <p>The Carlisle vet your dog actually wants to visit. Treats, head scratches, and zero waiting-room shaking.</p>
+ <a class=btn href=#book>Book online →</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>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">31 Westminster Drive, Carlisle, PA, 17013 · +1 717-249-7272</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15367-b.html b/public/mockups/biz-15367-b.html
new file mode 100644
index 0000000..84a0ddb
--- /dev/null
+++ b/public/mockups/biz-15367-b.html
@@ -0,0 +1,65 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Space%2BGrotesk%3Awght%40400%3B700%3B900%26family%3DSpace%2BGrotesk%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0a0a0a; --paper:#ffffff; --accent:#262626;
+ --accent2:#b8956a; --muted:#737373; --rule:#e5e5e5;
+ --h-font:'Space Grotesk', serif; --b-font:'Space Grotesk', system-ui, sans-serif;
+ --btn-r:6px; --card-r:8px; --card-shadow:none;
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .mc-nav{padding:1.4em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule);background:var(--paper);position:sticky;top:0;z-index:10}
+ .mc-nav strong{font-size:1.1em}
+ .mc-nav nav a{margin-left:1.5em;color:var(--ink);font-weight:500}
+ .mc-hero{padding:6em 3em 4em;text-align:left;max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr;gap:4em;align-items:end}
+ .mc-hero h1{font-size:3.8em;font-weight:800;letter-spacing:-.025em;line-height:1.05;margin:0}
+ .mc-hero p{font-size:1.2em;color:var(--muted);margin:1em 0;max-width:520px}
+ .mc-hero .actions{display:flex;gap:1em}
+ .mc-hero .badges{display:grid;grid-template-columns:1fr 1fr;gap:.7em;align-items:end}
+ .mc-hero .badge{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:.8em;text-align:center;font-size:.85em}
+ .mc-hero .badge strong{display:block;color:var(--accent);font-size:1.4em;font-family:var(--h-font);font-weight:900}
+ .mc-services{padding:4em 3em;background:var(--rule)}
+ .mc-services h2{font-size:1.8em;text-align:center;margin-bottom:2em}
+ .mc-services ul{list-style:none;padding:0;max-width:900px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:1em}
+ .mc-services li{background:var(--paper);padding:1.2em 1.5em;border-radius:var(--card-r);font-weight:600;display:flex;justify-content:space-between;align-items:center}
+ .mc-services li small{color:var(--muted);font-weight:400}
+</style></head><body>
+ <nav class=mc-nav><strong>Hillmount Small Animal Hospital</strong><nav><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a></nav><a class=btn href=#book>Book</a></nav>
+ <section class=mc-hero>
+ <div>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">vet clinic · Carlisle, PA</small>
+ <h1>Modern medicine. Honest pricing. Real follow-through.</h1>
+ <p>The veterinary practice Carlisle has been waiting for. Open 7 days. Online booking. Email reminders. Estimates before treatment.</p>
+ <div class=actions><a class=btn href=#book>Book in 60 seconds</a><a class=btn-ghost href=#tour>Take a tour →</a></div>
+ </div>
+ <div class=badges>
+ <div class=badge><strong>★ 4.9</strong>412 reviews</div>
+ <div class=badge><strong>7 days</strong>Open weekly</div>
+ <div class=badge><strong>$95</strong>Wellness exam</div>
+ <div class=badge><strong>24h</strong>Lab results</div>
+ </div>
+ </section>
+ <section class=mc-services>
+ <h2>Common visits</h2>
+ <ul>
+ <li>Annual wellness <small>$95</small></li>
+ <li>Sick visit <small>$110</small></li>
+ <li>Dental cleaning <small>From $450</small></li>
+ <li>Spay / neuter <small>From $225</small></li>
+ <li>Vaccine package <small>$140</small></li>
+ <li>Senior bloodwork <small>$185</small></li>
+ </ul>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">31 Westminster Drive, Carlisle, PA, 17013 · +1 717-249-7272</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15367-c.html b/public/mockups/biz-15367-c.html
new file mode 100644
index 0000000..5f25ef5
--- /dev/null
+++ b/public/mockups/biz-15367-c.html
@@ -0,0 +1,39 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c0c0c; --paper:#fcfcfa; --accent:#0a0a0a;
+ --accent2:#d4a017; --muted:#5e5e5e; --rule:#e5e5e0;
+ --h-font:'Inter', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:6px; --card-r:8px; --card-shadow:none;
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{display:flex;flex-direction:column;min-height:100vh}
+ .min-nav{padding:2em 4em;display:flex;justify-content:space-between;align-items:center;font-size:.9em;letter-spacing:.05em}
+ .min-nav strong{font-size:1em;font-weight:600}
+ .min-nav a{margin-left:1.5em;color:var(--ink)}
+ .min-hero{flex:1;padding:6em 4em;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:900px;margin:0 auto}
+ .min-hero h1{font-size:5em;font-weight:300;letter-spacing:-.04em;line-height:1.05;margin:0 0 .3em}
+ .min-hero p{font-size:1.2em;color:var(--muted);max-width:520px;margin:1em 0 2em;line-height:1.7;font-weight:300}
+ .min-hero .arrow{font-size:1em;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:.2em}
+ .min-foot{padding:2em 4em;border-top:1px solid var(--rule);display:flex;justify-content:space-between;color:var(--muted);font-size:.85em}
+</style></head><body>
+ <header class=min-nav><strong>Hillmount Small Animal Hospital</strong><div><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a><a href=#>Book</a></div></header>
+ <main class=min-hero>
+ <h1>Hillmount Small Animal Hospital.</h1>
+ <p>A small, deliberately quiet veterinary practice in Carlisle.<br>By appointment.</p>
+ <a class=arrow href=#book>Request an appointment →</a>
+ </main>
+ <footer class=min-foot><span>31 Westminster Drive, Carlisle, PA, 17013</span><span>+1 717-249-7272</span></footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15372-a.html b/public/mockups/biz-15372-a.html
new file mode 100644
index 0000000..7a62c57
--- /dev/null
+++ b/public/mockups/biz-15372-a.html
@@ -0,0 +1,51 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Spectral%3Awght%40400%3B700%3B900%26family%3DWork%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1f1a0a; --paper:#fffaf0; --accent:#b45309;
+ --accent2:#0c1e6e; --muted:#7d6e5d; --rule:#e8d3a3;
+ --h-font:'Spectral', serif; --b-font:'Work Sans', system-ui, sans-serif;
+ --btn-r:12px; --card-r:14px; --card-shadow:0 16px 40px rgba(0,0,0,.12);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .split{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}
+ .split-left{padding:5em 4em;background:var(--accent);color:var(--paper);display:flex;flex-direction:column;justify-content:center}
+ .split-right{padding:5em 4em;background:var(--paper);display:flex;flex-direction:column;justify-content:center}
+ .split-left h1{font-size:3.6em;font-weight:900;letter-spacing:-.03em;line-height:1}
+ .split-left p{opacity:.85;font-size:1.15em;margin:1em 0 2em;max-width:480px}
+ .split-right h2{font-size:1.8em;margin-bottom:1em}
+ .svc{padding:1em 0;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:center}
+ .svc:last-child{border:0}
+ .svc strong{color:var(--ink)}
+ .svc small{color:var(--muted)}
+ .svc a{color:var(--accent);font-weight:600}
+</style></head><body>
+ <main class=split>
+ <section class=split-left>
+ <small style="opacity:.7;letter-spacing:.15em;text-transform:uppercase;font-weight:700">pet store</small>
+ <h1>Aqua World</h1>
+ <p>Modern veterinary medicine. Honest prices. Real people who remember your pet's name.</p>
+ <div><a class=btn-2 href=#book>Book online</a></div>
+ </section>
+ <section class=split-right>
+ <h2>What we do</h2>
+ <div class=svc><div><strong>Annual wellness</strong><br><small>Includes vaccines + parasite prevention</small></div><a href=#>$95</a></div>
+ <div class=svc><div><strong>Sick visit</strong><br><small>Same-day when we can fit you</small></div><a href=#>$110</a></div>
+ <div class=svc><div><strong>Dental cleaning</strong><br><small>Includes anesthesia + monitoring</small></div><a href=#>From $450</a></div>
+ <div class=svc><div><strong>Spay/Neuter</strong><br><small>Cats and dogs both</small></div><a href=#>From $225</a></div>
+ <hr class=divider>
+ <p class=muted>8143 Ohio River Boulevard, Pittsburgh, PA, 15202 · </p>
+ </section>
+ </main></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15372-b.html b/public/mockups/biz-15372-b.html
new file mode 100644
index 0000000..25bd4f2
--- /dev/null
+++ b/public/mockups/biz-15372-b.html
@@ -0,0 +1,59 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito%3Awght%40400%3B700%3B900%26family%3DNunito%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c1d2e; --paper:#f4f8fb; --accent:#0a4d6e;
+ --accent2:#e89241; --muted:#5d748a; --rule:#d5e1ea;
+ --h-font:'Nunito', serif; --b-font:'Nunito', system-ui, sans-serif;
+ --btn-r:0; --card-r:0; --card-shadow:none;
+ --divider:solid 2px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pagewrap{max-width:1100px;margin:0 auto;padding:3em 3em}
+ .masthead{border-top:6px solid var(--ink);border-bottom:1px solid var(--rule);padding:1em 0;display:flex;justify-content:space-between;align-items:baseline}
+ .masthead h1{font-size:2.4em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .masthead .date{color:var(--muted);font-size:.9em;letter-spacing:.1em;text-transform:uppercase}
+ .feature{display:grid;grid-template-columns:2fr 1fr;gap:3em;padding:3em 0;border-bottom:1px solid var(--rule)}
+ .feature h2{font-size:3.2em;line-height:1.05;font-weight:700;margin:0 0 .4em}
+ .feature .lead{font-size:1.2em;color:var(--ink);line-height:1.6}
+ .feature aside{border-left:3px solid var(--accent);padding-left:1.5em}
+ .feature aside h4{margin:0 0 .4em;font-size:1.1em;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}
+ .feature aside p{color:var(--muted);font-size:.95em;line-height:1.55}
+ .three{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 0}
+ .three h3{font-family:var(--h-font);font-size:1.5em;border-top:2px solid var(--accent);padding-top:.6em}
+</style></head><body>
+ <div class=pagewrap>
+ <header class=masthead>
+ <h1>Aqua World</h1>
+ <span class=date>pet store · Pittsburgh, PA</span>
+ </header>
+ <article class=feature>
+ <div>
+ <h2>The kind of veterinary care your grandparents trusted — with the technology your pet deserves now.</h2>
+ <p class=lead>For three decades, we've been the family practice Pittsburgh families call when something matters. Walk-in welcomes, transparent pricing, and a waiting room that doesn't feel like one.</p>
+ <p><a class=btn href=#book>Book a visit →</a></p>
+ </div>
+ <aside>
+ <h4>What's new</h4>
+ <p><strong>Online booking is live.</strong> Pick your day, your doctor, and the time that fits — no phone tag.</p>
+ <p><strong>Senior pet program.</strong> Quarterly visits + bloodwork for pets 8+, $35/mo.</p>
+ </aside>
+ </article>
+ <section class=three>
+ <div><h3>General Practice</h3><p>Annual wellness visits, vaccines, parasite prevention, nutrition counseling.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with anesthetic monitoring. Same-day discharge for most.</p></div>
+ <div><h3>Urgent Sick Care</h3><p>Same-day appointments most weekdays. Call before 11 AM, visit before 5.</p></div>
+ </section>
+ <footer><p class=muted>8143 Ohio River Boulevard, Pittsburgh, PA, 15202 · </p></footer>
+ </div></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15372-c.html b/public/mockups/biz-15372-c.html
new file mode 100644
index 0000000..db7ea9f
--- /dev/null
+++ b/public/mockups/biz-15372-c.html
@@ -0,0 +1,44 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lora%3Awght%40400%3B700%3B900%26family%3DPublic%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0a0a0a; --paper:#fffaf3; --accent:#dc2626;
+ --accent2:#1f2937; --muted:#52525b; --rule:#fde2cf;
+ --h-font:'Lora', serif; --b-font:'Public Sans', system-ui, sans-serif;
+ --btn-r:10px; --card-r:12px; --card-shadow:0 4px 14px rgba(0,0,0,.06);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .bq-hero{padding:5em 4em;background:linear-gradient(180deg,#fde2cf,#fffaf3);text-align:center}
+ .bq-hero small{font-style:italic;font-family:var(--h-font);font-size:1.1em;color:var(--accent)}
+ .bq-hero h1{font-size:4em;margin:.3em 0 .5em;font-weight:400;letter-spacing:-.01em}
+ .bq-hero p{color:var(--muted);font-size:1.15em;max-width:560px;margin:0 auto 2em;line-height:1.7}
+ .bq-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 4em;max-width:1200px;margin:0 auto}
+ .bq-card{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:2em;text-align:center}
+ .bq-card .ico{font-size:2.4em;color:var(--accent2)}
+ .bq-card h3{font-style:italic;font-family:var(--h-font);margin:.5em 0;font-size:1.4em;font-weight:400}
+ .bq-card p{color:var(--muted);font-size:.95em;line-height:1.6;margin:0}
+</style></head><body>
+ <section class=bq-hero>
+ <small>pet store</small>
+ <h1>Aqua World</h1>
+ <p>A neighborhood veterinary practice that feels like home — in the best part of Pittsburgh.</p>
+ <a class=btn href=#book>Book a visit</a>
+ </section>
+ <section class=bq-cards>
+ <div class=bq-card><div class=ico>🐾</div><h3>Wellness</h3><p>Annual exams, vaccines, parasite prevention, nutrition.</p></div>
+ <div class=bq-card><div class=ico>🦴</div><h3>Dental</h3><p>Cleanings under anesthesia with continuous monitoring.</p></div>
+ <div class=bq-card><div class=ico>❤️</div><h3>Senior care</h3><p>A dedicated quarterly visit for pets 8+, with bloodwork.</p></div>
+ </section>
+ <footer style="padding:2em 4em;text-align:center;color:var(--muted)">8143 Ohio River Boulevard, Pittsburgh, PA, 15202 · </footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15377-a.html b/public/mockups/biz-15377-a.html
new file mode 100644
index 0000000..eea23d1
--- /dev/null
+++ b/public/mockups/biz-15377-a.html
@@ -0,0 +1,49 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Spectral%3Awght%40400%3B700%3B900%26family%3DWork%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1a1014; --paper:#fcf6f3; --accent:#9d2851;
+ --accent2:#3a4a3a; --muted:#8a6f78; --rule:#ebd7cf;
+ --h-font:'Spectral', serif; --b-font:'Work Sans', system-ui, sans-serif;
+ --btn-r:12px; --card-r:14px; --card-shadow:0 16px 40px rgba(0,0,0,.12);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{background:var(--paper)}
+ .luxe{padding:6em 5em;max-width:1100px;margin:0 auto;text-align:center}
+ .luxe small{font-family:var(--h-font);font-style:italic;font-size:1em;color:var(--accent);letter-spacing:.05em}
+ .luxe h1{font-size:5em;margin:.2em 0;font-weight:400;letter-spacing:-.02em;line-height:1}
+ .luxe .tag{font-family:var(--h-font);font-style:italic;font-size:1.4em;color:var(--muted);margin:.5em 0 2em}
+ .luxe .ornament{display:block;margin:1.5em auto;width:120px;height:1px;background:var(--accent)}
+ .luxe p.intro{max-width:640px;margin:0 auto 2.5em;font-size:1.1em;line-height:1.7;color:var(--ink)}
+ .luxe .cta{display:inline-block;border:1px solid var(--ink);padding:1.1em 2.4em;letter-spacing:.2em;text-transform:uppercase;font-size:.85em;font-weight:600;color:var(--ink)}
+ .pillars2{display:grid;grid-template-columns:repeat(3,1fr);max-width:1100px;margin:0 auto;gap:0;border-top:1px solid var(--rule)}
+ .pillars2 > div{padding:3em 2em;border-right:1px solid var(--rule);text-align:center}
+ .pillars2 > div:last-child{border:0}
+ .pillars2 h3{font-family:var(--h-font);font-style:italic;font-size:1.4em;font-weight:400;color:var(--accent)}
+</style></head><body>
+ <main class=luxe>
+ <small>established · State College</small>
+ <h1>Ritchie Veterinary Hospital</h1>
+ <div class=tag>A veterinary concierge for State College families.</div>
+ <span class=ornament></span>
+ <p class=intro>For thirty years, the same families have entrusted us with their pets — across generations, through every illness, every joy, every loss. We answer the phone ourselves. We remember what you fed your dog last summer. That is the practice we have built.</p>
+ <a class=cta href=#book>Become a client</a>
+ </main>
+ <section class=pillars2>
+ <div><h3>House calls</h3><p>For senior pets, end-of-life care, or pets who simply hate the car.</p></div>
+ <div><h3>Concierge medicine</h3><p>Direct cell-phone access to your DVM. No portal. No phone tree.</p></div>
+ <div><h3>Estate planning</h3><p>Pet-trust referrals, end-of-life planning, in-home euthanasia.</p></div>
+ </section>
+ <footer style="padding:3em;text-align:center;color:var(--muted);font-size:.85em">1335 North Atherton Street, State College, PA, 16803 · +1-814-231-2666</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15377-b.html b/public/mockups/biz-15377-b.html
new file mode 100644
index 0000000..5ac62d9
--- /dev/null
+++ b/public/mockups/biz-15377-b.html
@@ -0,0 +1,51 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lora%3Awght%40400%3B700%3B900%26family%3DPublic%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1a1a1a; --paper:#fafaf7; --accent:#0f4d3a;
+ --accent2:#c97a3e; --muted:#6b6b6b; --rule:#e6e1d6;
+ --h-font:'Lora', serif; --b-font:'Public Sans', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:inset 0 -3px 0 var(--accent2);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .com-hero{padding:5em 3em;text-align:center;background:radial-gradient(circle at 30% 30%,#e6e1d6 0%,#fafaf7 60%)}
+ .com-hero small{text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700;font-size:.85em}
+ .com-hero h1{font-size:3em;margin:.3em 0 .5em;font-weight:800}
+ .com-hero p{color:var(--muted);max-width:600px;margin:0 auto 2em}
+ .testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5em;padding:3em;max-width:1200px;margin:0 auto}
+ .quote{background:#fff;padding:2em;border-radius:var(--card-r);box-shadow:var(--card-shadow);position:relative}
+ .quote:before{content:'"';position:absolute;top:.1em;left:.5em;font-size:5em;color:var(--accent);opacity:.15;font-family:Georgia,serif}
+ .quote p{font-style:italic;margin:0 0 1em;color:var(--ink);line-height:1.5}
+ .quote .by{color:var(--muted);font-size:.85em}
+ .strip{background:var(--accent);color:var(--paper);padding:2em 3em;text-align:center}
+ .strip h2{margin:0 0 .5em;font-size:2em;color:var(--paper)}
+ .strip a{color:var(--paper);background:var(--accent2);padding:.7em 1.5em;border-radius:var(--btn-r);font-weight:700;display:inline-block;margin-top:.5em}
+</style></head><body>
+ <section class=com-hero>
+ <small>vet clinic · State College, PA</small>
+ <h1>Ritchie Veterinary Hospital</h1>
+ <p>Caring for State College's pets since 2008. We see the same families generation after generation — that's the kind of clinic we want to be.</p>
+ <a class=btn href=#book>Book a visit</a>
+ </section>
+ <section class=testimonials>
+ <div class=quote><p>They saved my dog's life. There's no other way to put it.</p><div class=by>— Maria G., State College</div></div>
+ <div class=quote><p>The first vet office where my cat doesn't shake. They actually understand cats.</p><div class=by>— Aaron P.</div></div>
+ <div class=quote><p>Honest about prices, kind to my anxious puppy, and they remember us by name.</p><div class=by>— Devon R.</div></div>
+ </section>
+ <section class=strip>
+ <h2>Same-day sick visits, every weekday</h2>
+ <a href=#>Check today's openings →</a>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted);text-align:center">1335 North Atherton Street, State College, PA, 16803 · +1-814-231-2666</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15377-c.html b/public/mockups/biz-15377-c.html
new file mode 100644
index 0000000..bfc9b63
--- /dev/null
+++ b/public/mockups/biz-15377-c.html
@@ -0,0 +1,51 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Playfair%2BDisplay%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0a0a14; --paper:#f0e8d8; --accent:#0a0a14;
+ --accent2:#c8a85e; --muted:#5d5e6e; --rule:#dccfb3;
+ --h-font:'Playfair Display', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .split{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}
+ .split-left{padding:5em 4em;background:var(--accent);color:var(--paper);display:flex;flex-direction:column;justify-content:center}
+ .split-right{padding:5em 4em;background:var(--paper);display:flex;flex-direction:column;justify-content:center}
+ .split-left h1{font-size:3.6em;font-weight:900;letter-spacing:-.03em;line-height:1}
+ .split-left p{opacity:.85;font-size:1.15em;margin:1em 0 2em;max-width:480px}
+ .split-right h2{font-size:1.8em;margin-bottom:1em}
+ .svc{padding:1em 0;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:center}
+ .svc:last-child{border:0}
+ .svc strong{color:var(--ink)}
+ .svc small{color:var(--muted)}
+ .svc a{color:var(--accent);font-weight:600}
+</style></head><body>
+ <main class=split>
+ <section class=split-left>
+ <small style="opacity:.7;letter-spacing:.15em;text-transform:uppercase;font-weight:700">vet clinic</small>
+ <h1>Ritchie Veterinary Hospital</h1>
+ <p>Modern veterinary medicine. Honest prices. Real people who remember your pet's name.</p>
+ <div><a class=btn-2 href=#book>Book online</a></div>
+ </section>
+ <section class=split-right>
+ <h2>What we do</h2>
+ <div class=svc><div><strong>Annual wellness</strong><br><small>Includes vaccines + parasite prevention</small></div><a href=#>$95</a></div>
+ <div class=svc><div><strong>Sick visit</strong><br><small>Same-day when we can fit you</small></div><a href=#>$110</a></div>
+ <div class=svc><div><strong>Dental cleaning</strong><br><small>Includes anesthesia + monitoring</small></div><a href=#>From $450</a></div>
+ <div class=svc><div><strong>Spay/Neuter</strong><br><small>Cats and dogs both</small></div><a href=#>From $225</a></div>
+ <hr class=divider>
+ <p class=muted>1335 North Atherton Street, State College, PA, 16803 · +1-814-231-2666</p>
+ </section>
+ </main></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15386-a.html b/public/mockups/biz-15386-a.html
new file mode 100644
index 0000000..cfb846e
--- /dev/null
+++ b/public/mockups/biz-15386-a.html
@@ -0,0 +1,65 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lora%3Awght%40400%3B700%3B900%26family%3DPublic%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0a0a0a; --paper:#fffaf3; --accent:#dc2626;
+ --accent2:#1f2937; --muted:#52525b; --rule:#fde2cf;
+ --h-font:'Lora', serif; --b-font:'Public Sans', system-ui, sans-serif;
+ --btn-r:6px; --card-r:8px; --card-shadow:none;
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .mc-nav{padding:1.4em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule);background:var(--paper);position:sticky;top:0;z-index:10}
+ .mc-nav strong{font-size:1.1em}
+ .mc-nav nav a{margin-left:1.5em;color:var(--ink);font-weight:500}
+ .mc-hero{padding:6em 3em 4em;text-align:left;max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr;gap:4em;align-items:end}
+ .mc-hero h1{font-size:3.8em;font-weight:800;letter-spacing:-.025em;line-height:1.05;margin:0}
+ .mc-hero p{font-size:1.2em;color:var(--muted);margin:1em 0;max-width:520px}
+ .mc-hero .actions{display:flex;gap:1em}
+ .mc-hero .badges{display:grid;grid-template-columns:1fr 1fr;gap:.7em;align-items:end}
+ .mc-hero .badge{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:.8em;text-align:center;font-size:.85em}
+ .mc-hero .badge strong{display:block;color:var(--accent);font-size:1.4em;font-family:var(--h-font);font-weight:900}
+ .mc-services{padding:4em 3em;background:var(--rule)}
+ .mc-services h2{font-size:1.8em;text-align:center;margin-bottom:2em}
+ .mc-services ul{list-style:none;padding:0;max-width:900px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:1em}
+ .mc-services li{background:var(--paper);padding:1.2em 1.5em;border-radius:var(--card-r);font-weight:600;display:flex;justify-content:space-between;align-items:center}
+ .mc-services li small{color:var(--muted);font-weight:400}
+</style></head><body>
+ <nav class=mc-nav><strong>Central Pennsylvania Veterinary Emergency Treatment Services</strong><nav><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a></nav><a class=btn href=#book>Book</a></nav>
+ <section class=mc-hero>
+ <div>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">vet clinic · State College, PA</small>
+ <h1>Modern medicine. Honest pricing. Real follow-through.</h1>
+ <p>The veterinary practice State College has been waiting for. Open 7 days. Online booking. Email reminders. Estimates before treatment.</p>
+ <div class=actions><a class=btn href=#book>Book in 60 seconds</a><a class=btn-ghost href=#tour>Take a tour →</a></div>
+ </div>
+ <div class=badges>
+ <div class=badge><strong>★ 4.9</strong>412 reviews</div>
+ <div class=badge><strong>7 days</strong>Open weekly</div>
+ <div class=badge><strong>$95</strong>Wellness exam</div>
+ <div class=badge><strong>24h</strong>Lab results</div>
+ </div>
+ </section>
+ <section class=mc-services>
+ <h2>Common visits</h2>
+ <ul>
+ <li>Annual wellness <small>$95</small></li>
+ <li>Sick visit <small>$110</small></li>
+ <li>Dental cleaning <small>From $450</small></li>
+ <li>Spay / neuter <small>From $225</small></li>
+ <li>Vaccine package <small>$140</small></li>
+ <li>Senior bloodwork <small>$185</small></li>
+ </ul>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">1522 Martin Street, State College, PA, 16803 · +1-814-237-4670</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15386-b.html b/public/mockups/biz-15386-b.html
new file mode 100644
index 0000000..11f4739
--- /dev/null
+++ b/public/mockups/biz-15386-b.html
@@ -0,0 +1,59 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito%3Awght%40400%3B700%3B900%26family%3DNunito%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#181818; --paper:#fff9f6; --accent:#d94545;
+ --accent2:#1d4ed8; --muted:#737373; --rule:#f0e3dc;
+ --h-font:'Nunito', serif; --b-font:'Nunito', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:inset 0 -3px 0 var(--accent2);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pagewrap{max-width:1100px;margin:0 auto;padding:3em 3em}
+ .masthead{border-top:6px solid var(--ink);border-bottom:1px solid var(--rule);padding:1em 0;display:flex;justify-content:space-between;align-items:baseline}
+ .masthead h1{font-size:2.4em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .masthead .date{color:var(--muted);font-size:.9em;letter-spacing:.1em;text-transform:uppercase}
+ .feature{display:grid;grid-template-columns:2fr 1fr;gap:3em;padding:3em 0;border-bottom:1px solid var(--rule)}
+ .feature h2{font-size:3.2em;line-height:1.05;font-weight:700;margin:0 0 .4em}
+ .feature .lead{font-size:1.2em;color:var(--ink);line-height:1.6}
+ .feature aside{border-left:3px solid var(--accent);padding-left:1.5em}
+ .feature aside h4{margin:0 0 .4em;font-size:1.1em;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}
+ .feature aside p{color:var(--muted);font-size:.95em;line-height:1.55}
+ .three{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 0}
+ .three h3{font-family:var(--h-font);font-size:1.5em;border-top:2px solid var(--accent);padding-top:.6em}
+</style></head><body>
+ <div class=pagewrap>
+ <header class=masthead>
+ <h1>Central Pennsylvania Veterinary Emergency Treatment Services</h1>
+ <span class=date>vet clinic · State College, PA</span>
+ </header>
+ <article class=feature>
+ <div>
+ <h2>The kind of veterinary care your grandparents trusted — with the technology your pet deserves now.</h2>
+ <p class=lead>For three decades, we've been the family practice State College families call when something matters. Walk-in welcomes, transparent pricing, and a waiting room that doesn't feel like one.</p>
+ <p><a class=btn href=#book>Book a visit →</a></p>
+ </div>
+ <aside>
+ <h4>What's new</h4>
+ <p><strong>Online booking is live.</strong> Pick your day, your doctor, and the time that fits — no phone tag.</p>
+ <p><strong>Senior pet program.</strong> Quarterly visits + bloodwork for pets 8+, $35/mo.</p>
+ </aside>
+ </article>
+ <section class=three>
+ <div><h3>General Practice</h3><p>Annual wellness visits, vaccines, parasite prevention, nutrition counseling.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with anesthetic monitoring. Same-day discharge for most.</p></div>
+ <div><h3>Urgent Sick Care</h3><p>Same-day appointments most weekdays. Call before 11 AM, visit before 5.</p></div>
+ </section>
+ <footer><p class=muted>1522 Martin Street, State College, PA, 16803 · +1-814-237-4670</p></footer>
+ </div></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15386-c.html b/public/mockups/biz-15386-c.html
new file mode 100644
index 0000000..0194d50
--- /dev/null
+++ b/public/mockups/biz-15386-c.html
@@ -0,0 +1,42 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Source%2BSerif%2BPro%3Awght%40400%3B700%3B900%26family%3DSource%2BSans%2BPro%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c1f2a; --paper:#f1f9fa; --accent:#0e7490;
+ --accent2:#f97316; --muted:#5d748a; --rule:#a5e5e5;
+ --h-font:'Source Serif Pro', serif; --b-font:'Source Sans Pro', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:inset 0 -3px 0 var(--accent2);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .cal-hero{padding:4em 3em;text-align:center;background:linear-gradient(160deg,#a5e5e5,#f1f9fa)}
+ .cal-hero h1{font-size:3.4em;font-weight:800;margin:0 0 .3em}
+ .cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5em;max-width:900px;margin:2em auto;padding:0 2em}
+ .cal-cell{background:#fff;padding:1em .5em;text-align:center;border-radius:var(--btn-r);box-shadow:var(--card-shadow);font-weight:600}
+ .cal-cell .dow{font-size:.7em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;display:block}
+ .cal-cell .num{font-size:1.3em;font-family:var(--h-font);color:var(--accent);font-weight:900}
+ .cal-cell.closed{opacity:.3}
+ .cal-cell.open:hover{background:var(--accent);color:var(--paper);cursor:pointer}
+ .cal-cell.open:hover .num,.cal-cell.open:hover .dow{color:var(--paper)}
+</style></head><body>
+ <section class=cal-hero>
+ <small style="letter-spacing:.15em;text-transform:uppercase;color:var(--accent2);font-weight:700">vet clinic · State College, PA</small>
+ <h1>Central Pennsylvania Veterinary Emergency Treatment Services</h1>
+ <p class=muted>Pick a day. We'll text you the openings.</p>
+ <div class=cal-grid>
+ <div class="cal-cell open"><span class=dow>Mon</span><span class=num>4</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>5</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>6</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>7</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>8</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>9</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>10</span></div><div class="cal-cell open"><span class=dow>Mon</span><span class=num>11</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>12</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>13</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>14</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>15</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>16</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>17</span></div>
+ </div>
+ <a class=btn href=#book>Continue →</a>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">1522 Martin Street, State College, PA, 16803 · +1-814-237-4670</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15391-a.html b/public/mockups/biz-15391-a.html
new file mode 100644
index 0000000..f2fbd38
--- /dev/null
+++ b/public/mockups/biz-15391-a.html
@@ -0,0 +1,45 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=EB%2BGaramond%3Awght%40400%3B700%3B900%26family%3DKarla%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1a221a; --paper:#f6f9f1; --accent:#3a6d3a;
+ --accent2:#a14d3d; --muted:#6c7766; --rule:#dde5d3;
+ --h-font:'EB Garamond', serif; --b-font:'Karla', system-ui, sans-serif;
+ --btn-r:12px; --card-r:14px; --card-shadow:0 16px 40px rgba(0,0,0,.12);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .hero{padding:7em 4em 6em;background:linear-gradient(140deg,#f6f9f1,#dde5d3);text-align:left}
+ .hero small{text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700;font-size:.9em}
+ .hero h1{font-size:4em;margin:.3em 0;line-height:1.05;font-weight:900}
+ .hero p{font-size:1.25em;color:var(--muted);max-width:600px;margin:1em 0 2em}
+ .hero .btns{display:flex;gap:1em;align-items:center}
+ .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:var(--ink);color:var(--paper)}
+ .grid > div{padding:3em 2.5em;border-right:1px solid rgba(255,255,255,.1)}
+ .grid h3{font-size:1.4em;margin-bottom:.4em}
+ .grid p{color:rgba(255,255,255,.7);margin:0}
+ .foot{padding:2em 4em;background:var(--accent);color:var(--paper);text-align:center;font-weight:600}
+</style></head><body>
+ <section class=hero>
+ <small>shelter · Altoona, PA</small>
+ <h1>Central Pennsylvania Humane Society</h1>
+ <p>Veterinary care designed around your pet — and your day. Same-week appointments, transparent pricing, kind people.</p>
+ <div class=btns><a class=btn href=#book>Book online</a><a class=btn-ghost href=#about>Meet the team →</a></div>
+ </section>
+ <section class=grid>
+ <div><h3>Wellness</h3><p>Annual exams, vaccinations, and proactive care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house, with same-day discharge for most procedures.</p></div>
+ <div><h3>Urgent Care</h3><p>Same-day sick visits — call us before going to the ER.</p></div>
+ </section>
+ <footer class=foot>Central Pennsylvania Humane Society · 1837 East Pleasant Valley Boulevard, Altoona, PA, 16602 · +1-814-942-5402</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15391-b.html b/public/mockups/biz-15391-b.html
new file mode 100644
index 0000000..22df899
--- /dev/null
+++ b/public/mockups/biz-15391-b.html
@@ -0,0 +1,59 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Libre%2BBaskerville%3Awght%40400%3B700%3B900%26family%3DOpen%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c1f2a; --paper:#f1f9fa; --accent:#0e7490;
+ --accent2:#f97316; --muted:#5d748a; --rule:#a5e5e5;
+ --h-font:'Libre Baskerville', serif; --b-font:'Open Sans', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pagewrap{max-width:1100px;margin:0 auto;padding:3em 3em}
+ .masthead{border-top:6px solid var(--ink);border-bottom:1px solid var(--rule);padding:1em 0;display:flex;justify-content:space-between;align-items:baseline}
+ .masthead h1{font-size:2.4em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .masthead .date{color:var(--muted);font-size:.9em;letter-spacing:.1em;text-transform:uppercase}
+ .feature{display:grid;grid-template-columns:2fr 1fr;gap:3em;padding:3em 0;border-bottom:1px solid var(--rule)}
+ .feature h2{font-size:3.2em;line-height:1.05;font-weight:700;margin:0 0 .4em}
+ .feature .lead{font-size:1.2em;color:var(--ink);line-height:1.6}
+ .feature aside{border-left:3px solid var(--accent);padding-left:1.5em}
+ .feature aside h4{margin:0 0 .4em;font-size:1.1em;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}
+ .feature aside p{color:var(--muted);font-size:.95em;line-height:1.55}
+ .three{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 0}
+ .three h3{font-family:var(--h-font);font-size:1.5em;border-top:2px solid var(--accent);padding-top:.6em}
+</style></head><body>
+ <div class=pagewrap>
+ <header class=masthead>
+ <h1>Central Pennsylvania Humane Society</h1>
+ <span class=date>shelter · Altoona, PA</span>
+ </header>
+ <article class=feature>
+ <div>
+ <h2>The kind of veterinary care your grandparents trusted — with the technology your pet deserves now.</h2>
+ <p class=lead>For three decades, we've been the family practice Altoona families call when something matters. Walk-in welcomes, transparent pricing, and a waiting room that doesn't feel like one.</p>
+ <p><a class=btn href=#book>Book a visit →</a></p>
+ </div>
+ <aside>
+ <h4>What's new</h4>
+ <p><strong>Online booking is live.</strong> Pick your day, your doctor, and the time that fits — no phone tag.</p>
+ <p><strong>Senior pet program.</strong> Quarterly visits + bloodwork for pets 8+, $35/mo.</p>
+ </aside>
+ </article>
+ <section class=three>
+ <div><h3>General Practice</h3><p>Annual wellness visits, vaccines, parasite prevention, nutrition counseling.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with anesthetic monitoring. Same-day discharge for most.</p></div>
+ <div><h3>Urgent Sick Care</h3><p>Same-day appointments most weekdays. Call before 11 AM, visit before 5.</p></div>
+ </section>
+ <footer><p class=muted>1837 East Pleasant Valley Boulevard, Altoona, PA, 16602 · +1-814-942-5402</p></footer>
+ </div></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15391-c.html b/public/mockups/biz-15391-c.html
new file mode 100644
index 0000000..0fa3e08
--- /dev/null
+++ b/public/mockups/biz-15391-c.html
@@ -0,0 +1,44 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1e1b3a; --paper:#faf5ff; --accent:#7c3aed;
+ --accent2:#d97706; --muted:#6b6989; --rule:#e9d5ff;
+ --h-font:'Inter', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .bq-hero{padding:5em 4em;background:linear-gradient(180deg,#e9d5ff,#faf5ff);text-align:center}
+ .bq-hero small{font-style:italic;font-family:var(--h-font);font-size:1.1em;color:var(--accent)}
+ .bq-hero h1{font-size:4em;margin:.3em 0 .5em;font-weight:400;letter-spacing:-.01em}
+ .bq-hero p{color:var(--muted);font-size:1.15em;max-width:560px;margin:0 auto 2em;line-height:1.7}
+ .bq-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 4em;max-width:1200px;margin:0 auto}
+ .bq-card{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:2em;text-align:center}
+ .bq-card .ico{font-size:2.4em;color:var(--accent2)}
+ .bq-card h3{font-style:italic;font-family:var(--h-font);margin:.5em 0;font-size:1.4em;font-weight:400}
+ .bq-card p{color:var(--muted);font-size:.95em;line-height:1.6;margin:0}
+</style></head><body>
+ <section class=bq-hero>
+ <small>shelter</small>
+ <h1>Central Pennsylvania Humane Society</h1>
+ <p>A neighborhood veterinary practice that feels like home — in the best part of Altoona.</p>
+ <a class=btn href=#book>Book a visit</a>
+ </section>
+ <section class=bq-cards>
+ <div class=bq-card><div class=ico>🐾</div><h3>Wellness</h3><p>Annual exams, vaccines, parasite prevention, nutrition.</p></div>
+ <div class=bq-card><div class=ico>🦴</div><h3>Dental</h3><p>Cleanings under anesthesia with continuous monitoring.</p></div>
+ <div class=bq-card><div class=ico>❤️</div><h3>Senior care</h3><p>A dedicated quarterly visit for pets 8+, with bloodwork.</p></div>
+ </section>
+ <footer style="padding:2em 4em;text-align:center;color:var(--muted)">1837 East Pleasant Valley Boulevard, Altoona, PA, 16602 · +1-814-942-5402</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15413-a.html b/public/mockups/biz-15413-a.html
new file mode 100644
index 0000000..48d139d
--- /dev/null
+++ b/public/mockups/biz-15413-a.html
@@ -0,0 +1,56 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Libre%2BBaskerville%3Awght%40400%3B700%3B900%26family%3DOpen%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c1810; --paper:#fffaef; --accent:#a16207;
+ --accent2:#0c4a6e; --muted:#7d6e5d; --rule:#fee9b0;
+ --h-font:'Libre Baskerville', serif; --b-font:'Open Sans', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:inset 0 -3px 0 var(--accent2);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{font-feature-settings:'kern','liga'}
+ .auth-hero{padding:5em 4em 4em;border-bottom:6px solid var(--accent)}
+ .auth-hero h1{font-size:3.4em;font-weight:800;letter-spacing:-.025em;line-height:1.05;max-width:14ch}
+ .auth-hero .credentials{margin:1em 0 1.5em;font-size:1.1em;color:var(--muted)}
+ .auth-hero .credentials span{display:inline-block;background:var(--accent);color:var(--paper);padding:.2em .6em;border-radius:var(--btn-r);font-size:.85em;font-weight:700;margin-right:.5em;margin-bottom:.4em}
+ .specs{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ink);color:var(--paper)}
+ .specs > div{padding:2em;border-right:1px solid rgba(255,255,255,.1)}
+ .specs strong{display:block;font-size:2.2em;font-family:var(--h-font);color:var(--accent2);font-weight:900}
+ .specs span{display:block;color:rgba(255,255,255,.7);font-size:.9em;margin-top:.3em;text-transform:uppercase;letter-spacing:.1em}
+ .pillars{padding:4em;display:grid;grid-template-columns:repeat(2,1fr);gap:3em}
+ .pillars h3{font-size:1.6em;border-bottom:1px solid var(--rule);padding-bottom:.5em}
+ .pillars p{color:var(--muted);line-height:1.6}
+</style></head><body>
+ <header class=auth-hero>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">vet clinic · , PA</small>
+ <h1>Cranberry Cat Clinic</h1>
+ <div class=credentials>
+ <span>AAHA Accredited</span><span>24-Hour ICU</span><span>Board-Certified Specialists</span>
+ </div>
+ <a class=btn href=#refer>Refer a patient →</a>
+ </header>
+ <section class=specs>
+ <div><strong>15K+</strong><span>patients seen / yr</span></div>
+ <div><strong>9</strong><span>specialties on staff</span></div>
+ <div><strong>24/7</strong><span>emergency coverage</span></div>
+ <div><strong>14 yrs</strong><span>median DVM tenure</span></div>
+ </section>
+ <section class=pillars>
+ <div><h3>Internal Medicine</h3><p>Endocrine, gastrointestinal, hematology — diagnostics in-house, treatment plans coordinated with your primary vet.</p></div>
+ <div><h3>Cardiology</h3><p>Echocardiography, holter monitoring, BNP testing. Same-week appointments for complex cases.</p></div>
+ <div><h3>Surgery</h3><p>Soft-tissue, orthopedic, and neurosurgical procedures. Board-certified surgeons on every case.</p></div>
+ <div><h3>Oncology</h3><p>Chemotherapy, radiation referrals, palliative-care consults. We call you within 24h of every diagnosis.</p></div>
+ </section>
+ <footer style="padding:2em 4em;background:var(--ink);color:rgba(255,255,255,.7)">PA · </footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15413-b.html b/public/mockups/biz-15413-b.html
new file mode 100644
index 0000000..d50d22b
--- /dev/null
+++ b/public/mockups/biz-15413-b.html
@@ -0,0 +1,49 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Playfair%2BDisplay%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1f1729; --paper:#fbf7f4; --accent:#5b1e6e;
+ --accent2:#d4843e; --muted:#7d6b88; --rule:#ece2dc;
+ --h-font:'Playfair Display', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:10px; --card-r:12px; --card-shadow:0 4px 14px rgba(0,0,0,.06);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{background:var(--paper)}
+ .luxe{padding:6em 5em;max-width:1100px;margin:0 auto;text-align:center}
+ .luxe small{font-family:var(--h-font);font-style:italic;font-size:1em;color:var(--accent);letter-spacing:.05em}
+ .luxe h1{font-size:5em;margin:.2em 0;font-weight:400;letter-spacing:-.02em;line-height:1}
+ .luxe .tag{font-family:var(--h-font);font-style:italic;font-size:1.4em;color:var(--muted);margin:.5em 0 2em}
+ .luxe .ornament{display:block;margin:1.5em auto;width:120px;height:1px;background:var(--accent)}
+ .luxe p.intro{max-width:640px;margin:0 auto 2.5em;font-size:1.1em;line-height:1.7;color:var(--ink)}
+ .luxe .cta{display:inline-block;border:1px solid var(--ink);padding:1.1em 2.4em;letter-spacing:.2em;text-transform:uppercase;font-size:.85em;font-weight:600;color:var(--ink)}
+ .pillars2{display:grid;grid-template-columns:repeat(3,1fr);max-width:1100px;margin:0 auto;gap:0;border-top:1px solid var(--rule)}
+ .pillars2 > div{padding:3em 2em;border-right:1px solid var(--rule);text-align:center}
+ .pillars2 > div:last-child{border:0}
+ .pillars2 h3{font-family:var(--h-font);font-style:italic;font-size:1.4em;font-weight:400;color:var(--accent)}
+</style></head><body>
+ <main class=luxe>
+ <small>established · 1989</small>
+ <h1>Cranberry Cat Clinic</h1>
+ <div class=tag>A veterinary concierge for discerning families.</div>
+ <span class=ornament></span>
+ <p class=intro>For thirty years, the same families have entrusted us with their pets — across generations, through every illness, every joy, every loss. We answer the phone ourselves. We remember what you fed your dog last summer. That is the practice we have built.</p>
+ <a class=cta href=#book>Become a client</a>
+ </main>
+ <section class=pillars2>
+ <div><h3>House calls</h3><p>For senior pets, end-of-life care, or pets who simply hate the car.</p></div>
+ <div><h3>Concierge medicine</h3><p>Direct cell-phone access to your DVM. No portal. No phone tree.</p></div>
+ <div><h3>Estate planning</h3><p>Pet-trust referrals, end-of-life planning, in-home euthanasia.</p></div>
+ </section>
+ <footer style="padding:3em;text-align:center;color:var(--muted);font-size:.85em">PA · </footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15413-c.html b/public/mockups/biz-15413-c.html
new file mode 100644
index 0000000..c6e9201
--- /dev/null
+++ b/public/mockups/biz-15413-c.html
@@ -0,0 +1,63 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Manrope%3Awght%40400%3B700%3B900%26family%3DManrope%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0f172a; --paper:#f8fafc; --accent:#0ea5e9;
+ --accent2:#f97316; --muted:#64748b; --rule:#e2e8f0;
+ --h-font:'Manrope', serif; --b-font:'Manrope', system-ui, sans-serif;
+ --btn-r:12px; --card-r:14px; --card-shadow:0 16px 40px rgba(0,0,0,.12);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .news{max-width:1100px;margin:0 auto;padding:2em 3em}
+ .news .nameplate{border-top:6px solid var(--ink);border-bottom:3px solid var(--ink);padding:1em 0;text-align:center}
+ .news .nameplate h1{font-size:3em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .news .nameplate small{display:block;color:var(--muted);font-size:.9em;text-transform:uppercase;letter-spacing:.2em;margin-top:.5em}
+ .news .lead-story{padding:2em 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:2fr 1fr;gap:3em}
+ .news .lead-story h2{font-size:2.6em;font-weight:900;line-height:1.05;margin:0 0 .5em}
+ .news .lead-story .sub{font-size:1.1em;color:var(--muted);font-style:italic}
+ .news .sidebar h3{font-size:1.2em;text-transform:uppercase;letter-spacing:.1em;border-bottom:2px solid var(--accent);padding-bottom:.4em}
+ .news .sidebar ul{list-style:none;padding:0;margin:0}
+ .news .sidebar li{padding:.6em 0;border-bottom:1px dotted var(--rule);font-size:.95em}
+ .news .col3{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:2em 0;border-bottom:1px solid var(--rule)}
+ .news .col3 h3{font-size:1.3em;border-bottom:1px solid var(--rule);padding-bottom:.4em}
+</style></head><body>
+ <article class=news>
+ <header class=nameplate>
+ <h1>Cranberry Cat Clinic</h1>
+ <small>vet clinic · , PA · Monday, May 4, 2026</small>
+ </header>
+ <section class=lead-story>
+ <div>
+ <h2>New: Same-day appointments are back, all weekdays.</h2>
+ <p class=sub>After a six-month staffing rebuild, we've reopened walk-in sick visits Monday through Friday. Call before 11 AM, see your DVM before 5.</p>
+ <a class=btn href=#book>Book today's visit</a>
+ </div>
+ <aside class=sidebar>
+ <h3>This week</h3>
+ <ul>
+ <li>Vaccine clinic — Saturday 9-12</li>
+ <li>Senior wellness day — every Wed</li>
+ <li>Free puppy meet-up — first Sat/mo</li>
+ <li>End-of-life consults — by appt</li>
+ </ul>
+ </aside>
+ </section>
+ <section class=col3>
+ <div><h3>General Practice</h3><p>Annual wellness exams, vaccinations, and personalized care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with continuous anesthetic monitoring.</p></div>
+ <div><h3>Specialty Referrals</h3><p>Cardiology, dermatology, oncology — we know the right specialists.</p></div>
+ </section>
+ <footer style="padding:2em 0;color:var(--muted)">PA · </footer>
+ </article></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15417-a.html b/public/mockups/biz-15417-a.html
new file mode 100644
index 0000000..92e0375
--- /dev/null
+++ b/public/mockups/biz-15417-a.html
@@ -0,0 +1,42 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Playfair%2BDisplay%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1a1014; --paper:#fcf6f3; --accent:#9d2851;
+ --accent2:#3a4a3a; --muted:#8a6f78; --rule:#ebd7cf;
+ --h-font:'Playfair Display', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:6px; --card-r:8px; --card-shadow:none;
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .cal-hero{padding:4em 3em;text-align:center;background:linear-gradient(160deg,#ebd7cf,#fcf6f3)}
+ .cal-hero h1{font-size:3.4em;font-weight:800;margin:0 0 .3em}
+ .cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5em;max-width:900px;margin:2em auto;padding:0 2em}
+ .cal-cell{background:#fff;padding:1em .5em;text-align:center;border-radius:var(--btn-r);box-shadow:var(--card-shadow);font-weight:600}
+ .cal-cell .dow{font-size:.7em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;display:block}
+ .cal-cell .num{font-size:1.3em;font-family:var(--h-font);color:var(--accent);font-weight:900}
+ .cal-cell.closed{opacity:.3}
+ .cal-cell.open:hover{background:var(--accent);color:var(--paper);cursor:pointer}
+ .cal-cell.open:hover .num,.cal-cell.open:hover .dow{color:var(--paper)}
+</style></head><body>
+ <section class=cal-hero>
+ <small style="letter-spacing:.15em;text-transform:uppercase;color:var(--accent2);font-weight:700">shelter · Conshohocken, PA</small>
+ <h1>Montgomery County SPCA</h1>
+ <p class=muted>Pick a day. We'll text you the openings.</p>
+ <div class=cal-grid>
+ <div class="cal-cell open"><span class=dow>Mon</span><span class=num>4</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>5</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>6</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>7</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>8</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>9</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>10</span></div><div class="cal-cell open"><span class=dow>Mon</span><span class=num>11</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>12</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>13</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>14</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>15</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>16</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>17</span></div>
+ </div>
+ <a class=btn href=#book>Continue →</a>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">19 East Ridge Pike, Conshohocken, PA, 19428 · +1 610-825-0111</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15417-b.html b/public/mockups/biz-15417-b.html
new file mode 100644
index 0000000..a3dc2aa
--- /dev/null
+++ b/public/mockups/biz-15417-b.html
@@ -0,0 +1,65 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito%3Awght%40400%3B700%3B900%26family%3DNunito%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#000000; --paper:#fffaf3; --accent:#000000;
+ --accent2:#a16207; --muted:#525252; --rule:#e5e0d8;
+ --h-font:'Nunito', serif; --b-font:'Nunito', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .mc-nav{padding:1.4em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule);background:var(--paper);position:sticky;top:0;z-index:10}
+ .mc-nav strong{font-size:1.1em}
+ .mc-nav nav a{margin-left:1.5em;color:var(--ink);font-weight:500}
+ .mc-hero{padding:6em 3em 4em;text-align:left;max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr;gap:4em;align-items:end}
+ .mc-hero h1{font-size:3.8em;font-weight:800;letter-spacing:-.025em;line-height:1.05;margin:0}
+ .mc-hero p{font-size:1.2em;color:var(--muted);margin:1em 0;max-width:520px}
+ .mc-hero .actions{display:flex;gap:1em}
+ .mc-hero .badges{display:grid;grid-template-columns:1fr 1fr;gap:.7em;align-items:end}
+ .mc-hero .badge{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:.8em;text-align:center;font-size:.85em}
+ .mc-hero .badge strong{display:block;color:var(--accent);font-size:1.4em;font-family:var(--h-font);font-weight:900}
+ .mc-services{padding:4em 3em;background:var(--rule)}
+ .mc-services h2{font-size:1.8em;text-align:center;margin-bottom:2em}
+ .mc-services ul{list-style:none;padding:0;max-width:900px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:1em}
+ .mc-services li{background:var(--paper);padding:1.2em 1.5em;border-radius:var(--card-r);font-weight:600;display:flex;justify-content:space-between;align-items:center}
+ .mc-services li small{color:var(--muted);font-weight:400}
+</style></head><body>
+ <nav class=mc-nav><strong>Montgomery County SPCA</strong><nav><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a></nav><a class=btn href=#book>Book</a></nav>
+ <section class=mc-hero>
+ <div>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">shelter · Conshohocken, PA</small>
+ <h1>Modern medicine. Honest pricing. Real follow-through.</h1>
+ <p>The veterinary practice Conshohocken has been waiting for. Open 7 days. Online booking. Email reminders. Estimates before treatment.</p>
+ <div class=actions><a class=btn href=#book>Book in 60 seconds</a><a class=btn-ghost href=#tour>Take a tour →</a></div>
+ </div>
+ <div class=badges>
+ <div class=badge><strong>★ 4.9</strong>412 reviews</div>
+ <div class=badge><strong>7 days</strong>Open weekly</div>
+ <div class=badge><strong>$95</strong>Wellness exam</div>
+ <div class=badge><strong>24h</strong>Lab results</div>
+ </div>
+ </section>
+ <section class=mc-services>
+ <h2>Common visits</h2>
+ <ul>
+ <li>Annual wellness <small>$95</small></li>
+ <li>Sick visit <small>$110</small></li>
+ <li>Dental cleaning <small>From $450</small></li>
+ <li>Spay / neuter <small>From $225</small></li>
+ <li>Vaccine package <small>$140</small></li>
+ <li>Senior bloodwork <small>$185</small></li>
+ </ul>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">19 East Ridge Pike, Conshohocken, PA, 19428 · +1 610-825-0111</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15417-c.html b/public/mockups/biz-15417-c.html
new file mode 100644
index 0000000..4bbb241
--- /dev/null
+++ b/public/mockups/biz-15417-c.html
@@ -0,0 +1,56 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Source%2BSerif%2BPro%3Awght%40400%3B700%3B900%26family%3DSource%2BSans%2BPro%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#221913; --paper:#faf2e8; --accent:#5a3920;
+ --accent2:#c97a3e; --muted:#7d6e5d; --rule:#ead9c1;
+ --h-font:'Source Serif Pro', serif; --b-font:'Source Sans Pro', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{font-feature-settings:'kern','liga'}
+ .auth-hero{padding:5em 4em 4em;border-bottom:6px solid var(--accent)}
+ .auth-hero h1{font-size:3.4em;font-weight:800;letter-spacing:-.025em;line-height:1.05;max-width:14ch}
+ .auth-hero .credentials{margin:1em 0 1.5em;font-size:1.1em;color:var(--muted)}
+ .auth-hero .credentials span{display:inline-block;background:var(--accent);color:var(--paper);padding:.2em .6em;border-radius:var(--btn-r);font-size:.85em;font-weight:700;margin-right:.5em;margin-bottom:.4em}
+ .specs{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ink);color:var(--paper)}
+ .specs > div{padding:2em;border-right:1px solid rgba(255,255,255,.1)}
+ .specs strong{display:block;font-size:2.2em;font-family:var(--h-font);color:var(--accent2);font-weight:900}
+ .specs span{display:block;color:rgba(255,255,255,.7);font-size:.9em;margin-top:.3em;text-transform:uppercase;letter-spacing:.1em}
+ .pillars{padding:4em;display:grid;grid-template-columns:repeat(2,1fr);gap:3em}
+ .pillars h3{font-size:1.6em;border-bottom:1px solid var(--rule);padding-bottom:.5em}
+ .pillars p{color:var(--muted);line-height:1.6}
+</style></head><body>
+ <header class=auth-hero>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">shelter · Conshohocken, PA</small>
+ <h1>Montgomery County SPCA</h1>
+ <div class=credentials>
+ <span>AAHA Accredited</span><span>24-Hour ICU</span><span>Board-Certified Specialists</span>
+ </div>
+ <a class=btn href=#refer>Refer a patient →</a>
+ </header>
+ <section class=specs>
+ <div><strong>15K+</strong><span>patients seen / yr</span></div>
+ <div><strong>9</strong><span>specialties on staff</span></div>
+ <div><strong>24/7</strong><span>emergency coverage</span></div>
+ <div><strong>14 yrs</strong><span>median DVM tenure</span></div>
+ </section>
+ <section class=pillars>
+ <div><h3>Internal Medicine</h3><p>Endocrine, gastrointestinal, hematology — diagnostics in-house, treatment plans coordinated with your primary vet.</p></div>
+ <div><h3>Cardiology</h3><p>Echocardiography, holter monitoring, BNP testing. Same-week appointments for complex cases.</p></div>
+ <div><h3>Surgery</h3><p>Soft-tissue, orthopedic, and neurosurgical procedures. Board-certified surgeons on every case.</p></div>
+ <div><h3>Oncology</h3><p>Chemotherapy, radiation referrals, palliative-care consults. We call you within 24h of every diagnosis.</p></div>
+ </section>
+ <footer style="padding:2em 4em;background:var(--ink);color:rgba(255,255,255,.7)">19 East Ridge Pike, Conshohocken, PA, 19428 · +1 610-825-0111</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15442-a.html b/public/mockups/biz-15442-a.html
new file mode 100644
index 0000000..e077a2f
--- /dev/null
+++ b/public/mockups/biz-15442-a.html
@@ -0,0 +1,50 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Manrope%3Awght%40400%3B700%3B900%26family%3DManrope%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#171515; --paper:#f5f5f4; --accent:#44403c;
+ --accent2:#a18267; --muted:#78716c; --rule:#e7e5e4;
+ --h-font:'Manrope', serif; --b-font:'Manrope', system-ui, sans-serif;
+ --btn-r:0; --card-r:0; --card-shadow:none;
+ --divider:solid 2px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .nv{padding:1.5em 3em;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between}
+ .st-hero{padding:4em 3em;text-align:center}
+ .st-hero h1{font-size:3em;font-weight:800;margin:0 0 .3em}
+ .st-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:0;border-top:1px solid var(--rule)}
+ .st-tile{padding:3em 2em;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);transition:background .2s}
+ .st-tile:nth-child(4n){border-right:0}
+ .st-tile:hover{background:var(--rule)}
+ .st-tile .num{font-family:var(--h-font);font-size:1.5em;color:var(--accent);font-weight:900;display:block;margin-bottom:.5em}
+ .st-tile h3{font-size:1.2em;margin:.3em 0}
+ .st-tile p{color:var(--muted);font-size:.92em;line-height:1.5}
+</style></head><body>
+ <nav class=nv><strong>Creekview Veterinary Hospital</strong><a class=btn href=#book>Book</a></nav>
+ <section class=st-hero>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">vet clinic · Coopersburg, PA</small>
+ <h1>Care for the whole life of your pet.</h1>
+ <p class=muted>From the first puppy visit to the last quiet day.</p>
+ </section>
+ <section class=st-tiles>
+ <div class=st-tile><span class=num>01</span><h3>Puppy / kitten</h3><p>First exam, vaccine series, parasite plan.</p></div>
+ <div class=st-tile><span class=num>02</span><h3>Wellness</h3><p>Annual exams, dental check, nutrition.</p></div>
+ <div class=st-tile><span class=num>03</span><h3>Surgery</h3><p>Spay/neuter, soft-tissue, dental procedures.</p></div>
+ <div class=st-tile><span class=num>04</span><h3>Sick visits</h3><p>Same-day when we can fit you.</p></div>
+ <div class=st-tile><span class=num>05</span><h3>Diagnostics</h3><p>Bloodwork, imaging, ultrasound, in-house.</p></div>
+ <div class=st-tile><span class=num>06</span><h3>Senior care</h3><p>Quarterly check-ins for pets 8+.</p></div>
+ <div class=st-tile><span class=num>07</span><h3>Behavior</h3><p>Training referrals, anxiety meds, consults.</p></div>
+ <div class=st-tile><span class=num>08</span><h3>End of life</h3><p>In-home euthanasia + grief support.</p></div>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted)">629 West State Street, Coopersburg, PA, 18036 · +14848639099</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15442-b.html b/public/mockups/biz-15442-b.html
new file mode 100644
index 0000000..7574388
--- /dev/null
+++ b/public/mockups/biz-15442-b.html
@@ -0,0 +1,45 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Playfair%2BDisplay%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1e1b3a; --paper:#faf5ff; --accent:#7c3aed;
+ --accent2:#d97706; --muted:#6b6989; --rule:#e9d5ff;
+ --h-font:'Playfair Display', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .hero{padding:7em 4em 6em;background:linear-gradient(140deg,#faf5ff,#e9d5ff);text-align:left}
+ .hero small{text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700;font-size:.9em}
+ .hero h1{font-size:4em;margin:.3em 0;line-height:1.05;font-weight:900}
+ .hero p{font-size:1.25em;color:var(--muted);max-width:600px;margin:1em 0 2em}
+ .hero .btns{display:flex;gap:1em;align-items:center}
+ .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:var(--ink);color:var(--paper)}
+ .grid > div{padding:3em 2.5em;border-right:1px solid rgba(255,255,255,.1)}
+ .grid h3{font-size:1.4em;margin-bottom:.4em}
+ .grid p{color:rgba(255,255,255,.7);margin:0}
+ .foot{padding:2em 4em;background:var(--accent);color:var(--paper);text-align:center;font-weight:600}
+</style></head><body>
+ <section class=hero>
+ <small>vet clinic · Coopersburg, PA</small>
+ <h1>Creekview Veterinary Hospital</h1>
+ <p>Veterinary care designed around your pet — and your day. Same-week appointments, transparent pricing, kind people.</p>
+ <div class=btns><a class=btn href=#book>Book online</a><a class=btn-ghost href=#about>Meet the team →</a></div>
+ </section>
+ <section class=grid>
+ <div><h3>Wellness</h3><p>Annual exams, vaccinations, and proactive care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house, with same-day discharge for most procedures.</p></div>
+ <div><h3>Urgent Care</h3><p>Same-day sick visits — call us before going to the ER.</p></div>
+ </section>
+ <footer class=foot>Creekview Veterinary Hospital · 629 West State Street, Coopersburg, PA, 18036 · +14848639099</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-15442-c.html b/public/mockups/biz-15442-c.html
new file mode 100644
index 0000000..9853455
--- /dev/null
+++ b/public/mockups/biz-15442-c.html
@@ -0,0 +1,49 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1a221a; --paper:#f6f9f1; --accent:#3a6d3a;
+ --accent2:#a14d3d; --muted:#6c7766; --rule:#dde5d3;
+ --h-font:'Inter', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:10px; --card-r:12px; --card-shadow:0 4px 14px rgba(0,0,0,.06);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .fam-hero{padding:5em 4em;background:var(--paper);max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:4em;align-items:center}
+ .fam-hero h1{font-size:3.2em;font-weight:700;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .fam-hero .lead{font-size:1.2em;color:var(--ink);line-height:1.6;max-width:480px}
+ .fam-hero .stats{margin-top:1.5em;display:flex;gap:2em}
+ .fam-hero .stats div strong{display:block;font-size:1.8em;color:var(--accent);font-family:var(--h-font);font-weight:900}
+ .fam-hero .stats div span{font-size:.85em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}
+ .fam-hero .photo{aspect-ratio:1/1;background:var(--rule);border-radius:var(--card-r);background-image:radial-gradient(circle at 50% 30%, #a14d3d 0%, #dde5d3 70%)}
+ .fam-strip{background:var(--accent);color:var(--paper);padding:3em 4em;text-align:center}
+ .fam-strip h2{font-size:2em;color:var(--paper);margin:0 0 .3em}
+ .fam-strip p{opacity:.9;max-width:600px;margin:0 auto 1.5em}
+</style></head><body>
+ <section class=fam-hero>
+ <div>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">vet clinic</small>
+ <h1>Creekview Veterinary Hospital</h1>
+ <p class=lead>The veterinary practice Coopersburg families have trusted for three generations. We were here when your dog was a puppy. We'll be here when she's grey.</p>
+ <div class=stats><div><strong>34 yrs</strong><span>in practice</span></div><div><strong>4</strong><span>generations served</span></div><div><strong>★ 4.9</strong><span>from 800+</span></div></div>
+ <p style="margin-top:2em"><a class=btn href=#book>Book a visit</a> <a class=btn-ghost href=#about>Meet our team</a></p>
+ </div>
+ <div class=photo></div>
+ </section>
+ <section class=fam-strip>
+ <h2>Same-week appointments, every week.</h2>
+ <p>Most clients book within 3 days. Emergency? Call us — we take same-day sick visits Monday-Friday.</p>
+ <a class=btn-2 href=#book>See this week's openings →</a>
+ </section>
+ <footer style="padding:2em 4em;text-align:center;color:var(--muted)">629 West State Street, Coopersburg, PA, 18036 · +14848639099</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-16460-a.html b/public/mockups/biz-16460-a.html
new file mode 100644
index 0000000..cc3a6b5
--- /dev/null
+++ b/public/mockups/biz-16460-a.html
@@ -0,0 +1,42 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Merriweather%3Awght%40400%3B700%3B900%26family%3DIBM%2BPlex%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c1c0a; --paper:#fffce8; --accent:#a16207;
+ --accent2:#1e3a8a; --muted:#7d7d5c; --rule:#fde68a;
+ --h-font:'Merriweather', serif; --b-font:'IBM Plex Sans', system-ui, sans-serif;
+ --btn-r:12px; --card-r:14px; --card-shadow:0 16px 40px rgba(0,0,0,.12);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .cal-hero{padding:4em 3em;text-align:center;background:linear-gradient(160deg,#fde68a,#fffce8)}
+ .cal-hero h1{font-size:3.4em;font-weight:800;margin:0 0 .3em}
+ .cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5em;max-width:900px;margin:2em auto;padding:0 2em}
+ .cal-cell{background:#fff;padding:1em .5em;text-align:center;border-radius:var(--btn-r);box-shadow:var(--card-shadow);font-weight:600}
+ .cal-cell .dow{font-size:.7em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;display:block}
+ .cal-cell .num{font-size:1.3em;font-family:var(--h-font);color:var(--accent);font-weight:900}
+ .cal-cell.closed{opacity:.3}
+ .cal-cell.open:hover{background:var(--accent);color:var(--paper);cursor:pointer}
+ .cal-cell.open:hover .num,.cal-cell.open:hover .dow{color:var(--paper)}
+</style></head><body>
+ <section class=cal-hero>
+ <small style="letter-spacing:.15em;text-transform:uppercase;color:var(--accent2);font-weight:700">vet clinic · North Wilkesboro, NC</small>
+ <h1>Wilkes Veterinary Hospital</h1>
+ <p class=muted>Pick a day. We'll text you the openings.</p>
+ <div class=cal-grid>
+ <div class="cal-cell open"><span class=dow>Mon</span><span class=num>4</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>5</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>6</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>7</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>8</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>9</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>10</span></div><div class="cal-cell open"><span class=dow>Mon</span><span class=num>11</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>12</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>13</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>14</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>15</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>16</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>17</span></div>
+ </div>
+ <a class=btn href=#book>Continue →</a>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">1007 2nd Street, North Wilkesboro, NC, 28659 · +13366671109</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-16460-b.html b/public/mockups/biz-16460-b.html
new file mode 100644
index 0000000..177b627
--- /dev/null
+++ b/public/mockups/biz-16460-b.html
@@ -0,0 +1,59 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Manrope%3Awght%40400%3B700%3B900%26family%3DManrope%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#171515; --paper:#f5f5f4; --accent:#44403c;
+ --accent2:#a18267; --muted:#78716c; --rule:#e7e5e4;
+ --h-font:'Manrope', serif; --b-font:'Manrope', system-ui, sans-serif;
+ --btn-r:999px; --card-r:18px; --card-shadow:0 2px 8px rgba(0,0,0,.05);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pagewrap{max-width:1100px;margin:0 auto;padding:3em 3em}
+ .masthead{border-top:6px solid var(--ink);border-bottom:1px solid var(--rule);padding:1em 0;display:flex;justify-content:space-between;align-items:baseline}
+ .masthead h1{font-size:2.4em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .masthead .date{color:var(--muted);font-size:.9em;letter-spacing:.1em;text-transform:uppercase}
+ .feature{display:grid;grid-template-columns:2fr 1fr;gap:3em;padding:3em 0;border-bottom:1px solid var(--rule)}
+ .feature h2{font-size:3.2em;line-height:1.05;font-weight:700;margin:0 0 .4em}
+ .feature .lead{font-size:1.2em;color:var(--ink);line-height:1.6}
+ .feature aside{border-left:3px solid var(--accent);padding-left:1.5em}
+ .feature aside h4{margin:0 0 .4em;font-size:1.1em;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}
+ .feature aside p{color:var(--muted);font-size:.95em;line-height:1.55}
+ .three{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 0}
+ .three h3{font-family:var(--h-font);font-size:1.5em;border-top:2px solid var(--accent);padding-top:.6em}
+</style></head><body>
+ <div class=pagewrap>
+ <header class=masthead>
+ <h1>Wilkes Veterinary Hospital</h1>
+ <span class=date>vet clinic · North Wilkesboro, NC</span>
+ </header>
+ <article class=feature>
+ <div>
+ <h2>The kind of veterinary care your grandparents trusted — with the technology your pet deserves now.</h2>
+ <p class=lead>For three decades, we've been the family practice North Wilkesboro families call when something matters. Walk-in welcomes, transparent pricing, and a waiting room that doesn't feel like one.</p>
+ <p><a class=btn href=#book>Book a visit →</a></p>
+ </div>
+ <aside>
+ <h4>What's new</h4>
+ <p><strong>Online booking is live.</strong> Pick your day, your doctor, and the time that fits — no phone tag.</p>
+ <p><strong>Senior pet program.</strong> Quarterly visits + bloodwork for pets 8+, $35/mo.</p>
+ </aside>
+ </article>
+ <section class=three>
+ <div><h3>General Practice</h3><p>Annual wellness visits, vaccines, parasite prevention, nutrition counseling.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with anesthetic monitoring. Same-day discharge for most.</p></div>
+ <div><h3>Urgent Sick Care</h3><p>Same-day appointments most weekdays. Call before 11 AM, visit before 5.</p></div>
+ </section>
+ <footer><p class=muted>1007 2nd Street, North Wilkesboro, NC, 28659 · +13366671109</p></footer>
+ </div></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-16460-c.html b/public/mockups/biz-16460-c.html
new file mode 100644
index 0000000..bf86a39
--- /dev/null
+++ b/public/mockups/biz-16460-c.html
@@ -0,0 +1,63 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Cormorant%2BGaramond%3Awght%40400%3B700%3B900%26family%3DLato%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1e293b; --paper:#f1f5f9; --accent:#334155;
+ --accent2:#0ea5e9; --muted:#64748b; --rule:#cbd5e1;
+ --h-font:'Cormorant Garamond', serif; --b-font:'Lato', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .news{max-width:1100px;margin:0 auto;padding:2em 3em}
+ .news .nameplate{border-top:6px solid var(--ink);border-bottom:3px solid var(--ink);padding:1em 0;text-align:center}
+ .news .nameplate h1{font-size:3em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .news .nameplate small{display:block;color:var(--muted);font-size:.9em;text-transform:uppercase;letter-spacing:.2em;margin-top:.5em}
+ .news .lead-story{padding:2em 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:2fr 1fr;gap:3em}
+ .news .lead-story h2{font-size:2.6em;font-weight:900;line-height:1.05;margin:0 0 .5em}
+ .news .lead-story .sub{font-size:1.1em;color:var(--muted);font-style:italic}
+ .news .sidebar h3{font-size:1.2em;text-transform:uppercase;letter-spacing:.1em;border-bottom:2px solid var(--accent);padding-bottom:.4em}
+ .news .sidebar ul{list-style:none;padding:0;margin:0}
+ .news .sidebar li{padding:.6em 0;border-bottom:1px dotted var(--rule);font-size:.95em}
+ .news .col3{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:2em 0;border-bottom:1px solid var(--rule)}
+ .news .col3 h3{font-size:1.3em;border-bottom:1px solid var(--rule);padding-bottom:.4em}
+</style></head><body>
+ <article class=news>
+ <header class=nameplate>
+ <h1>Wilkes Veterinary Hospital</h1>
+ <small>vet clinic · North Wilkesboro, NC · Monday, May 4, 2026</small>
+ </header>
+ <section class=lead-story>
+ <div>
+ <h2>New: Same-day appointments are back, all weekdays.</h2>
+ <p class=sub>After a six-month staffing rebuild, we've reopened walk-in sick visits Monday through Friday. Call before 11 AM, see your DVM before 5.</p>
+ <a class=btn href=#book>Book today's visit</a>
+ </div>
+ <aside class=sidebar>
+ <h3>This week</h3>
+ <ul>
+ <li>Vaccine clinic — Saturday 9-12</li>
+ <li>Senior wellness day — every Wed</li>
+ <li>Free puppy meet-up — first Sat/mo</li>
+ <li>End-of-life consults — by appt</li>
+ </ul>
+ </aside>
+ </section>
+ <section class=col3>
+ <div><h3>General Practice</h3><p>Annual wellness exams, vaccinations, and personalized care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with continuous anesthetic monitoring.</p></div>
+ <div><h3>Specialty Referrals</h3><p>Cardiology, dermatology, oncology — we know the right specialists.</p></div>
+ </section>
+ <footer style="padding:2em 0;color:var(--muted)">1007 2nd Street, North Wilkesboro, NC, 28659 · +13366671109</footer>
+ </article></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-16483-a.html b/public/mockups/biz-16483-a.html
new file mode 100644
index 0000000..b7af9f0
--- /dev/null
+++ b/public/mockups/biz-16483-a.html
@@ -0,0 +1,45 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Space%2BGrotesk%3Awght%40400%3B700%3B900%26family%3DSpace%2BGrotesk%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1e1b3a; --paper:#faf5ff; --accent:#7c3aed;
+ --accent2:#d97706; --muted:#6b6989; --rule:#e9d5ff;
+ --h-font:'Space Grotesk', serif; --b-font:'Space Grotesk', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pl-hero{padding:5em 3em;background:var(--accent);color:var(--paper);position:relative;overflow:hidden}
+ .pl-hero:after{content:"🐶 🐱 🐾 🦴 🐾 🐶 🐱 🦴";position:absolute;top:0;right:-20%;font-size:14em;opacity:.05;line-height:1;letter-spacing:.5em}
+ .pl-hero h1{font-size:4.5em;font-weight:900;letter-spacing:-.03em;line-height:1;max-width:14ch;margin:0 0 .3em;color:var(--paper)}
+ .pl-hero p{font-size:1.3em;opacity:.9;max-width:600px;margin:1em 0 2em}
+ .pl-hero .btn{background:var(--accent2);color:#fff}
+ .pl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5em;padding:3em;max-width:1200px;margin:0 auto}
+ .pl-card{background:#fff;padding:2em;border-radius:var(--card-r);box-shadow:var(--card-shadow);text-align:center}
+ .pl-card .emoji{font-size:3em;line-height:1}
+ .pl-card h3{margin:.4em 0;font-size:1.3em}
+ .pl-card p{margin:0;color:var(--muted);font-size:.95em}
+</style></head><body>
+ <section class=pl-hero>
+ <small style="opacity:.7;font-weight:700;letter-spacing:.15em;text-transform:uppercase">vet clinic</small>
+ <h1>Hill Creek Veterinary Hospital</h1>
+ <p>The Pittsboro vet your dog actually wants to visit. Treats, head scratches, and zero waiting-room shaking.</p>
+ <a class=btn href=#book>Book online →</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>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">23 Rectory Street, Pittsboro, NC, 27312 · +1-919-542-1141</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-16483-b.html b/public/mockups/biz-16483-b.html
new file mode 100644
index 0000000..ff1717d
--- /dev/null
+++ b/public/mockups/biz-16483-b.html
@@ -0,0 +1,63 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Source%2BSerif%2BPro%3Awght%40400%3B700%3B900%26family%3DSource%2BSans%2BPro%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c0c1c; --paper:#f4f3f6; --accent:#581c87;
+ --accent2:#737373; --muted:#787078; --rule:#d8d5e0;
+ --h-font:'Source Serif Pro', serif; --b-font:'Source Sans Pro', system-ui, sans-serif;
+ --btn-r:10px; --card-r:12px; --card-shadow:0 4px 14px rgba(0,0,0,.06);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .news{max-width:1100px;margin:0 auto;padding:2em 3em}
+ .news .nameplate{border-top:6px solid var(--ink);border-bottom:3px solid var(--ink);padding:1em 0;text-align:center}
+ .news .nameplate h1{font-size:3em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .news .nameplate small{display:block;color:var(--muted);font-size:.9em;text-transform:uppercase;letter-spacing:.2em;margin-top:.5em}
+ .news .lead-story{padding:2em 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:2fr 1fr;gap:3em}
+ .news .lead-story h2{font-size:2.6em;font-weight:900;line-height:1.05;margin:0 0 .5em}
+ .news .lead-story .sub{font-size:1.1em;color:var(--muted);font-style:italic}
+ .news .sidebar h3{font-size:1.2em;text-transform:uppercase;letter-spacing:.1em;border-bottom:2px solid var(--accent);padding-bottom:.4em}
+ .news .sidebar ul{list-style:none;padding:0;margin:0}
+ .news .sidebar li{padding:.6em 0;border-bottom:1px dotted var(--rule);font-size:.95em}
+ .news .col3{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:2em 0;border-bottom:1px solid var(--rule)}
+ .news .col3 h3{font-size:1.3em;border-bottom:1px solid var(--rule);padding-bottom:.4em}
+</style></head><body>
+ <article class=news>
+ <header class=nameplate>
+ <h1>Hill Creek Veterinary Hospital</h1>
+ <small>vet clinic · Pittsboro, NC · Monday, May 4, 2026</small>
+ </header>
+ <section class=lead-story>
+ <div>
+ <h2>New: Same-day appointments are back, all weekdays.</h2>
+ <p class=sub>After a six-month staffing rebuild, we've reopened walk-in sick visits Monday through Friday. Call before 11 AM, see your DVM before 5.</p>
+ <a class=btn href=#book>Book today's visit</a>
+ </div>
+ <aside class=sidebar>
+ <h3>This week</h3>
+ <ul>
+ <li>Vaccine clinic — Saturday 9-12</li>
+ <li>Senior wellness day — every Wed</li>
+ <li>Free puppy meet-up — first Sat/mo</li>
+ <li>End-of-life consults — by appt</li>
+ </ul>
+ </aside>
+ </section>
+ <section class=col3>
+ <div><h3>General Practice</h3><p>Annual wellness exams, vaccinations, and personalized care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with continuous anesthetic monitoring.</p></div>
+ <div><h3>Specialty Referrals</h3><p>Cardiology, dermatology, oncology — we know the right specialists.</p></div>
+ </section>
+ <footer style="padding:2em 0;color:var(--muted)">23 Rectory Street, Pittsboro, NC, 27312 · +1-919-542-1141</footer>
+ </article></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-16483-c.html b/public/mockups/biz-16483-c.html
new file mode 100644
index 0000000..a711eea
--- /dev/null
+++ b/public/mockups/biz-16483-c.html
@@ -0,0 +1,65 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Spectral%3Awght%40400%3B700%3B900%26family%3DWork%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1f1818; --paper:#fdf8f3; --accent:#a01a3a;
+ --accent2:#345b3b; --muted:#807070; --rule:#ebd5d0;
+ --h-font:'Spectral', serif; --b-font:'Work Sans', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:inset 0 -3px 0 var(--accent2);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .mc-nav{padding:1.4em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule);background:var(--paper);position:sticky;top:0;z-index:10}
+ .mc-nav strong{font-size:1.1em}
+ .mc-nav nav a{margin-left:1.5em;color:var(--ink);font-weight:500}
+ .mc-hero{padding:6em 3em 4em;text-align:left;max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr;gap:4em;align-items:end}
+ .mc-hero h1{font-size:3.8em;font-weight:800;letter-spacing:-.025em;line-height:1.05;margin:0}
+ .mc-hero p{font-size:1.2em;color:var(--muted);margin:1em 0;max-width:520px}
+ .mc-hero .actions{display:flex;gap:1em}
+ .mc-hero .badges{display:grid;grid-template-columns:1fr 1fr;gap:.7em;align-items:end}
+ .mc-hero .badge{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:.8em;text-align:center;font-size:.85em}
+ .mc-hero .badge strong{display:block;color:var(--accent);font-size:1.4em;font-family:var(--h-font);font-weight:900}
+ .mc-services{padding:4em 3em;background:var(--rule)}
+ .mc-services h2{font-size:1.8em;text-align:center;margin-bottom:2em}
+ .mc-services ul{list-style:none;padding:0;max-width:900px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:1em}
+ .mc-services li{background:var(--paper);padding:1.2em 1.5em;border-radius:var(--card-r);font-weight:600;display:flex;justify-content:space-between;align-items:center}
+ .mc-services li small{color:var(--muted);font-weight:400}
+</style></head><body>
+ <nav class=mc-nav><strong>Hill Creek Veterinary Hospital</strong><nav><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a></nav><a class=btn href=#book>Book</a></nav>
+ <section class=mc-hero>
+ <div>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">vet clinic · Pittsboro, NC</small>
+ <h1>Modern medicine. Honest pricing. Real follow-through.</h1>
+ <p>The veterinary practice Pittsboro has been waiting for. Open 7 days. Online booking. Email reminders. Estimates before treatment.</p>
+ <div class=actions><a class=btn href=#book>Book in 60 seconds</a><a class=btn-ghost href=#tour>Take a tour →</a></div>
+ </div>
+ <div class=badges>
+ <div class=badge><strong>★ 4.9</strong>412 reviews</div>
+ <div class=badge><strong>7 days</strong>Open weekly</div>
+ <div class=badge><strong>$95</strong>Wellness exam</div>
+ <div class=badge><strong>24h</strong>Lab results</div>
+ </div>
+ </section>
+ <section class=mc-services>
+ <h2>Common visits</h2>
+ <ul>
+ <li>Annual wellness <small>$95</small></li>
+ <li>Sick visit <small>$110</small></li>
+ <li>Dental cleaning <small>From $450</small></li>
+ <li>Spay / neuter <small>From $225</small></li>
+ <li>Vaccine package <small>$140</small></li>
+ <li>Senior bloodwork <small>$185</small></li>
+ </ul>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">23 Rectory Street, Pittsboro, NC, 27312 · +1-919-542-1141</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18438-a.html b/public/mockups/biz-18438-a.html
new file mode 100644
index 0000000..2b0ea85
--- /dev/null
+++ b/public/mockups/biz-18438-a.html
@@ -0,0 +1,39 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Source%2BSerif%2BPro%3Awght%40400%3B700%3B900%26family%3DSource%2BSans%2BPro%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1f1d18; --paper:#f6f1e9; --accent:#7a8767;
+ --accent2:#a85e2c; --muted:#7c7665; --rule:#dfd5c3;
+ --h-font:'Source Serif Pro', serif; --b-font:'Source Sans Pro', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{display:flex;flex-direction:column;min-height:100vh}
+ .min-nav{padding:2em 4em;display:flex;justify-content:space-between;align-items:center;font-size:.9em;letter-spacing:.05em}
+ .min-nav strong{font-size:1em;font-weight:600}
+ .min-nav a{margin-left:1.5em;color:var(--ink)}
+ .min-hero{flex:1;padding:6em 4em;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:900px;margin:0 auto}
+ .min-hero h1{font-size:5em;font-weight:300;letter-spacing:-.04em;line-height:1.05;margin:0 0 .3em}
+ .min-hero p{font-size:1.2em;color:var(--muted);max-width:520px;margin:1em 0 2em;line-height:1.7;font-weight:300}
+ .min-hero .arrow{font-size:1em;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:.2em}
+ .min-foot{padding:2em 4em;border-top:1px solid var(--rule);display:flex;justify-content:space-between;color:var(--muted);font-size:.85em}
+</style></head><body>
+ <header class=min-nav><strong>Sun Valley Animal Shelter</strong><div><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a><a href=#>Book</a></div></header>
+ <main class=min-hero>
+ <h1>Sun Valley Animal Shelter.</h1>
+ <p>A small, deliberately quiet veterinary practice in Glendale.<br>By appointment.</p>
+ <a class=arrow href=#book>Request an appointment →</a>
+ </main>
+ <footer class=min-foot><span>7150 North 110th Avenue, Glendale, AZ, 85307</span><span>+1-623-872-7941</span></footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18438-b.html b/public/mockups/biz-18438-b.html
new file mode 100644
index 0000000..3085f26
--- /dev/null
+++ b/public/mockups/biz-18438-b.html
@@ -0,0 +1,45 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Spectral%3Awght%40400%3B700%3B900%26family%3DWork%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1f1729; --paper:#fbf7f4; --accent:#5b1e6e;
+ --accent2:#d4843e; --muted:#7d6b88; --rule:#ece2dc;
+ --h-font:'Spectral', serif; --b-font:'Work Sans', system-ui, sans-serif;
+ --btn-r:4px; --card-r:4px; --card-shadow:0 2px 4px rgba(0,0,0,.04);
+ --divider:solid 1px var(--accent);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pl-hero{padding:5em 3em;background:var(--accent);color:var(--paper);position:relative;overflow:hidden}
+ .pl-hero:after{content:"🐶 🐱 🐾 🦴 🐾 🐶 🐱 🦴";position:absolute;top:0;right:-20%;font-size:14em;opacity:.05;line-height:1;letter-spacing:.5em}
+ .pl-hero h1{font-size:4.5em;font-weight:900;letter-spacing:-.03em;line-height:1;max-width:14ch;margin:0 0 .3em;color:var(--paper)}
+ .pl-hero p{font-size:1.3em;opacity:.9;max-width:600px;margin:1em 0 2em}
+ .pl-hero .btn{background:var(--accent2);color:#fff}
+ .pl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5em;padding:3em;max-width:1200px;margin:0 auto}
+ .pl-card{background:#fff;padding:2em;border-radius:var(--card-r);box-shadow:var(--card-shadow);text-align:center}
+ .pl-card .emoji{font-size:3em;line-height:1}
+ .pl-card h3{margin:.4em 0;font-size:1.3em}
+ .pl-card p{margin:0;color:var(--muted);font-size:.95em}
+</style></head><body>
+ <section class=pl-hero>
+ <small style="opacity:.7;font-weight:700;letter-spacing:.15em;text-transform:uppercase">shelter</small>
+ <h1>Sun Valley Animal Shelter</h1>
+ <p>The Glendale vet your dog actually wants to visit. Treats, head scratches, and zero waiting-room shaking.</p>
+ <a class=btn href=#book>Book online →</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>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">7150 North 110th Avenue, Glendale, AZ, 85307 · +1-623-872-7941</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18438-c.html b/public/mockups/biz-18438-c.html
new file mode 100644
index 0000000..8cc0fd9
--- /dev/null
+++ b/public/mockups/biz-18438-c.html
@@ -0,0 +1,44 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Libre%2BBaskerville%3Awght%40400%3B700%3B900%26family%3DOpen%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1a221a; --paper:#f6f9f1; --accent:#3a6d3a;
+ --accent2:#a14d3d; --muted:#6c7766; --rule:#dde5d3;
+ --h-font:'Libre Baskerville', serif; --b-font:'Open Sans', system-ui, sans-serif;
+ --btn-r:0; --card-r:0; --card-shadow:none;
+ --divider:solid 2px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .bq-hero{padding:5em 4em;background:linear-gradient(180deg,#dde5d3,#f6f9f1);text-align:center}
+ .bq-hero small{font-style:italic;font-family:var(--h-font);font-size:1.1em;color:var(--accent)}
+ .bq-hero h1{font-size:4em;margin:.3em 0 .5em;font-weight:400;letter-spacing:-.01em}
+ .bq-hero p{color:var(--muted);font-size:1.15em;max-width:560px;margin:0 auto 2em;line-height:1.7}
+ .bq-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 4em;max-width:1200px;margin:0 auto}
+ .bq-card{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:2em;text-align:center}
+ .bq-card .ico{font-size:2.4em;color:var(--accent2)}
+ .bq-card h3{font-style:italic;font-family:var(--h-font);margin:.5em 0;font-size:1.4em;font-weight:400}
+ .bq-card p{color:var(--muted);font-size:.95em;line-height:1.6;margin:0}
+</style></head><body>
+ <section class=bq-hero>
+ <small>shelter</small>
+ <h1>Sun Valley Animal Shelter</h1>
+ <p>A neighborhood veterinary practice that feels like home — in the best part of Glendale.</p>
+ <a class=btn href=#book>Book a visit</a>
+ </section>
+ <section class=bq-cards>
+ <div class=bq-card><div class=ico>🐾</div><h3>Wellness</h3><p>Annual exams, vaccines, parasite prevention, nutrition.</p></div>
+ <div class=bq-card><div class=ico>🦴</div><h3>Dental</h3><p>Cleanings under anesthesia with continuous monitoring.</p></div>
+ <div class=bq-card><div class=ico>❤️</div><h3>Senior care</h3><p>A dedicated quarterly visit for pets 8+, with bloodwork.</p></div>
+ </section>
+ <footer style="padding:2em 4em;text-align:center;color:var(--muted)">7150 North 110th Avenue, Glendale, AZ, 85307 · +1-623-872-7941</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18445-a.html b/public/mockups/biz-18445-a.html
new file mode 100644
index 0000000..509ba91
--- /dev/null
+++ b/public/mockups/biz-18445-a.html
@@ -0,0 +1,51 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Cormorant%2BGaramond%3Awght%40400%3B700%3B900%26family%3DLato%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c1810; --paper:#fffaef; --accent:#a16207;
+ --accent2:#0c4a6e; --muted:#7d6e5d; --rule:#fee9b0;
+ --h-font:'Cormorant Garamond', serif; --b-font:'Lato', system-ui, sans-serif;
+ --btn-r:0; --card-r:0; --card-shadow:none;
+ --divider:solid 2px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .split{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}
+ .split-left{padding:5em 4em;background:var(--accent);color:var(--paper);display:flex;flex-direction:column;justify-content:center}
+ .split-right{padding:5em 4em;background:var(--paper);display:flex;flex-direction:column;justify-content:center}
+ .split-left h1{font-size:3.6em;font-weight:900;letter-spacing:-.03em;line-height:1}
+ .split-left p{opacity:.85;font-size:1.15em;margin:1em 0 2em;max-width:480px}
+ .split-right h2{font-size:1.8em;margin-bottom:1em}
+ .svc{padding:1em 0;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:center}
+ .svc:last-child{border:0}
+ .svc strong{color:var(--ink)}
+ .svc small{color:var(--muted)}
+ .svc a{color:var(--accent);font-weight:600}
+</style></head><body>
+ <main class=split>
+ <section class=split-left>
+ <small style="opacity:.7;letter-spacing:.15em;text-transform:uppercase;font-weight:700">vet clinic</small>
+ <h1>Oro Valley Pet Clinic</h1>
+ <p>Modern veterinary medicine. Honest prices. Real people who remember your pet's name.</p>
+ <div><a class=btn-2 href=#book>Book online</a></div>
+ </section>
+ <section class=split-right>
+ <h2>What we do</h2>
+ <div class=svc><div><strong>Annual wellness</strong><br><small>Includes vaccines + parasite prevention</small></div><a href=#>$95</a></div>
+ <div class=svc><div><strong>Sick visit</strong><br><small>Same-day when we can fit you</small></div><a href=#>$110</a></div>
+ <div class=svc><div><strong>Dental cleaning</strong><br><small>Includes anesthesia + monitoring</small></div><a href=#>From $450</a></div>
+ <div class=svc><div><strong>Spay/Neuter</strong><br><small>Cats and dogs both</small></div><a href=#>From $225</a></div>
+ <hr class=divider>
+ <p class=muted>12995 North Oracle Road, Oro Valley, AZ, 85739 · +1-520-825-2700</p>
+ </section>
+ </main></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18445-b.html b/public/mockups/biz-18445-b.html
new file mode 100644
index 0000000..7382669
--- /dev/null
+++ b/public/mockups/biz-18445-b.html
@@ -0,0 +1,42 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito%3Awght%40400%3B700%3B900%26family%3DNunito%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#171515; --paper:#f5f5f4; --accent:#44403c;
+ --accent2:#a18267; --muted:#78716c; --rule:#e7e5e4;
+ --h-font:'Nunito', serif; --b-font:'Nunito', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:inset 0 -3px 0 var(--accent2);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .cal-hero{padding:4em 3em;text-align:center;background:linear-gradient(160deg,#e7e5e4,#f5f5f4)}
+ .cal-hero h1{font-size:3.4em;font-weight:800;margin:0 0 .3em}
+ .cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5em;max-width:900px;margin:2em auto;padding:0 2em}
+ .cal-cell{background:#fff;padding:1em .5em;text-align:center;border-radius:var(--btn-r);box-shadow:var(--card-shadow);font-weight:600}
+ .cal-cell .dow{font-size:.7em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;display:block}
+ .cal-cell .num{font-size:1.3em;font-family:var(--h-font);color:var(--accent);font-weight:900}
+ .cal-cell.closed{opacity:.3}
+ .cal-cell.open:hover{background:var(--accent);color:var(--paper);cursor:pointer}
+ .cal-cell.open:hover .num,.cal-cell.open:hover .dow{color:var(--paper)}
+</style></head><body>
+ <section class=cal-hero>
+ <small style="letter-spacing:.15em;text-transform:uppercase;color:var(--accent2);font-weight:700">vet clinic · Oro Valley, AZ</small>
+ <h1>Oro Valley Pet Clinic</h1>
+ <p class=muted>Pick a day. We'll text you the openings.</p>
+ <div class=cal-grid>
+ <div class="cal-cell open"><span class=dow>Mon</span><span class=num>4</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>5</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>6</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>7</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>8</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>9</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>10</span></div><div class="cal-cell open"><span class=dow>Mon</span><span class=num>11</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>12</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>13</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>14</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>15</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>16</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>17</span></div>
+ </div>
+ <a class=btn href=#book>Continue →</a>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">12995 North Oracle Road, Oro Valley, AZ, 85739 · +1-520-825-2700</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18445-c.html b/public/mockups/biz-18445-c.html
new file mode 100644
index 0000000..6a382b5
--- /dev/null
+++ b/public/mockups/biz-18445-c.html
@@ -0,0 +1,44 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Playfair%2BDisplay%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1e293b; --paper:#f1f5f9; --accent:#334155;
+ --accent2:#0ea5e9; --muted:#64748b; --rule:#cbd5e1;
+ --h-font:'Playfair Display', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:6px; --card-r:8px; --card-shadow:none;
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .bq-hero{padding:5em 4em;background:linear-gradient(180deg,#cbd5e1,#f1f5f9);text-align:center}
+ .bq-hero small{font-style:italic;font-family:var(--h-font);font-size:1.1em;color:var(--accent)}
+ .bq-hero h1{font-size:4em;margin:.3em 0 .5em;font-weight:400;letter-spacing:-.01em}
+ .bq-hero p{color:var(--muted);font-size:1.15em;max-width:560px;margin:0 auto 2em;line-height:1.7}
+ .bq-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 4em;max-width:1200px;margin:0 auto}
+ .bq-card{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:2em;text-align:center}
+ .bq-card .ico{font-size:2.4em;color:var(--accent2)}
+ .bq-card h3{font-style:italic;font-family:var(--h-font);margin:.5em 0;font-size:1.4em;font-weight:400}
+ .bq-card p{color:var(--muted);font-size:.95em;line-height:1.6;margin:0}
+</style></head><body>
+ <section class=bq-hero>
+ <small>vet clinic</small>
+ <h1>Oro Valley Pet Clinic</h1>
+ <p>A neighborhood veterinary practice that feels like home — in the best part of Oro Valley.</p>
+ <a class=btn href=#book>Book a visit</a>
+ </section>
+ <section class=bq-cards>
+ <div class=bq-card><div class=ico>🐾</div><h3>Wellness</h3><p>Annual exams, vaccines, parasite prevention, nutrition.</p></div>
+ <div class=bq-card><div class=ico>🦴</div><h3>Dental</h3><p>Cleanings under anesthesia with continuous monitoring.</p></div>
+ <div class=bq-card><div class=ico>❤️</div><h3>Senior care</h3><p>A dedicated quarterly visit for pets 8+, with bloodwork.</p></div>
+ </section>
+ <footer style="padding:2em 4em;text-align:center;color:var(--muted)">12995 North Oracle Road, Oro Valley, AZ, 85739 · +1-520-825-2700</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18447-a.html b/public/mockups/biz-18447-a.html
new file mode 100644
index 0000000..0c80e4c
--- /dev/null
+++ b/public/mockups/biz-18447-a.html
@@ -0,0 +1,42 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Manrope%3Awght%40400%3B700%3B900%26family%3DManrope%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c1f2a; --paper:#f1f9fa; --accent:#0e7490;
+ --accent2:#f97316; --muted:#5d748a; --rule:#a5e5e5;
+ --h-font:'Manrope', serif; --b-font:'Manrope', system-ui, sans-serif;
+ --btn-r:10px; --card-r:12px; --card-shadow:0 4px 14px rgba(0,0,0,.06);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .cal-hero{padding:4em 3em;text-align:center;background:linear-gradient(160deg,#a5e5e5,#f1f9fa)}
+ .cal-hero h1{font-size:3.4em;font-weight:800;margin:0 0 .3em}
+ .cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5em;max-width:900px;margin:2em auto;padding:0 2em}
+ .cal-cell{background:#fff;padding:1em .5em;text-align:center;border-radius:var(--btn-r);box-shadow:var(--card-shadow);font-weight:600}
+ .cal-cell .dow{font-size:.7em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;display:block}
+ .cal-cell .num{font-size:1.3em;font-family:var(--h-font);color:var(--accent);font-weight:900}
+ .cal-cell.closed{opacity:.3}
+ .cal-cell.open:hover{background:var(--accent);color:var(--paper);cursor:pointer}
+ .cal-cell.open:hover .num,.cal-cell.open:hover .dow{color:var(--paper)}
+</style></head><body>
+ <section class=cal-hero>
+ <small style="letter-spacing:.15em;text-transform:uppercase;color:var(--accent2);font-weight:700">pet store · , AZ</small>
+ <h1>Choice Pet Market</h1>
+ <p class=muted>Pick a day. We'll text you the openings.</p>
+ <div class=cal-grid>
+ <div class="cal-cell open"><span class=dow>Mon</span><span class=num>4</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>5</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>6</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>7</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>8</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>9</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>10</span></div><div class="cal-cell open"><span class=dow>Mon</span><span class=num>11</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>12</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>13</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>14</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>15</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>16</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>17</span></div>
+ </div>
+ <a class=btn href=#book>Continue →</a>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">AZ · +1-602-652-9000</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18447-b.html b/public/mockups/biz-18447-b.html
new file mode 100644
index 0000000..29e4238
--- /dev/null
+++ b/public/mockups/biz-18447-b.html
@@ -0,0 +1,49 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Source%2BSerif%2BPro%3Awght%40400%3B700%3B900%26family%3DSource%2BSans%2BPro%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#221913; --paper:#faf2e8; --accent:#5a3920;
+ --accent2:#c97a3e; --muted:#7d6e5d; --rule:#ead9c1;
+ --h-font:'Source Serif Pro', serif; --b-font:'Source Sans Pro', system-ui, sans-serif;
+ --btn-r:0; --card-r:0; --card-shadow:none;
+ --divider:solid 2px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{background:var(--paper)}
+ .luxe{padding:6em 5em;max-width:1100px;margin:0 auto;text-align:center}
+ .luxe small{font-family:var(--h-font);font-style:italic;font-size:1em;color:var(--accent);letter-spacing:.05em}
+ .luxe h1{font-size:5em;margin:.2em 0;font-weight:400;letter-spacing:-.02em;line-height:1}
+ .luxe .tag{font-family:var(--h-font);font-style:italic;font-size:1.4em;color:var(--muted);margin:.5em 0 2em}
+ .luxe .ornament{display:block;margin:1.5em auto;width:120px;height:1px;background:var(--accent)}
+ .luxe p.intro{max-width:640px;margin:0 auto 2.5em;font-size:1.1em;line-height:1.7;color:var(--ink)}
+ .luxe .cta{display:inline-block;border:1px solid var(--ink);padding:1.1em 2.4em;letter-spacing:.2em;text-transform:uppercase;font-size:.85em;font-weight:600;color:var(--ink)}
+ .pillars2{display:grid;grid-template-columns:repeat(3,1fr);max-width:1100px;margin:0 auto;gap:0;border-top:1px solid var(--rule)}
+ .pillars2 > div{padding:3em 2em;border-right:1px solid var(--rule);text-align:center}
+ .pillars2 > div:last-child{border:0}
+ .pillars2 h3{font-family:var(--h-font);font-style:italic;font-size:1.4em;font-weight:400;color:var(--accent)}
+</style></head><body>
+ <main class=luxe>
+ <small>established · 1989</small>
+ <h1>Choice Pet Market</h1>
+ <div class=tag>A veterinary concierge for discerning families.</div>
+ <span class=ornament></span>
+ <p class=intro>For thirty years, the same families have entrusted us with their pets — across generations, through every illness, every joy, every loss. We answer the phone ourselves. We remember what you fed your dog last summer. That is the practice we have built.</p>
+ <a class=cta href=#book>Become a client</a>
+ </main>
+ <section class=pillars2>
+ <div><h3>House calls</h3><p>For senior pets, end-of-life care, or pets who simply hate the car.</p></div>
+ <div><h3>Concierge medicine</h3><p>Direct cell-phone access to your DVM. No portal. No phone tree.</p></div>
+ <div><h3>Estate planning</h3><p>Pet-trust referrals, end-of-life planning, in-home euthanasia.</p></div>
+ </section>
+ <footer style="padding:3em;text-align:center;color:var(--muted);font-size:.85em">AZ · +1-602-652-9000</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18447-c.html b/public/mockups/biz-18447-c.html
new file mode 100644
index 0000000..92570d1
--- /dev/null
+++ b/public/mockups/biz-18447-c.html
@@ -0,0 +1,45 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Spectral%3Awght%40400%3B700%3B900%26family%3DWork%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#222218; --paper:#f9f8f1; --accent:#5d6b3a;
+ --accent2:#c97a3e; --muted:#7d7c66; --rule:#e6e3d4;
+ --h-font:'Spectral', serif; --b-font:'Work Sans', system-ui, sans-serif;
+ --btn-r:4px; --card-r:4px; --card-shadow:0 2px 4px rgba(0,0,0,.04);
+ --divider:solid 1px var(--accent);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .hero{padding:7em 4em 6em;background:linear-gradient(140deg,#f9f8f1,#e6e3d4);text-align:left}
+ .hero small{text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700;font-size:.9em}
+ .hero h1{font-size:4em;margin:.3em 0;line-height:1.05;font-weight:900}
+ .hero p{font-size:1.25em;color:var(--muted);max-width:600px;margin:1em 0 2em}
+ .hero .btns{display:flex;gap:1em;align-items:center}
+ .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:var(--ink);color:var(--paper)}
+ .grid > div{padding:3em 2.5em;border-right:1px solid rgba(255,255,255,.1)}
+ .grid h3{font-size:1.4em;margin-bottom:.4em}
+ .grid p{color:rgba(255,255,255,.7);margin:0}
+ .foot{padding:2em 4em;background:var(--accent);color:var(--paper);text-align:center;font-weight:600}
+</style></head><body>
+ <section class=hero>
+ <small>pet store · , AZ</small>
+ <h1>Choice Pet Market</h1>
+ <p>Veterinary care designed around your pet — and your day. Same-week appointments, transparent pricing, kind people.</p>
+ <div class=btns><a class=btn href=#book>Book online</a><a class=btn-ghost href=#about>Meet the team →</a></div>
+ </section>
+ <section class=grid>
+ <div><h3>Wellness</h3><p>Annual exams, vaccinations, and proactive care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house, with same-day discharge for most procedures.</p></div>
+ <div><h3>Urgent Care</h3><p>Same-day sick visits — call us before going to the ER.</p></div>
+ </section>
+ <footer class=foot>Choice Pet Market · AZ · +1-602-652-9000</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18449-a.html b/public/mockups/biz-18449-a.html
new file mode 100644
index 0000000..f214705
--- /dev/null
+++ b/public/mockups/biz-18449-a.html
@@ -0,0 +1,49 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito%3Awght%40400%3B700%3B900%26family%3DNunito%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#222218; --paper:#f9f8f1; --accent:#5d6b3a;
+ --accent2:#c97a3e; --muted:#7d7c66; --rule:#e6e3d4;
+ --h-font:'Nunito', serif; --b-font:'Nunito', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:inset 0 -3px 0 var(--accent2);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{background:var(--paper)}
+ .luxe{padding:6em 5em;max-width:1100px;margin:0 auto;text-align:center}
+ .luxe small{font-family:var(--h-font);font-style:italic;font-size:1em;color:var(--accent);letter-spacing:.05em}
+ .luxe h1{font-size:5em;margin:.2em 0;font-weight:400;letter-spacing:-.02em;line-height:1}
+ .luxe .tag{font-family:var(--h-font);font-style:italic;font-size:1.4em;color:var(--muted);margin:.5em 0 2em}
+ .luxe .ornament{display:block;margin:1.5em auto;width:120px;height:1px;background:var(--accent)}
+ .luxe p.intro{max-width:640px;margin:0 auto 2.5em;font-size:1.1em;line-height:1.7;color:var(--ink)}
+ .luxe .cta{display:inline-block;border:1px solid var(--ink);padding:1.1em 2.4em;letter-spacing:.2em;text-transform:uppercase;font-size:.85em;font-weight:600;color:var(--ink)}
+ .pillars2{display:grid;grid-template-columns:repeat(3,1fr);max-width:1100px;margin:0 auto;gap:0;border-top:1px solid var(--rule)}
+ .pillars2 > div{padding:3em 2em;border-right:1px solid var(--rule);text-align:center}
+ .pillars2 > div:last-child{border:0}
+ .pillars2 h3{font-family:var(--h-font);font-style:italic;font-size:1.4em;font-weight:400;color:var(--accent)}
+</style></head><body>
+ <main class=luxe>
+ <small>established · Apache Junction</small>
+ <h1>Caring Critters Animal Hospital</h1>
+ <div class=tag>A veterinary concierge for Apache Junction families.</div>
+ <span class=ornament></span>
+ <p class=intro>For thirty years, the same families have entrusted us with their pets — across generations, through every illness, every joy, every loss. We answer the phone ourselves. We remember what you fed your dog last summer. That is the practice we have built.</p>
+ <a class=cta href=#book>Become a client</a>
+ </main>
+ <section class=pillars2>
+ <div><h3>House calls</h3><p>For senior pets, end-of-life care, or pets who simply hate the car.</p></div>
+ <div><h3>Concierge medicine</h3><p>Direct cell-phone access to your DVM. No portal. No phone tree.</p></div>
+ <div><h3>Estate planning</h3><p>Pet-trust referrals, end-of-life planning, in-home euthanasia.</p></div>
+ </section>
+ <footer style="padding:3em;text-align:center;color:var(--muted);font-size:.85em">189 West Apache Trail, Apache Junction, AZ, 85120 · +1 480 671 7387</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18449-b.html b/public/mockups/biz-18449-b.html
new file mode 100644
index 0000000..59fc5b0
--- /dev/null
+++ b/public/mockups/biz-18449-b.html
@@ -0,0 +1,60 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=EB%2BGaramond%3Awght%40400%3B700%3B900%26family%3DKarla%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1f1818; --paper:#fdf8f3; --accent:#a01a3a;
+ --accent2:#345b3b; --muted:#807070; --rule:#ebd5d0;
+ --h-font:'EB Garamond', serif; --b-font:'Karla', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .nav{padding:1.2em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule)}
+ .nav strong{font-size:1.1em}
+ .hero2{display:grid;grid-template-columns:1.4fr 1fr;padding:5em 3em;gap:4em;align-items:start}
+ .hero2 h1{font-size:3.2em;font-weight:800;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .hero2 .sub{font-size:1.15em;color:var(--muted);max-width:560px;margin:0 0 2em}
+ .booking{background:#fff;border:2px solid var(--ink);border-radius:var(--card-r);padding:2em}
+ .booking h3{margin:0 0 1em;font-size:1.3em}
+ .booking label{display:block;margin:.7em 0 .2em;font-weight:600;font-size:.92em}
+ .booking input,.booking select{width:100%;padding:.6em .8em;border:1px solid var(--rule);border-radius:var(--btn-r);font:inherit}
+ .booking button{margin-top:1em;width:100%;background:var(--accent);color:var(--paper);border:0;padding:1em;font-weight:700;font-size:1.05em;border-radius:var(--btn-r);cursor:pointer}
+ .why{padding:3em;background:var(--rule)}
+ .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;max-width:1100px;margin:0 auto}
+ .why-grid > div{background:var(--paper);padding:1.5em;border-radius:var(--card-r)}
+</style></head><body>
+ <nav class=nav><strong>Caring Critters Animal Hospital</strong><a class=btn href=#book>Book online</a></nav>
+ <section class=hero2>
+ <div>
+ <h1>Skip the phone. Book your visit in 60 seconds.</h1>
+ <p class=sub>Real-time availability. Choose your doctor. Add your pet's symptoms. We'll send a confirmation by email + text.</p>
+ <p class=muted>★ 4.9 from 412 Apache Junction pet families</p>
+ </div>
+ <form class=booking>
+ <h3>Request an appointment</h3>
+ <label>Your name</label><input placeholder="Jane Doe">
+ <label>Email</label><input placeholder="you@example.com">
+ <label>Pet & reason</label><select><option>Dog — wellness</option><option>Cat — sick visit</option><option>Other</option></select>
+ <label>Preferred day</label><input type=date>
+ <button>Request appointment</button>
+ </form>
+ </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>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted)">189 West Apache Trail, Apache Junction, AZ, 85120 · +1 480 671 7387</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18449-c.html b/public/mockups/biz-18449-c.html
new file mode 100644
index 0000000..3121fb6
--- /dev/null
+++ b/public/mockups/biz-18449-c.html
@@ -0,0 +1,49 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Cormorant%2BGaramond%3Awght%40400%3B700%3B900%26family%3DLato%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#000000; --paper:#fffaf3; --accent:#000000;
+ --accent2:#a16207; --muted:#525252; --rule:#e5e0d8;
+ --h-font:'Cormorant Garamond', serif; --b-font:'Lato', system-ui, sans-serif;
+ --btn-r:4px; --card-r:4px; --card-shadow:0 2px 4px rgba(0,0,0,.04);
+ --divider:solid 1px var(--accent);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .fam-hero{padding:5em 4em;background:var(--paper);max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:4em;align-items:center}
+ .fam-hero h1{font-size:3.2em;font-weight:700;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .fam-hero .lead{font-size:1.2em;color:var(--ink);line-height:1.6;max-width:480px}
+ .fam-hero .stats{margin-top:1.5em;display:flex;gap:2em}
+ .fam-hero .stats div strong{display:block;font-size:1.8em;color:var(--accent);font-family:var(--h-font);font-weight:900}
+ .fam-hero .stats div span{font-size:.85em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}
+ .fam-hero .photo{aspect-ratio:1/1;background:var(--rule);border-radius:var(--card-r);background-image:radial-gradient(circle at 50% 30%, #a16207 0%, #e5e0d8 70%)}
+ .fam-strip{background:var(--accent);color:var(--paper);padding:3em 4em;text-align:center}
+ .fam-strip h2{font-size:2em;color:var(--paper);margin:0 0 .3em}
+ .fam-strip p{opacity:.9;max-width:600px;margin:0 auto 1.5em}
+</style></head><body>
+ <section class=fam-hero>
+ <div>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">vet clinic</small>
+ <h1>Caring Critters Animal Hospital</h1>
+ <p class=lead>The veterinary practice Apache Junction families have trusted for three generations. We were here when your dog was a puppy. We'll be here when she's grey.</p>
+ <div class=stats><div><strong>34 yrs</strong><span>in practice</span></div><div><strong>4</strong><span>generations served</span></div><div><strong>★ 4.9</strong><span>from 800+</span></div></div>
+ <p style="margin-top:2em"><a class=btn href=#book>Book a visit</a> <a class=btn-ghost href=#about>Meet our team</a></p>
+ </div>
+ <div class=photo></div>
+ </section>
+ <section class=fam-strip>
+ <h2>Same-week appointments, every week.</h2>
+ <p>Most clients book within 3 days. Emergency? Call us — we take same-day sick visits Monday-Friday.</p>
+ <a class=btn-2 href=#book>See this week's openings →</a>
+ </section>
+ <footer style="padding:2em 4em;text-align:center;color:var(--muted)">189 West Apache Trail, Apache Junction, AZ, 85120 · +1 480 671 7387</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18452-a.html b/public/mockups/biz-18452-a.html
new file mode 100644
index 0000000..c6a51e3
--- /dev/null
+++ b/public/mockups/biz-18452-a.html
@@ -0,0 +1,56 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Cormorant%2BGaramond%3Awght%40400%3B700%3B900%26family%3DLato%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1a1a1a; --paper:#fafaf7; --accent:#0f4d3a;
+ --accent2:#c97a3e; --muted:#6b6b6b; --rule:#e6e1d6;
+ --h-font:'Cormorant Garamond', serif; --b-font:'Lato', system-ui, sans-serif;
+ --btn-r:999px; --card-r:18px; --card-shadow:0 2px 8px rgba(0,0,0,.05);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{font-feature-settings:'kern','liga'}
+ .auth-hero{padding:5em 4em 4em;border-bottom:6px solid var(--accent)}
+ .auth-hero h1{font-size:3.4em;font-weight:800;letter-spacing:-.025em;line-height:1.05;max-width:14ch}
+ .auth-hero .credentials{margin:1em 0 1.5em;font-size:1.1em;color:var(--muted)}
+ .auth-hero .credentials span{display:inline-block;background:var(--accent);color:var(--paper);padding:.2em .6em;border-radius:var(--btn-r);font-size:.85em;font-weight:700;margin-right:.5em;margin-bottom:.4em}
+ .specs{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ink);color:var(--paper)}
+ .specs > div{padding:2em;border-right:1px solid rgba(255,255,255,.1)}
+ .specs strong{display:block;font-size:2.2em;font-family:var(--h-font);color:var(--accent2);font-weight:900}
+ .specs span{display:block;color:rgba(255,255,255,.7);font-size:.9em;margin-top:.3em;text-transform:uppercase;letter-spacing:.1em}
+ .pillars{padding:4em;display:grid;grid-template-columns:repeat(2,1fr);gap:3em}
+ .pillars h3{font-size:1.6em;border-bottom:1px solid var(--rule);padding-bottom:.5em}
+ .pillars p{color:var(--muted);line-height:1.6}
+</style></head><body>
+ <header class=auth-hero>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">pet store · Apache Junction, AZ</small>
+ <h1>Hold Fast Reptiles and Exotics</h1>
+ <div class=credentials>
+ <span>AAHA Accredited</span><span>24-Hour ICU</span><span>Board-Certified Specialists</span>
+ </div>
+ <a class=btn href=#refer>Refer a patient →</a>
+ </header>
+ <section class=specs>
+ <div><strong>15K+</strong><span>patients seen / yr</span></div>
+ <div><strong>9</strong><span>specialties on staff</span></div>
+ <div><strong>24/7</strong><span>emergency coverage</span></div>
+ <div><strong>14 yrs</strong><span>median DVM tenure</span></div>
+ </section>
+ <section class=pillars>
+ <div><h3>Internal Medicine</h3><p>Endocrine, gastrointestinal, hematology — diagnostics in-house, treatment plans coordinated with your primary vet.</p></div>
+ <div><h3>Cardiology</h3><p>Echocardiography, holter monitoring, BNP testing. Same-week appointments for complex cases.</p></div>
+ <div><h3>Surgery</h3><p>Soft-tissue, orthopedic, and neurosurgical procedures. Board-certified surgeons on every case.</p></div>
+ <div><h3>Oncology</h3><p>Chemotherapy, radiation referrals, palliative-care consults. We call you within 24h of every diagnosis.</p></div>
+ </section>
+ <footer style="padding:2em 4em;background:var(--ink);color:rgba(255,255,255,.7)">1000 West Apache Trail, Apache Junction, AZ, 85120 · +1 480 677 6253</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18452-b.html b/public/mockups/biz-18452-b.html
new file mode 100644
index 0000000..7d20260
--- /dev/null
+++ b/public/mockups/biz-18452-b.html
@@ -0,0 +1,51 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Manrope%3Awght%40400%3B700%3B900%26family%3DManrope%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#221913; --paper:#faf2e8; --accent:#5a3920;
+ --accent2:#c97a3e; --muted:#7d6e5d; --rule:#ead9c1;
+ --h-font:'Manrope', serif; --b-font:'Manrope', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .split{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}
+ .split-left{padding:5em 4em;background:var(--accent);color:var(--paper);display:flex;flex-direction:column;justify-content:center}
+ .split-right{padding:5em 4em;background:var(--paper);display:flex;flex-direction:column;justify-content:center}
+ .split-left h1{font-size:3.6em;font-weight:900;letter-spacing:-.03em;line-height:1}
+ .split-left p{opacity:.85;font-size:1.15em;margin:1em 0 2em;max-width:480px}
+ .split-right h2{font-size:1.8em;margin-bottom:1em}
+ .svc{padding:1em 0;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:center}
+ .svc:last-child{border:0}
+ .svc strong{color:var(--ink)}
+ .svc small{color:var(--muted)}
+ .svc a{color:var(--accent);font-weight:600}
+</style></head><body>
+ <main class=split>
+ <section class=split-left>
+ <small style="opacity:.7;letter-spacing:.15em;text-transform:uppercase;font-weight:700">pet store</small>
+ <h1>Hold Fast Reptiles and Exotics</h1>
+ <p>Modern veterinary medicine. Honest prices. Real people who remember your pet's name.</p>
+ <div><a class=btn-2 href=#book>Book online</a></div>
+ </section>
+ <section class=split-right>
+ <h2>What we do</h2>
+ <div class=svc><div><strong>Annual wellness</strong><br><small>Includes vaccines + parasite prevention</small></div><a href=#>$95</a></div>
+ <div class=svc><div><strong>Sick visit</strong><br><small>Same-day when we can fit you</small></div><a href=#>$110</a></div>
+ <div class=svc><div><strong>Dental cleaning</strong><br><small>Includes anesthesia + monitoring</small></div><a href=#>From $450</a></div>
+ <div class=svc><div><strong>Spay/Neuter</strong><br><small>Cats and dogs both</small></div><a href=#>From $225</a></div>
+ <hr class=divider>
+ <p class=muted>1000 West Apache Trail, Apache Junction, AZ, 85120 · +1 480 677 6253</p>
+ </section>
+ </main></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18452-c.html b/public/mockups/biz-18452-c.html
new file mode 100644
index 0000000..dff103d
--- /dev/null
+++ b/public/mockups/biz-18452-c.html
@@ -0,0 +1,51 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Playfair%2BDisplay%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1f1a0a; --paper:#fffaf0; --accent:#b45309;
+ --accent2:#0c1e6e; --muted:#7d6e5d; --rule:#e8d3a3;
+ --h-font:'Playfair Display', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .com-hero{padding:5em 3em;text-align:center;background:radial-gradient(circle at 30% 30%,#e8d3a3 0%,#fffaf0 60%)}
+ .com-hero small{text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700;font-size:.85em}
+ .com-hero h1{font-size:3em;margin:.3em 0 .5em;font-weight:800}
+ .com-hero p{color:var(--muted);max-width:600px;margin:0 auto 2em}
+ .testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5em;padding:3em;max-width:1200px;margin:0 auto}
+ .quote{background:#fff;padding:2em;border-radius:var(--card-r);box-shadow:var(--card-shadow);position:relative}
+ .quote:before{content:'"';position:absolute;top:.1em;left:.5em;font-size:5em;color:var(--accent);opacity:.15;font-family:Georgia,serif}
+ .quote p{font-style:italic;margin:0 0 1em;color:var(--ink);line-height:1.5}
+ .quote .by{color:var(--muted);font-size:.85em}
+ .strip{background:var(--accent);color:var(--paper);padding:2em 3em;text-align:center}
+ .strip h2{margin:0 0 .5em;font-size:2em;color:var(--paper)}
+ .strip a{color:var(--paper);background:var(--accent2);padding:.7em 1.5em;border-radius:var(--btn-r);font-weight:700;display:inline-block;margin-top:.5em}
+</style></head><body>
+ <section class=com-hero>
+ <small>pet store · Apache Junction, AZ</small>
+ <h1>Hold Fast Reptiles and Exotics</h1>
+ <p>Caring for Apache Junction's pets since 2008. We see the same families generation after generation — that's the kind of clinic we want to be.</p>
+ <a class=btn href=#book>Book a visit</a>
+ </section>
+ <section class=testimonials>
+ <div class=quote><p>They saved my dog's life. There's no other way to put it.</p><div class=by>— Maria G., Apache Junction</div></div>
+ <div class=quote><p>The first vet office where my cat doesn't shake. They actually understand cats.</p><div class=by>— Aaron P.</div></div>
+ <div class=quote><p>Honest about prices, kind to my anxious puppy, and they remember us by name.</p><div class=by>— Devon R.</div></div>
+ </section>
+ <section class=strip>
+ <h2>Same-day sick visits, every weekday</h2>
+ <a href=#>Check today's openings →</a>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted);text-align:center">1000 West Apache Trail, Apache Junction, AZ, 85120 · +1 480 677 6253</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18476-a.html b/public/mockups/biz-18476-a.html
new file mode 100644
index 0000000..ad41e24
--- /dev/null
+++ b/public/mockups/biz-18476-a.html
@@ -0,0 +1,60 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lora%3Awght%40400%3B700%3B900%26family%3DPublic%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c0c10; --paper:#f8f0e8; --accent:#6b1820;
+ --accent2:#a18443; --muted:#73575a; --rule:#e6d4c3;
+ --h-font:'Lora', serif; --b-font:'Public Sans', system-ui, sans-serif;
+ --btn-r:6px; --card-r:8px; --card-shadow:none;
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .nav{padding:1.2em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule)}
+ .nav strong{font-size:1.1em}
+ .hero2{display:grid;grid-template-columns:1.4fr 1fr;padding:5em 3em;gap:4em;align-items:start}
+ .hero2 h1{font-size:3.2em;font-weight:800;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .hero2 .sub{font-size:1.15em;color:var(--muted);max-width:560px;margin:0 0 2em}
+ .booking{background:#fff;border:2px solid var(--ink);border-radius:var(--card-r);padding:2em}
+ .booking h3{margin:0 0 1em;font-size:1.3em}
+ .booking label{display:block;margin:.7em 0 .2em;font-weight:600;font-size:.92em}
+ .booking input,.booking select{width:100%;padding:.6em .8em;border:1px solid var(--rule);border-radius:var(--btn-r);font:inherit}
+ .booking button{margin-top:1em;width:100%;background:var(--accent);color:var(--paper);border:0;padding:1em;font-weight:700;font-size:1.05em;border-radius:var(--btn-r);cursor:pointer}
+ .why{padding:3em;background:var(--rule)}
+ .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;max-width:1100px;margin:0 auto}
+ .why-grid > div{background:var(--paper);padding:1.5em;border-radius:var(--card-r)}
+</style></head><body>
+ <nav class=nav><strong>Flagstaff Veterinary Clinic</strong><a class=btn href=#book>Book online</a></nav>
+ <section class=hero2>
+ <div>
+ <h1>Skip the phone. Book your visit in 60 seconds.</h1>
+ <p class=sub>Real-time availability. Choose your doctor. Add your pet's symptoms. We'll send a confirmation by email + text.</p>
+ <p class=muted>★ 4.9 from 412 Flagstaff pet families</p>
+ </div>
+ <form class=booking>
+ <h3>Request an appointment</h3>
+ <label>Your name</label><input placeholder="Jane Doe">
+ <label>Email</label><input placeholder="you@example.com">
+ <label>Pet & reason</label><select><option>Dog — wellness</option><option>Cat — sick visit</option><option>Other</option></select>
+ <label>Preferred day</label><input type=date>
+ <button>Request appointment</button>
+ </form>
+ </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>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted)">963 West Historic Route 66, Flagstaff, AZ, 86001 · +1-928-361-0963</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18476-b.html b/public/mockups/biz-18476-b.html
new file mode 100644
index 0000000..9865557
--- /dev/null
+++ b/public/mockups/biz-18476-b.html
@@ -0,0 +1,42 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Space%2BGrotesk%3Awght%40400%3B700%3B900%26family%3DSpace%2BGrotesk%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1a1014; --paper:#fcf6f3; --accent:#9d2851;
+ --accent2:#3a4a3a; --muted:#8a6f78; --rule:#ebd7cf;
+ --h-font:'Space Grotesk', serif; --b-font:'Space Grotesk', system-ui, sans-serif;
+ --btn-r:999px; --card-r:18px; --card-shadow:0 2px 8px rgba(0,0,0,.05);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .cal-hero{padding:4em 3em;text-align:center;background:linear-gradient(160deg,#ebd7cf,#fcf6f3)}
+ .cal-hero h1{font-size:3.4em;font-weight:800;margin:0 0 .3em}
+ .cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5em;max-width:900px;margin:2em auto;padding:0 2em}
+ .cal-cell{background:#fff;padding:1em .5em;text-align:center;border-radius:var(--btn-r);box-shadow:var(--card-shadow);font-weight:600}
+ .cal-cell .dow{font-size:.7em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;display:block}
+ .cal-cell .num{font-size:1.3em;font-family:var(--h-font);color:var(--accent);font-weight:900}
+ .cal-cell.closed{opacity:.3}
+ .cal-cell.open:hover{background:var(--accent);color:var(--paper);cursor:pointer}
+ .cal-cell.open:hover .num,.cal-cell.open:hover .dow{color:var(--paper)}
+</style></head><body>
+ <section class=cal-hero>
+ <small style="letter-spacing:.15em;text-transform:uppercase;color:var(--accent2);font-weight:700">vet clinic · Flagstaff, AZ</small>
+ <h1>Flagstaff Veterinary Clinic</h1>
+ <p class=muted>Pick a day. We'll text you the openings.</p>
+ <div class=cal-grid>
+ <div class="cal-cell open"><span class=dow>Mon</span><span class=num>4</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>5</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>6</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>7</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>8</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>9</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>10</span></div><div class="cal-cell open"><span class=dow>Mon</span><span class=num>11</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>12</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>13</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>14</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>15</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>16</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>17</span></div>
+ </div>
+ <a class=btn href=#book>Continue →</a>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">963 West Historic Route 66, Flagstaff, AZ, 86001 · +1-928-361-0963</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18476-c.html b/public/mockups/biz-18476-c.html
new file mode 100644
index 0000000..0759c08
--- /dev/null
+++ b/public/mockups/biz-18476-c.html
@@ -0,0 +1,51 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c1c0a; --paper:#fffce8; --accent:#a16207;
+ --accent2:#1e3a8a; --muted:#7d7d5c; --rule:#fde68a;
+ --h-font:'Inter', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:0; --card-r:0; --card-shadow:none;
+ --divider:solid 2px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .com-hero{padding:5em 3em;text-align:center;background:radial-gradient(circle at 30% 30%,#fde68a 0%,#fffce8 60%)}
+ .com-hero small{text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700;font-size:.85em}
+ .com-hero h1{font-size:3em;margin:.3em 0 .5em;font-weight:800}
+ .com-hero p{color:var(--muted);max-width:600px;margin:0 auto 2em}
+ .testimonials{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5em;padding:3em;max-width:1200px;margin:0 auto}
+ .quote{background:#fff;padding:2em;border-radius:var(--card-r);box-shadow:var(--card-shadow);position:relative}
+ .quote:before{content:'"';position:absolute;top:.1em;left:.5em;font-size:5em;color:var(--accent);opacity:.15;font-family:Georgia,serif}
+ .quote p{font-style:italic;margin:0 0 1em;color:var(--ink);line-height:1.5}
+ .quote .by{color:var(--muted);font-size:.85em}
+ .strip{background:var(--accent);color:var(--paper);padding:2em 3em;text-align:center}
+ .strip h2{margin:0 0 .5em;font-size:2em;color:var(--paper)}
+ .strip a{color:var(--paper);background:var(--accent2);padding:.7em 1.5em;border-radius:var(--btn-r);font-weight:700;display:inline-block;margin-top:.5em}
+</style></head><body>
+ <section class=com-hero>
+ <small>vet clinic · Flagstaff, AZ</small>
+ <h1>Flagstaff Veterinary Clinic</h1>
+ <p>Caring for Flagstaff's pets since 2008. We see the same families generation after generation — that's the kind of clinic we want to be.</p>
+ <a class=btn href=#book>Book a visit</a>
+ </section>
+ <section class=testimonials>
+ <div class=quote><p>They saved my dog's life. There's no other way to put it.</p><div class=by>— Maria G., Flagstaff</div></div>
+ <div class=quote><p>The first vet office where my cat doesn't shake. They actually understand cats.</p><div class=by>— Aaron P.</div></div>
+ <div class=quote><p>Honest about prices, kind to my anxious puppy, and they remember us by name.</p><div class=by>— Devon R.</div></div>
+ </section>
+ <section class=strip>
+ <h2>Same-day sick visits, every weekday</h2>
+ <a href=#>Check today's openings →</a>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted);text-align:center">963 West Historic Route 66, Flagstaff, AZ, 86001 · +1-928-361-0963</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18486-a.html b/public/mockups/biz-18486-a.html
new file mode 100644
index 0000000..4328f94
--- /dev/null
+++ b/public/mockups/biz-18486-a.html
@@ -0,0 +1,65 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Playfair%2BDisplay%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c1f2a; --paper:#f1f9fa; --accent:#0e7490;
+ --accent2:#f97316; --muted:#5d748a; --rule:#a5e5e5;
+ --h-font:'Playfair Display', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:4px; --card-r:4px; --card-shadow:0 2px 4px rgba(0,0,0,.04);
+ --divider:solid 1px var(--accent);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .mc-nav{padding:1.4em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule);background:var(--paper);position:sticky;top:0;z-index:10}
+ .mc-nav strong{font-size:1.1em}
+ .mc-nav nav a{margin-left:1.5em;color:var(--ink);font-weight:500}
+ .mc-hero{padding:6em 3em 4em;text-align:left;max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr;gap:4em;align-items:end}
+ .mc-hero h1{font-size:3.8em;font-weight:800;letter-spacing:-.025em;line-height:1.05;margin:0}
+ .mc-hero p{font-size:1.2em;color:var(--muted);margin:1em 0;max-width:520px}
+ .mc-hero .actions{display:flex;gap:1em}
+ .mc-hero .badges{display:grid;grid-template-columns:1fr 1fr;gap:.7em;align-items:end}
+ .mc-hero .badge{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:.8em;text-align:center;font-size:.85em}
+ .mc-hero .badge strong{display:block;color:var(--accent);font-size:1.4em;font-family:var(--h-font);font-weight:900}
+ .mc-services{padding:4em 3em;background:var(--rule)}
+ .mc-services h2{font-size:1.8em;text-align:center;margin-bottom:2em}
+ .mc-services ul{list-style:none;padding:0;max-width:900px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:1em}
+ .mc-services li{background:var(--paper);padding:1.2em 1.5em;border-radius:var(--card-r);font-weight:600;display:flex;justify-content:space-between;align-items:center}
+ .mc-services li small{color:var(--muted);font-weight:400}
+</style></head><body>
+ <nav class=mc-nav><strong>Desert Hills Pet Clinic</strong><nav><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a></nav><a class=btn href=#book>Book</a></nav>
+ <section class=mc-hero>
+ <div>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">vet clinic · Tucson, AZ</small>
+ <h1>Modern medicine. Honest pricing. Real follow-through.</h1>
+ <p>The veterinary practice Tucson has been waiting for. Open 7 days. Online booking. Email reminders. Estimates before treatment.</p>
+ <div class=actions><a class=btn href=#book>Book in 60 seconds</a><a class=btn-ghost href=#tour>Take a tour →</a></div>
+ </div>
+ <div class=badges>
+ <div class=badge><strong>★ 4.9</strong>412 reviews</div>
+ <div class=badge><strong>7 days</strong>Open weekly</div>
+ <div class=badge><strong>$95</strong>Wellness exam</div>
+ <div class=badge><strong>24h</strong>Lab results</div>
+ </div>
+ </section>
+ <section class=mc-services>
+ <h2>Common visits</h2>
+ <ul>
+ <li>Annual wellness <small>$95</small></li>
+ <li>Sick visit <small>$110</small></li>
+ <li>Dental cleaning <small>From $450</small></li>
+ <li>Spay / neuter <small>From $225</small></li>
+ <li>Vaccine package <small>$140</small></li>
+ <li>Senior bloodwork <small>$185</small></li>
+ </ul>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">5016 North Oracle Road, Tucson, AZ, 85704 · +1-520-293-8788</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18486-b.html b/public/mockups/biz-18486-b.html
new file mode 100644
index 0000000..d01a82d
--- /dev/null
+++ b/public/mockups/biz-18486-b.html
@@ -0,0 +1,50 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Manrope%3Awght%40400%3B700%3B900%26family%3DManrope%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c0c1c; --paper:#f4f3f6; --accent:#581c87;
+ --accent2:#737373; --muted:#787078; --rule:#d8d5e0;
+ --h-font:'Manrope', serif; --b-font:'Manrope', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:inset 0 -3px 0 var(--accent2);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .nv{padding:1.5em 3em;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between}
+ .st-hero{padding:4em 3em;text-align:center}
+ .st-hero h1{font-size:3em;font-weight:800;margin:0 0 .3em}
+ .st-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:0;border-top:1px solid var(--rule)}
+ .st-tile{padding:3em 2em;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);transition:background .2s}
+ .st-tile:nth-child(4n){border-right:0}
+ .st-tile:hover{background:var(--rule)}
+ .st-tile .num{font-family:var(--h-font);font-size:1.5em;color:var(--accent);font-weight:900;display:block;margin-bottom:.5em}
+ .st-tile h3{font-size:1.2em;margin:.3em 0}
+ .st-tile p{color:var(--muted);font-size:.92em;line-height:1.5}
+</style></head><body>
+ <nav class=nv><strong>Desert Hills Pet Clinic</strong><a class=btn href=#book>Book</a></nav>
+ <section class=st-hero>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">vet clinic · Tucson, AZ</small>
+ <h1>Care for the whole life of your pet.</h1>
+ <p class=muted>From the first puppy visit to the last quiet day.</p>
+ </section>
+ <section class=st-tiles>
+ <div class=st-tile><span class=num>01</span><h3>Puppy / kitten</h3><p>First exam, vaccine series, parasite plan.</p></div>
+ <div class=st-tile><span class=num>02</span><h3>Wellness</h3><p>Annual exams, dental check, nutrition.</p></div>
+ <div class=st-tile><span class=num>03</span><h3>Surgery</h3><p>Spay/neuter, soft-tissue, dental procedures.</p></div>
+ <div class=st-tile><span class=num>04</span><h3>Sick visits</h3><p>Same-day when we can fit you.</p></div>
+ <div class=st-tile><span class=num>05</span><h3>Diagnostics</h3><p>Bloodwork, imaging, ultrasound, in-house.</p></div>
+ <div class=st-tile><span class=num>06</span><h3>Senior care</h3><p>Quarterly check-ins for pets 8+.</p></div>
+ <div class=st-tile><span class=num>07</span><h3>Behavior</h3><p>Training referrals, anxiety meds, consults.</p></div>
+ <div class=st-tile><span class=num>08</span><h3>End of life</h3><p>In-home euthanasia + grief support.</p></div>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted)">5016 North Oracle Road, Tucson, AZ, 85704 · +1-520-293-8788</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18486-c.html b/public/mockups/biz-18486-c.html
new file mode 100644
index 0000000..b2bde39
--- /dev/null
+++ b/public/mockups/biz-18486-c.html
@@ -0,0 +1,44 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=EB%2BGaramond%3Awght%40400%3B700%3B900%26family%3DKarla%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1a1014; --paper:#fcf6f3; --accent:#9d2851;
+ --accent2:#3a4a3a; --muted:#8a6f78; --rule:#ebd7cf;
+ --h-font:'EB Garamond', serif; --b-font:'Karla', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .bq-hero{padding:5em 4em;background:linear-gradient(180deg,#ebd7cf,#fcf6f3);text-align:center}
+ .bq-hero small{font-style:italic;font-family:var(--h-font);font-size:1.1em;color:var(--accent)}
+ .bq-hero h1{font-size:4em;margin:.3em 0 .5em;font-weight:400;letter-spacing:-.01em}
+ .bq-hero p{color:var(--muted);font-size:1.15em;max-width:560px;margin:0 auto 2em;line-height:1.7}
+ .bq-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 4em;max-width:1200px;margin:0 auto}
+ .bq-card{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:2em;text-align:center}
+ .bq-card .ico{font-size:2.4em;color:var(--accent2)}
+ .bq-card h3{font-style:italic;font-family:var(--h-font);margin:.5em 0;font-size:1.4em;font-weight:400}
+ .bq-card p{color:var(--muted);font-size:.95em;line-height:1.6;margin:0}
+</style></head><body>
+ <section class=bq-hero>
+ <small>vet clinic</small>
+ <h1>Desert Hills Pet Clinic</h1>
+ <p>A neighborhood veterinary practice that feels like home — in the best part of Tucson.</p>
+ <a class=btn href=#book>Book a visit</a>
+ </section>
+ <section class=bq-cards>
+ <div class=bq-card><div class=ico>🐾</div><h3>Wellness</h3><p>Annual exams, vaccines, parasite prevention, nutrition.</p></div>
+ <div class=bq-card><div class=ico>🦴</div><h3>Dental</h3><p>Cleanings under anesthesia with continuous monitoring.</p></div>
+ <div class=bq-card><div class=ico>❤️</div><h3>Senior care</h3><p>A dedicated quarterly visit for pets 8+, with bloodwork.</p></div>
+ </section>
+ <footer style="padding:2em 4em;text-align:center;color:var(--muted)">5016 North Oracle Road, Tucson, AZ, 85704 · +1-520-293-8788</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18492-a.html b/public/mockups/biz-18492-a.html
new file mode 100644
index 0000000..3758109
--- /dev/null
+++ b/public/mockups/biz-18492-a.html
@@ -0,0 +1,45 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Cormorant%2BGaramond%3Awght%40400%3B700%3B900%26family%3DLato%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#171515; --paper:#f5f5f4; --accent:#44403c;
+ --accent2:#a18267; --muted:#78716c; --rule:#e7e5e4;
+ --h-font:'Cormorant Garamond', serif; --b-font:'Lato', system-ui, sans-serif;
+ --btn-r:10px; --card-r:12px; --card-shadow:0 4px 14px rgba(0,0,0,.06);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .hero{padding:7em 4em 6em;background:linear-gradient(140deg,#f5f5f4,#e7e5e4);text-align:left}
+ .hero small{text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700;font-size:.9em}
+ .hero h1{font-size:4em;margin:.3em 0;line-height:1.05;font-weight:900}
+ .hero p{font-size:1.25em;color:var(--muted);max-width:600px;margin:1em 0 2em}
+ .hero .btns{display:flex;gap:1em;align-items:center}
+ .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:var(--ink);color:var(--paper)}
+ .grid > div{padding:3em 2.5em;border-right:1px solid rgba(255,255,255,.1)}
+ .grid h3{font-size:1.4em;margin-bottom:.4em}
+ .grid p{color:rgba(255,255,255,.7);margin:0}
+ .foot{padding:2em 4em;background:var(--accent);color:var(--paper);text-align:center;font-weight:600}
+</style></head><body>
+ <section class=hero>
+ <small>boarding · Mesa, AZ</small>
+ <h1>The Pet Nanny</h1>
+ <p>Veterinary care designed around your pet — and your day. Same-week appointments, transparent pricing, kind people.</p>
+ <div class=btns><a class=btn href=#book>Book online</a><a class=btn-ghost href=#about>Meet the team →</a></div>
+ </section>
+ <section class=grid>
+ <div><h3>Wellness</h3><p>Annual exams, vaccinations, and proactive care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house, with same-day discharge for most procedures.</p></div>
+ <div><h3>Urgent Care</h3><p>Same-day sick visits — call us before going to the ER.</p></div>
+ </section>
+ <footer class=foot>The Pet Nanny · 158 North 86th Place, Mesa, AZ, 85207 · +1-480-600-6931</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18492-b.html b/public/mockups/biz-18492-b.html
new file mode 100644
index 0000000..3eb18d7
--- /dev/null
+++ b/public/mockups/biz-18492-b.html
@@ -0,0 +1,63 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Manrope%3Awght%40400%3B700%3B900%26family%3DManrope%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1f1d18; --paper:#f6f1e9; --accent:#7a8767;
+ --accent2:#a85e2c; --muted:#7c7665; --rule:#dfd5c3;
+ --h-font:'Manrope', serif; --b-font:'Manrope', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .news{max-width:1100px;margin:0 auto;padding:2em 3em}
+ .news .nameplate{border-top:6px solid var(--ink);border-bottom:3px solid var(--ink);padding:1em 0;text-align:center}
+ .news .nameplate h1{font-size:3em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .news .nameplate small{display:block;color:var(--muted);font-size:.9em;text-transform:uppercase;letter-spacing:.2em;margin-top:.5em}
+ .news .lead-story{padding:2em 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:2fr 1fr;gap:3em}
+ .news .lead-story h2{font-size:2.6em;font-weight:900;line-height:1.05;margin:0 0 .5em}
+ .news .lead-story .sub{font-size:1.1em;color:var(--muted);font-style:italic}
+ .news .sidebar h3{font-size:1.2em;text-transform:uppercase;letter-spacing:.1em;border-bottom:2px solid var(--accent);padding-bottom:.4em}
+ .news .sidebar ul{list-style:none;padding:0;margin:0}
+ .news .sidebar li{padding:.6em 0;border-bottom:1px dotted var(--rule);font-size:.95em}
+ .news .col3{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:2em 0;border-bottom:1px solid var(--rule)}
+ .news .col3 h3{font-size:1.3em;border-bottom:1px solid var(--rule);padding-bottom:.4em}
+</style></head><body>
+ <article class=news>
+ <header class=nameplate>
+ <h1>The Pet Nanny</h1>
+ <small>boarding · Mesa, AZ · Monday, May 4, 2026</small>
+ </header>
+ <section class=lead-story>
+ <div>
+ <h2>New: Same-day appointments are back, all weekdays.</h2>
+ <p class=sub>After a six-month staffing rebuild, we've reopened walk-in sick visits Monday through Friday. Call before 11 AM, see your DVM before 5.</p>
+ <a class=btn href=#book>Book today's visit</a>
+ </div>
+ <aside class=sidebar>
+ <h3>This week</h3>
+ <ul>
+ <li>Vaccine clinic — Saturday 9-12</li>
+ <li>Senior wellness day — every Wed</li>
+ <li>Free puppy meet-up — first Sat/mo</li>
+ <li>End-of-life consults — by appt</li>
+ </ul>
+ </aside>
+ </section>
+ <section class=col3>
+ <div><h3>General Practice</h3><p>Annual wellness exams, vaccinations, and personalized care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with continuous anesthetic monitoring.</p></div>
+ <div><h3>Specialty Referrals</h3><p>Cardiology, dermatology, oncology — we know the right specialists.</p></div>
+ </section>
+ <footer style="padding:2em 0;color:var(--muted)">158 North 86th Place, Mesa, AZ, 85207 · +1-480-600-6931</footer>
+ </article></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18492-c.html b/public/mockups/biz-18492-c.html
new file mode 100644
index 0000000..407c42b
--- /dev/null
+++ b/public/mockups/biz-18492-c.html
@@ -0,0 +1,59 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Libre%2BBaskerville%3Awght%40400%3B700%3B900%26family%3DOpen%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1e293b; --paper:#f1f5f9; --accent:#334155;
+ --accent2:#0ea5e9; --muted:#64748b; --rule:#cbd5e1;
+ --h-font:'Libre Baskerville', serif; --b-font:'Open Sans', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pagewrap{max-width:1100px;margin:0 auto;padding:3em 3em}
+ .masthead{border-top:6px solid var(--ink);border-bottom:1px solid var(--rule);padding:1em 0;display:flex;justify-content:space-between;align-items:baseline}
+ .masthead h1{font-size:2.4em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .masthead .date{color:var(--muted);font-size:.9em;letter-spacing:.1em;text-transform:uppercase}
+ .feature{display:grid;grid-template-columns:2fr 1fr;gap:3em;padding:3em 0;border-bottom:1px solid var(--rule)}
+ .feature h2{font-size:3.2em;line-height:1.05;font-weight:700;margin:0 0 .4em}
+ .feature .lead{font-size:1.2em;color:var(--ink);line-height:1.6}
+ .feature aside{border-left:3px solid var(--accent);padding-left:1.5em}
+ .feature aside h4{margin:0 0 .4em;font-size:1.1em;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}
+ .feature aside p{color:var(--muted);font-size:.95em;line-height:1.55}
+ .three{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 0}
+ .three h3{font-family:var(--h-font);font-size:1.5em;border-top:2px solid var(--accent);padding-top:.6em}
+</style></head><body>
+ <div class=pagewrap>
+ <header class=masthead>
+ <h1>The Pet Nanny</h1>
+ <span class=date>boarding · Mesa, AZ</span>
+ </header>
+ <article class=feature>
+ <div>
+ <h2>The kind of veterinary care your grandparents trusted — with the technology your pet deserves now.</h2>
+ <p class=lead>For three decades, we've been the family practice Mesa families call when something matters. Walk-in welcomes, transparent pricing, and a waiting room that doesn't feel like one.</p>
+ <p><a class=btn href=#book>Book a visit →</a></p>
+ </div>
+ <aside>
+ <h4>What's new</h4>
+ <p><strong>Online booking is live.</strong> Pick your day, your doctor, and the time that fits — no phone tag.</p>
+ <p><strong>Senior pet program.</strong> Quarterly visits + bloodwork for pets 8+, $35/mo.</p>
+ </aside>
+ </article>
+ <section class=three>
+ <div><h3>General Practice</h3><p>Annual wellness visits, vaccines, parasite prevention, nutrition counseling.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with anesthetic monitoring. Same-day discharge for most.</p></div>
+ <div><h3>Urgent Sick Care</h3><p>Same-day appointments most weekdays. Call before 11 AM, visit before 5.</p></div>
+ </section>
+ <footer><p class=muted>158 North 86th Place, Mesa, AZ, 85207 · +1-480-600-6931</p></footer>
+ </div></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18550-a.html b/public/mockups/biz-18550-a.html
new file mode 100644
index 0000000..447e2f5
--- /dev/null
+++ b/public/mockups/biz-18550-a.html
@@ -0,0 +1,42 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Source%2BSerif%2BPro%3Awght%40400%3B700%3B900%26family%3DSource%2BSans%2BPro%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1a1a1a; --paper:#fafaf7; --accent:#0f4d3a;
+ --accent2:#c97a3e; --muted:#6b6b6b; --rule:#e6e1d6;
+ --h-font:'Source Serif Pro', serif; --b-font:'Source Sans Pro', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .cal-hero{padding:4em 3em;text-align:center;background:linear-gradient(160deg,#e6e1d6,#fafaf7)}
+ .cal-hero h1{font-size:3.4em;font-weight:800;margin:0 0 .3em}
+ .cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5em;max-width:900px;margin:2em auto;padding:0 2em}
+ .cal-cell{background:#fff;padding:1em .5em;text-align:center;border-radius:var(--btn-r);box-shadow:var(--card-shadow);font-weight:600}
+ .cal-cell .dow{font-size:.7em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;display:block}
+ .cal-cell .num{font-size:1.3em;font-family:var(--h-font);color:var(--accent);font-weight:900}
+ .cal-cell.closed{opacity:.3}
+ .cal-cell.open:hover{background:var(--accent);color:var(--paper);cursor:pointer}
+ .cal-cell.open:hover .num,.cal-cell.open:hover .dow{color:var(--paper)}
+</style></head><body>
+ <section class=cal-hero>
+ <small style="letter-spacing:.15em;text-transform:uppercase;color:var(--accent2);font-weight:700">boarding · Mesa, AZ</small>
+ <h1>Horses Space</h1>
+ <p class=muted>Pick a day. We'll text you the openings.</p>
+ <div class=cal-grid>
+ <div class="cal-cell open"><span class=dow>Mon</span><span class=num>4</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>5</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>6</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>7</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>8</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>9</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>10</span></div><div class="cal-cell open"><span class=dow>Mon</span><span class=num>11</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>12</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>13</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>14</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>15</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>16</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>17</span></div>
+ </div>
+ <a class=btn href=#book>Continue →</a>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">19241 East Elliot Road, Mesa, AZ, 85212 · +1 480 326 2008</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18550-b.html b/public/mockups/biz-18550-b.html
new file mode 100644
index 0000000..621a5f4
--- /dev/null
+++ b/public/mockups/biz-18550-b.html
@@ -0,0 +1,39 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Cormorant%2BGaramond%3Awght%40400%3B700%3B900%26family%3DLato%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c1f2a; --paper:#f1f9fa; --accent:#0e7490;
+ --accent2:#f97316; --muted:#5d748a; --rule:#a5e5e5;
+ --h-font:'Cormorant Garamond', serif; --b-font:'Lato', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{display:flex;flex-direction:column;min-height:100vh}
+ .min-nav{padding:2em 4em;display:flex;justify-content:space-between;align-items:center;font-size:.9em;letter-spacing:.05em}
+ .min-nav strong{font-size:1em;font-weight:600}
+ .min-nav a{margin-left:1.5em;color:var(--ink)}
+ .min-hero{flex:1;padding:6em 4em;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:900px;margin:0 auto}
+ .min-hero h1{font-size:5em;font-weight:300;letter-spacing:-.04em;line-height:1.05;margin:0 0 .3em}
+ .min-hero p{font-size:1.2em;color:var(--muted);max-width:520px;margin:1em 0 2em;line-height:1.7;font-weight:300}
+ .min-hero .arrow{font-size:1em;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:.2em}
+ .min-foot{padding:2em 4em;border-top:1px solid var(--rule);display:flex;justify-content:space-between;color:var(--muted);font-size:.85em}
+</style></head><body>
+ <header class=min-nav><strong>Horses Space</strong><div><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a><a href=#>Book</a></div></header>
+ <main class=min-hero>
+ <h1>Horses Space.</h1>
+ <p>A small, deliberately quiet veterinary practice in Mesa.<br>By appointment.</p>
+ <a class=arrow href=#book>Request an appointment →</a>
+ </main>
+ <footer class=min-foot><span>19241 East Elliot Road, Mesa, AZ, 85212</span><span>+1 480 326 2008</span></footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18550-c.html b/public/mockups/biz-18550-c.html
new file mode 100644
index 0000000..8e853a6
--- /dev/null
+++ b/public/mockups/biz-18550-c.html
@@ -0,0 +1,60 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Merriweather%3Awght%40400%3B700%3B900%26family%3DIBM%2BPlex%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1e1b3a; --paper:#f6f6fb; --accent:#3a3a72;
+ --accent2:#e3589d; --muted:#6b6989; --rule:#e0dfeb;
+ --h-font:'Merriweather', serif; --b-font:'IBM Plex Sans', system-ui, sans-serif;
+ --btn-r:0; --card-r:0; --card-shadow:none;
+ --divider:solid 2px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .nav{padding:1.2em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule)}
+ .nav strong{font-size:1.1em}
+ .hero2{display:grid;grid-template-columns:1.4fr 1fr;padding:5em 3em;gap:4em;align-items:start}
+ .hero2 h1{font-size:3.2em;font-weight:800;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .hero2 .sub{font-size:1.15em;color:var(--muted);max-width:560px;margin:0 0 2em}
+ .booking{background:#fff;border:2px solid var(--ink);border-radius:var(--card-r);padding:2em}
+ .booking h3{margin:0 0 1em;font-size:1.3em}
+ .booking label{display:block;margin:.7em 0 .2em;font-weight:600;font-size:.92em}
+ .booking input,.booking select{width:100%;padding:.6em .8em;border:1px solid var(--rule);border-radius:var(--btn-r);font:inherit}
+ .booking button{margin-top:1em;width:100%;background:var(--accent);color:var(--paper);border:0;padding:1em;font-weight:700;font-size:1.05em;border-radius:var(--btn-r);cursor:pointer}
+ .why{padding:3em;background:var(--rule)}
+ .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;max-width:1100px;margin:0 auto}
+ .why-grid > div{background:var(--paper);padding:1.5em;border-radius:var(--card-r)}
+</style></head><body>
+ <nav class=nav><strong>Horses Space</strong><a class=btn href=#book>Book online</a></nav>
+ <section class=hero2>
+ <div>
+ <h1>Skip the phone. Book your visit in 60 seconds.</h1>
+ <p class=sub>Real-time availability. Choose your doctor. Add your pet's symptoms. We'll send a confirmation by email + text.</p>
+ <p class=muted>★ 4.9 from 412 Mesa pet families</p>
+ </div>
+ <form class=booking>
+ <h3>Request an appointment</h3>
+ <label>Your name</label><input placeholder="Jane Doe">
+ <label>Email</label><input placeholder="you@example.com">
+ <label>Pet & reason</label><select><option>Dog — wellness</option><option>Cat — sick visit</option><option>Other</option></select>
+ <label>Preferred day</label><input type=date>
+ <button>Request appointment</button>
+ </form>
+ </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>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted)">19241 East Elliot Road, Mesa, AZ, 85212 · +1 480 326 2008</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18625-a.html b/public/mockups/biz-18625-a.html
new file mode 100644
index 0000000..1fb0c82
--- /dev/null
+++ b/public/mockups/biz-18625-a.html
@@ -0,0 +1,44 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Merriweather%3Awght%40400%3B700%3B900%26family%3DIBM%2BPlex%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1e1b3a; --paper:#f6f6fb; --accent:#3a3a72;
+ --accent2:#e3589d; --muted:#6b6989; --rule:#e0dfeb;
+ --h-font:'Merriweather', serif; --b-font:'IBM Plex Sans', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .bq-hero{padding:5em 4em;background:linear-gradient(180deg,#e0dfeb,#f6f6fb);text-align:center}
+ .bq-hero small{font-style:italic;font-family:var(--h-font);font-size:1.1em;color:var(--accent)}
+ .bq-hero h1{font-size:4em;margin:.3em 0 .5em;font-weight:400;letter-spacing:-.01em}
+ .bq-hero p{color:var(--muted);font-size:1.15em;max-width:560px;margin:0 auto 2em;line-height:1.7}
+ .bq-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 4em;max-width:1200px;margin:0 auto}
+ .bq-card{background:#fff;border:1px solid var(--rule);border-radius:var(--card-r);padding:2em;text-align:center}
+ .bq-card .ico{font-size:2.4em;color:var(--accent2)}
+ .bq-card h3{font-style:italic;font-family:var(--h-font);margin:.5em 0;font-size:1.4em;font-weight:400}
+ .bq-card p{color:var(--muted);font-size:.95em;line-height:1.6;margin:0}
+</style></head><body>
+ <section class=bq-hero>
+ <small>shelter</small>
+ <h1>HALO Animal Rescue</h1>
+ <p>A neighborhood veterinary practice that feels like home — in the best part of Phoenix.</p>
+ <a class=btn href=#book>Book a visit</a>
+ </section>
+ <section class=bq-cards>
+ <div class=bq-card><div class=ico>🐾</div><h3>Wellness</h3><p>Annual exams, vaccines, parasite prevention, nutrition.</p></div>
+ <div class=bq-card><div class=ico>🦴</div><h3>Dental</h3><p>Cleanings under anesthesia with continuous monitoring.</p></div>
+ <div class=bq-card><div class=ico>❤️</div><h3>Senior care</h3><p>A dedicated quarterly visit for pets 8+, with bloodwork.</p></div>
+ </section>
+ <footer style="padding:2em 4em;text-align:center;color:var(--muted)">3227 East Bell Road, Phoenix, AZ, 85032 · +1-602-971-9222</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18625-b.html b/public/mockups/biz-18625-b.html
new file mode 100644
index 0000000..31ddce3
--- /dev/null
+++ b/public/mockups/biz-18625-b.html
@@ -0,0 +1,56 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Source%2BSerif%2BPro%3Awght%40400%3B700%3B900%26family%3DSource%2BSans%2BPro%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#22201d; --paper:#f5efea; --accent:#a13d2d;
+ --accent2:#3a4a3a; --muted:#7a7166; --rule:#e0d6cb;
+ --h-font:'Source Serif Pro', serif; --b-font:'Source Sans Pro', system-ui, sans-serif;
+ --btn-r:6px; --card-r:8px; --card-shadow:none;
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{font-feature-settings:'kern','liga'}
+ .auth-hero{padding:5em 4em 4em;border-bottom:6px solid var(--accent)}
+ .auth-hero h1{font-size:3.4em;font-weight:800;letter-spacing:-.025em;line-height:1.05;max-width:14ch}
+ .auth-hero .credentials{margin:1em 0 1.5em;font-size:1.1em;color:var(--muted)}
+ .auth-hero .credentials span{display:inline-block;background:var(--accent);color:var(--paper);padding:.2em .6em;border-radius:var(--btn-r);font-size:.85em;font-weight:700;margin-right:.5em;margin-bottom:.4em}
+ .specs{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ink);color:var(--paper)}
+ .specs > div{padding:2em;border-right:1px solid rgba(255,255,255,.1)}
+ .specs strong{display:block;font-size:2.2em;font-family:var(--h-font);color:var(--accent2);font-weight:900}
+ .specs span{display:block;color:rgba(255,255,255,.7);font-size:.9em;margin-top:.3em;text-transform:uppercase;letter-spacing:.1em}
+ .pillars{padding:4em;display:grid;grid-template-columns:repeat(2,1fr);gap:3em}
+ .pillars h3{font-size:1.6em;border-bottom:1px solid var(--rule);padding-bottom:.5em}
+ .pillars p{color:var(--muted);line-height:1.6}
+</style></head><body>
+ <header class=auth-hero>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">shelter · Phoenix, AZ</small>
+ <h1>HALO Animal Rescue</h1>
+ <div class=credentials>
+ <span>AAHA Accredited</span><span>24-Hour ICU</span><span>Board-Certified Specialists</span>
+ </div>
+ <a class=btn href=#refer>Refer a patient →</a>
+ </header>
+ <section class=specs>
+ <div><strong>15K+</strong><span>patients seen / yr</span></div>
+ <div><strong>9</strong><span>specialties on staff</span></div>
+ <div><strong>24/7</strong><span>emergency coverage</span></div>
+ <div><strong>14 yrs</strong><span>median DVM tenure</span></div>
+ </section>
+ <section class=pillars>
+ <div><h3>Internal Medicine</h3><p>Endocrine, gastrointestinal, hematology — diagnostics in-house, treatment plans coordinated with your primary vet.</p></div>
+ <div><h3>Cardiology</h3><p>Echocardiography, holter monitoring, BNP testing. Same-week appointments for complex cases.</p></div>
+ <div><h3>Surgery</h3><p>Soft-tissue, orthopedic, and neurosurgical procedures. Board-certified surgeons on every case.</p></div>
+ <div><h3>Oncology</h3><p>Chemotherapy, radiation referrals, palliative-care consults. We call you within 24h of every diagnosis.</p></div>
+ </section>
+ <footer style="padding:2em 4em;background:var(--ink);color:rgba(255,255,255,.7)">3227 East Bell Road, Phoenix, AZ, 85032 · +1-602-971-9222</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18625-c.html b/public/mockups/biz-18625-c.html
new file mode 100644
index 0000000..d3c4377
--- /dev/null
+++ b/public/mockups/biz-18625-c.html
@@ -0,0 +1,45 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Playfair%2BDisplay%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c1f1a; --paper:#ecf3ee; --accent:#14532d;
+ --accent2:#c97a3e; --muted:#5a716a; --rule:#bce3c8;
+ --h-font:'Playfair Display', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:12px; --card-r:14px; --card-shadow:0 16px 40px rgba(0,0,0,.12);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .hero{padding:7em 4em 6em;background:linear-gradient(140deg,#ecf3ee,#bce3c8);text-align:left}
+ .hero small{text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700;font-size:.9em}
+ .hero h1{font-size:4em;margin:.3em 0;line-height:1.05;font-weight:900}
+ .hero p{font-size:1.25em;color:var(--muted);max-width:600px;margin:1em 0 2em}
+ .hero .btns{display:flex;gap:1em;align-items:center}
+ .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:var(--ink);color:var(--paper)}
+ .grid > div{padding:3em 2.5em;border-right:1px solid rgba(255,255,255,.1)}
+ .grid h3{font-size:1.4em;margin-bottom:.4em}
+ .grid p{color:rgba(255,255,255,.7);margin:0}
+ .foot{padding:2em 4em;background:var(--accent);color:var(--paper);text-align:center;font-weight:600}
+</style></head><body>
+ <section class=hero>
+ <small>shelter · Phoenix, AZ</small>
+ <h1>HALO Animal Rescue</h1>
+ <p>Veterinary care designed around your pet — and your day. Same-week appointments, transparent pricing, kind people.</p>
+ <div class=btns><a class=btn href=#book>Book online</a><a class=btn-ghost href=#about>Meet the team →</a></div>
+ </section>
+ <section class=grid>
+ <div><h3>Wellness</h3><p>Annual exams, vaccinations, and proactive care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house, with same-day discharge for most procedures.</p></div>
+ <div><h3>Urgent Care</h3><p>Same-day sick visits — call us before going to the ER.</p></div>
+ </section>
+ <footer class=foot>HALO Animal Rescue · 3227 East Bell Road, Phoenix, AZ, 85032 · +1-602-971-9222</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18630-a.html b/public/mockups/biz-18630-a.html
new file mode 100644
index 0000000..648f2f5
--- /dev/null
+++ b/public/mockups/biz-18630-a.html
@@ -0,0 +1,42 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Playfair%2BDisplay%3Awght%40400%3B700%3B900%26family%3DInter%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0a0a0a; --paper:#fffaf3; --accent:#dc2626;
+ --accent2:#1f2937; --muted:#52525b; --rule:#fde2cf;
+ --h-font:'Playfair Display', serif; --b-font:'Inter', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .cal-hero{padding:4em 3em;text-align:center;background:linear-gradient(160deg,#fde2cf,#fffaf3)}
+ .cal-hero h1{font-size:3.4em;font-weight:800;margin:0 0 .3em}
+ .cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5em;max-width:900px;margin:2em auto;padding:0 2em}
+ .cal-cell{background:#fff;padding:1em .5em;text-align:center;border-radius:var(--btn-r);box-shadow:var(--card-shadow);font-weight:600}
+ .cal-cell .dow{font-size:.7em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;display:block}
+ .cal-cell .num{font-size:1.3em;font-family:var(--h-font);color:var(--accent);font-weight:900}
+ .cal-cell.closed{opacity:.3}
+ .cal-cell.open:hover{background:var(--accent);color:var(--paper);cursor:pointer}
+ .cal-cell.open:hover .num,.cal-cell.open:hover .dow{color:var(--paper)}
+</style></head><body>
+ <section class=cal-hero>
+ <small style="letter-spacing:.15em;text-transform:uppercase;color:var(--accent2);font-weight:700">pet store · , AZ</small>
+ <h1>PetSuites Chandler</h1>
+ <p class=muted>Pick a day. We'll text you the openings.</p>
+ <div class=cal-grid>
+ <div class="cal-cell open"><span class=dow>Mon</span><span class=num>4</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>5</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>6</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>7</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>8</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>9</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>10</span></div><div class="cal-cell open"><span class=dow>Mon</span><span class=num>11</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>12</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>13</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>14</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>15</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>16</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>17</span></div>
+ </div>
+ <a class=btn href=#book>Continue →</a>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">77 West Willis Road, AZ, 85286 · +1-480-480-2137</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18630-b.html b/public/mockups/biz-18630-b.html
new file mode 100644
index 0000000..1296b4a
--- /dev/null
+++ b/public/mockups/biz-18630-b.html
@@ -0,0 +1,63 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Libre%2BBaskerville%3Awght%40400%3B700%3B900%26family%3DOpen%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1a221a; --paper:#f6f9f1; --accent:#3a6d3a;
+ --accent2:#a14d3d; --muted:#6c7766; --rule:#dde5d3;
+ --h-font:'Libre Baskerville', serif; --b-font:'Open Sans', system-ui, sans-serif;
+ --btn-r:0; --card-r:0; --card-shadow:none;
+ --divider:solid 2px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .news{max-width:1100px;margin:0 auto;padding:2em 3em}
+ .news .nameplate{border-top:6px solid var(--ink);border-bottom:3px solid var(--ink);padding:1em 0;text-align:center}
+ .news .nameplate h1{font-size:3em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .news .nameplate small{display:block;color:var(--muted);font-size:.9em;text-transform:uppercase;letter-spacing:.2em;margin-top:.5em}
+ .news .lead-story{padding:2em 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:2fr 1fr;gap:3em}
+ .news .lead-story h2{font-size:2.6em;font-weight:900;line-height:1.05;margin:0 0 .5em}
+ .news .lead-story .sub{font-size:1.1em;color:var(--muted);font-style:italic}
+ .news .sidebar h3{font-size:1.2em;text-transform:uppercase;letter-spacing:.1em;border-bottom:2px solid var(--accent);padding-bottom:.4em}
+ .news .sidebar ul{list-style:none;padding:0;margin:0}
+ .news .sidebar li{padding:.6em 0;border-bottom:1px dotted var(--rule);font-size:.95em}
+ .news .col3{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:2em 0;border-bottom:1px solid var(--rule)}
+ .news .col3 h3{font-size:1.3em;border-bottom:1px solid var(--rule);padding-bottom:.4em}
+</style></head><body>
+ <article class=news>
+ <header class=nameplate>
+ <h1>PetSuites Chandler</h1>
+ <small>pet store · , AZ · Monday, May 4, 2026</small>
+ </header>
+ <section class=lead-story>
+ <div>
+ <h2>New: Same-day appointments are back, all weekdays.</h2>
+ <p class=sub>After a six-month staffing rebuild, we've reopened walk-in sick visits Monday through Friday. Call before 11 AM, see your DVM before 5.</p>
+ <a class=btn href=#book>Book today's visit</a>
+ </div>
+ <aside class=sidebar>
+ <h3>This week</h3>
+ <ul>
+ <li>Vaccine clinic — Saturday 9-12</li>
+ <li>Senior wellness day — every Wed</li>
+ <li>Free puppy meet-up — first Sat/mo</li>
+ <li>End-of-life consults — by appt</li>
+ </ul>
+ </aside>
+ </section>
+ <section class=col3>
+ <div><h3>General Practice</h3><p>Annual wellness exams, vaccinations, and personalized care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with continuous anesthetic monitoring.</p></div>
+ <div><h3>Specialty Referrals</h3><p>Cardiology, dermatology, oncology — we know the right specialists.</p></div>
+ </section>
+ <footer style="padding:2em 0;color:var(--muted)">77 West Willis Road, AZ, 85286 · +1-480-480-2137</footer>
+ </article></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18630-c.html b/public/mockups/biz-18630-c.html
new file mode 100644
index 0000000..51c3cfc
--- /dev/null
+++ b/public/mockups/biz-18630-c.html
@@ -0,0 +1,56 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Manrope%3Awght%40400%3B700%3B900%26family%3DManrope%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c0c10; --paper:#f8f0e8; --accent:#6b1820;
+ --accent2:#a18443; --muted:#73575a; --rule:#e6d4c3;
+ --h-font:'Manrope', serif; --b-font:'Manrope', system-ui, sans-serif;
+ --btn-r:10px; --card-r:12px; --card-shadow:0 4px 14px rgba(0,0,0,.06);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{font-feature-settings:'kern','liga'}
+ .auth-hero{padding:5em 4em 4em;border-bottom:6px solid var(--accent)}
+ .auth-hero h1{font-size:3.4em;font-weight:800;letter-spacing:-.025em;line-height:1.05;max-width:14ch}
+ .auth-hero .credentials{margin:1em 0 1.5em;font-size:1.1em;color:var(--muted)}
+ .auth-hero .credentials span{display:inline-block;background:var(--accent);color:var(--paper);padding:.2em .6em;border-radius:var(--btn-r);font-size:.85em;font-weight:700;margin-right:.5em;margin-bottom:.4em}
+ .specs{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ink);color:var(--paper)}
+ .specs > div{padding:2em;border-right:1px solid rgba(255,255,255,.1)}
+ .specs strong{display:block;font-size:2.2em;font-family:var(--h-font);color:var(--accent2);font-weight:900}
+ .specs span{display:block;color:rgba(255,255,255,.7);font-size:.9em;margin-top:.3em;text-transform:uppercase;letter-spacing:.1em}
+ .pillars{padding:4em;display:grid;grid-template-columns:repeat(2,1fr);gap:3em}
+ .pillars h3{font-size:1.6em;border-bottom:1px solid var(--rule);padding-bottom:.5em}
+ .pillars p{color:var(--muted);line-height:1.6}
+</style></head><body>
+ <header class=auth-hero>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">pet store · , AZ</small>
+ <h1>PetSuites Chandler</h1>
+ <div class=credentials>
+ <span>AAHA Accredited</span><span>24-Hour ICU</span><span>Board-Certified Specialists</span>
+ </div>
+ <a class=btn href=#refer>Refer a patient →</a>
+ </header>
+ <section class=specs>
+ <div><strong>15K+</strong><span>patients seen / yr</span></div>
+ <div><strong>9</strong><span>specialties on staff</span></div>
+ <div><strong>24/7</strong><span>emergency coverage</span></div>
+ <div><strong>14 yrs</strong><span>median DVM tenure</span></div>
+ </section>
+ <section class=pillars>
+ <div><h3>Internal Medicine</h3><p>Endocrine, gastrointestinal, hematology — diagnostics in-house, treatment plans coordinated with your primary vet.</p></div>
+ <div><h3>Cardiology</h3><p>Echocardiography, holter monitoring, BNP testing. Same-week appointments for complex cases.</p></div>
+ <div><h3>Surgery</h3><p>Soft-tissue, orthopedic, and neurosurgical procedures. Board-certified surgeons on every case.</p></div>
+ <div><h3>Oncology</h3><p>Chemotherapy, radiation referrals, palliative-care consults. We call you within 24h of every diagnosis.</p></div>
+ </section>
+ <footer style="padding:2em 4em;background:var(--ink);color:rgba(255,255,255,.7)">77 West Willis Road, AZ, 85286 · +1-480-480-2137</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18688-a.html b/public/mockups/biz-18688-a.html
new file mode 100644
index 0000000..64a2df5
--- /dev/null
+++ b/public/mockups/biz-18688-a.html
@@ -0,0 +1,45 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Source%2BSerif%2BPro%3Awght%40400%3B700%3B900%26family%3DSource%2BSans%2BPro%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1a1014; --paper:#fcf6f3; --accent:#9d2851;
+ --accent2:#3a4a3a; --muted:#8a6f78; --rule:#ebd7cf;
+ --h-font:'Source Serif Pro', serif; --b-font:'Source Sans Pro', system-ui, sans-serif;
+ --btn-r:12px; --card-r:14px; --card-shadow:0 16px 40px rgba(0,0,0,.12);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .hero{padding:7em 4em 6em;background:linear-gradient(140deg,#fcf6f3,#ebd7cf);text-align:left}
+ .hero small{text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700;font-size:.9em}
+ .hero h1{font-size:4em;margin:.3em 0;line-height:1.05;font-weight:900}
+ .hero p{font-size:1.25em;color:var(--muted);max-width:600px;margin:1em 0 2em}
+ .hero .btns{display:flex;gap:1em;align-items:center}
+ .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:var(--ink);color:var(--paper)}
+ .grid > div{padding:3em 2.5em;border-right:1px solid rgba(255,255,255,.1)}
+ .grid h3{font-size:1.4em;margin-bottom:.4em}
+ .grid p{color:rgba(255,255,255,.7);margin:0}
+ .foot{padding:2em 4em;background:var(--accent);color:var(--paper);text-align:center;font-weight:600}
+</style></head><body>
+ <section class=hero>
+ <small>pet store · Mesa, AZ</small>
+ <h1>PetSmart</h1>
+ <p>Veterinary care designed around your pet — and your day. Same-week appointments, transparent pricing, kind people.</p>
+ <div class=btns><a class=btn href=#book>Book online</a><a class=btn-ghost href=#about>Meet the team →</a></div>
+ </section>
+ <section class=grid>
+ <div><h3>Wellness</h3><p>Annual exams, vaccinations, and proactive care plans.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house, with same-day discharge for most procedures.</p></div>
+ <div><h3>Urgent Care</h3><p>Same-day sick visits — call us before going to the ER.</p></div>
+ </section>
+ <footer class=foot>PetSmart · 1858 South Signal Butte Road, Mesa, AZ, 85209 · +1 480-358-0948</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18688-b.html b/public/mockups/biz-18688-b.html
new file mode 100644
index 0000000..d07e47e
--- /dev/null
+++ b/public/mockups/biz-18688-b.html
@@ -0,0 +1,56 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Cormorant%2BGaramond%3Awght%40400%3B700%3B900%26family%3DLato%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1e1b3a; --paper:#faf5ff; --accent:#7c3aed;
+ --accent2:#d97706; --muted:#6b6989; --rule:#e9d5ff;
+ --h-font:'Cormorant Garamond', serif; --b-font:'Lato', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{font-feature-settings:'kern','liga'}
+ .auth-hero{padding:5em 4em 4em;border-bottom:6px solid var(--accent)}
+ .auth-hero h1{font-size:3.4em;font-weight:800;letter-spacing:-.025em;line-height:1.05;max-width:14ch}
+ .auth-hero .credentials{margin:1em 0 1.5em;font-size:1.1em;color:var(--muted)}
+ .auth-hero .credentials span{display:inline-block;background:var(--accent);color:var(--paper);padding:.2em .6em;border-radius:var(--btn-r);font-size:.85em;font-weight:700;margin-right:.5em;margin-bottom:.4em}
+ .specs{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ink);color:var(--paper)}
+ .specs > div{padding:2em;border-right:1px solid rgba(255,255,255,.1)}
+ .specs strong{display:block;font-size:2.2em;font-family:var(--h-font);color:var(--accent2);font-weight:900}
+ .specs span{display:block;color:rgba(255,255,255,.7);font-size:.9em;margin-top:.3em;text-transform:uppercase;letter-spacing:.1em}
+ .pillars{padding:4em;display:grid;grid-template-columns:repeat(2,1fr);gap:3em}
+ .pillars h3{font-size:1.6em;border-bottom:1px solid var(--rule);padding-bottom:.5em}
+ .pillars p{color:var(--muted);line-height:1.6}
+</style></head><body>
+ <header class=auth-hero>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">pet store · Mesa, AZ</small>
+ <h1>PetSmart</h1>
+ <div class=credentials>
+ <span>AAHA Accredited</span><span>24-Hour ICU</span><span>Board-Certified Specialists</span>
+ </div>
+ <a class=btn href=#refer>Refer a patient →</a>
+ </header>
+ <section class=specs>
+ <div><strong>15K+</strong><span>patients seen / yr</span></div>
+ <div><strong>9</strong><span>specialties on staff</span></div>
+ <div><strong>24/7</strong><span>emergency coverage</span></div>
+ <div><strong>14 yrs</strong><span>median DVM tenure</span></div>
+ </section>
+ <section class=pillars>
+ <div><h3>Internal Medicine</h3><p>Endocrine, gastrointestinal, hematology — diagnostics in-house, treatment plans coordinated with your primary vet.</p></div>
+ <div><h3>Cardiology</h3><p>Echocardiography, holter monitoring, BNP testing. Same-week appointments for complex cases.</p></div>
+ <div><h3>Surgery</h3><p>Soft-tissue, orthopedic, and neurosurgical procedures. Board-certified surgeons on every case.</p></div>
+ <div><h3>Oncology</h3><p>Chemotherapy, radiation referrals, palliative-care consults. We call you within 24h of every diagnosis.</p></div>
+ </section>
+ <footer style="padding:2em 4em;background:var(--ink);color:rgba(255,255,255,.7)">1858 South Signal Butte Road, Mesa, AZ, 85209 · +1 480-358-0948</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18688-c.html b/public/mockups/biz-18688-c.html
new file mode 100644
index 0000000..699e4d0
--- /dev/null
+++ b/public/mockups/biz-18688-c.html
@@ -0,0 +1,49 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Space%2BGrotesk%3Awght%40400%3B700%3B900%26family%3DSpace%2BGrotesk%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c0c10; --paper:#f8f0e8; --accent:#6b1820;
+ --accent2:#a18443; --muted:#73575a; --rule:#e6d4c3;
+ --h-font:'Space Grotesk', serif; --b-font:'Space Grotesk', system-ui, sans-serif;
+ --btn-r:10px; --card-r:12px; --card-shadow:0 4px 14px rgba(0,0,0,.06);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{background:var(--paper)}
+ .luxe{padding:6em 5em;max-width:1100px;margin:0 auto;text-align:center}
+ .luxe small{font-family:var(--h-font);font-style:italic;font-size:1em;color:var(--accent);letter-spacing:.05em}
+ .luxe h1{font-size:5em;margin:.2em 0;font-weight:400;letter-spacing:-.02em;line-height:1}
+ .luxe .tag{font-family:var(--h-font);font-style:italic;font-size:1.4em;color:var(--muted);margin:.5em 0 2em}
+ .luxe .ornament{display:block;margin:1.5em auto;width:120px;height:1px;background:var(--accent)}
+ .luxe p.intro{max-width:640px;margin:0 auto 2.5em;font-size:1.1em;line-height:1.7;color:var(--ink)}
+ .luxe .cta{display:inline-block;border:1px solid var(--ink);padding:1.1em 2.4em;letter-spacing:.2em;text-transform:uppercase;font-size:.85em;font-weight:600;color:var(--ink)}
+ .pillars2{display:grid;grid-template-columns:repeat(3,1fr);max-width:1100px;margin:0 auto;gap:0;border-top:1px solid var(--rule)}
+ .pillars2 > div{padding:3em 2em;border-right:1px solid var(--rule);text-align:center}
+ .pillars2 > div:last-child{border:0}
+ .pillars2 h3{font-family:var(--h-font);font-style:italic;font-size:1.4em;font-weight:400;color:var(--accent)}
+</style></head><body>
+ <main class=luxe>
+ <small>established · Mesa</small>
+ <h1>PetSmart</h1>
+ <div class=tag>A veterinary concierge for Mesa families.</div>
+ <span class=ornament></span>
+ <p class=intro>For thirty years, the same families have entrusted us with their pets — across generations, through every illness, every joy, every loss. We answer the phone ourselves. We remember what you fed your dog last summer. That is the practice we have built.</p>
+ <a class=cta href=#book>Become a client</a>
+ </main>
+ <section class=pillars2>
+ <div><h3>House calls</h3><p>For senior pets, end-of-life care, or pets who simply hate the car.</p></div>
+ <div><h3>Concierge medicine</h3><p>Direct cell-phone access to your DVM. No portal. No phone tree.</p></div>
+ <div><h3>Estate planning</h3><p>Pet-trust referrals, end-of-life planning, in-home euthanasia.</p></div>
+ </section>
+ <footer style="padding:3em;text-align:center;color:var(--muted);font-size:.85em">1858 South Signal Butte Road, Mesa, AZ, 85209 · +1 480-358-0948</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18696-a.html b/public/mockups/biz-18696-a.html
new file mode 100644
index 0000000..f1e1a72
--- /dev/null
+++ b/public/mockups/biz-18696-a.html
@@ -0,0 +1,50 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Libre%2BBaskerville%3Awght%40400%3B700%3B900%26family%3DOpen%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#222218; --paper:#f9f8f1; --accent:#5d6b3a;
+ --accent2:#c97a3e; --muted:#7d7c66; --rule:#e6e3d4;
+ --h-font:'Libre Baskerville', serif; --b-font:'Open Sans', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .nv{padding:1.5em 3em;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between}
+ .st-hero{padding:4em 3em;text-align:center}
+ .st-hero h1{font-size:3em;font-weight:800;margin:0 0 .3em}
+ .st-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:0;border-top:1px solid var(--rule)}
+ .st-tile{padding:3em 2em;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);transition:background .2s}
+ .st-tile:nth-child(4n){border-right:0}
+ .st-tile:hover{background:var(--rule)}
+ .st-tile .num{font-family:var(--h-font);font-size:1.5em;color:var(--accent);font-weight:900;display:block;margin-bottom:.5em}
+ .st-tile h3{font-size:1.2em;margin:.3em 0}
+ .st-tile p{color:var(--muted);font-size:.92em;line-height:1.5}
+</style></head><body>
+ <nav class=nv><strong>Superstition Stables Equestrian Center</strong><a class=btn href=#book>Book</a></nav>
+ <section class=st-hero>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">boarding · Apache Junction, AZ</small>
+ <h1>Care for the whole life of your pet.</h1>
+ <p class=muted>From the first puppy visit to the last quiet day.</p>
+ </section>
+ <section class=st-tiles>
+ <div class=st-tile><span class=num>01</span><h3>Puppy / kitten</h3><p>First exam, vaccine series, parasite plan.</p></div>
+ <div class=st-tile><span class=num>02</span><h3>Wellness</h3><p>Annual exams, dental check, nutrition.</p></div>
+ <div class=st-tile><span class=num>03</span><h3>Surgery</h3><p>Spay/neuter, soft-tissue, dental procedures.</p></div>
+ <div class=st-tile><span class=num>04</span><h3>Sick visits</h3><p>Same-day when we can fit you.</p></div>
+ <div class=st-tile><span class=num>05</span><h3>Diagnostics</h3><p>Bloodwork, imaging, ultrasound, in-house.</p></div>
+ <div class=st-tile><span class=num>06</span><h3>Senior care</h3><p>Quarterly check-ins for pets 8+.</p></div>
+ <div class=st-tile><span class=num>07</span><h3>Behavior</h3><p>Training referrals, anxiety meds, consults.</p></div>
+ <div class=st-tile><span class=num>08</span><h3>End of life</h3><p>In-home euthanasia + grief support.</p></div>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted)">2151 North Warner Drive, Apache Junction, AZ, 85120 · +1 480 620 3253</footer></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18696-b.html b/public/mockups/biz-18696-b.html
new file mode 100644
index 0000000..e0b75e9
--- /dev/null
+++ b/public/mockups/biz-18696-b.html
@@ -0,0 +1,51 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Space%2BGrotesk%3Awght%40400%3B700%3B900%26family%3DSpace%2BGrotesk%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c0c1c; --paper:#f4f3f6; --accent:#581c87;
+ --accent2:#737373; --muted:#787078; --rule:#d8d5e0;
+ --h-font:'Space Grotesk', serif; --b-font:'Space Grotesk', system-ui, sans-serif;
+ --btn-r:0; --card-r:0; --card-shadow:none;
+ --divider:solid 2px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .split{display:grid;grid-template-columns:1fr 1fr;min-height:100vh}
+ .split-left{padding:5em 4em;background:var(--accent);color:var(--paper);display:flex;flex-direction:column;justify-content:center}
+ .split-right{padding:5em 4em;background:var(--paper);display:flex;flex-direction:column;justify-content:center}
+ .split-left h1{font-size:3.6em;font-weight:900;letter-spacing:-.03em;line-height:1}
+ .split-left p{opacity:.85;font-size:1.15em;margin:1em 0 2em;max-width:480px}
+ .split-right h2{font-size:1.8em;margin-bottom:1em}
+ .svc{padding:1em 0;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;align-items:center}
+ .svc:last-child{border:0}
+ .svc strong{color:var(--ink)}
+ .svc small{color:var(--muted)}
+ .svc a{color:var(--accent);font-weight:600}
+</style></head><body>
+ <main class=split>
+ <section class=split-left>
+ <small style="opacity:.7;letter-spacing:.15em;text-transform:uppercase;font-weight:700">boarding</small>
+ <h1>Superstition Stables Equestrian Center</h1>
+ <p>Modern veterinary medicine. Honest prices. Real people who remember your pet's name.</p>
+ <div><a class=btn-2 href=#book>Book online</a></div>
+ </section>
+ <section class=split-right>
+ <h2>What we do</h2>
+ <div class=svc><div><strong>Annual wellness</strong><br><small>Includes vaccines + parasite prevention</small></div><a href=#>$95</a></div>
+ <div class=svc><div><strong>Sick visit</strong><br><small>Same-day when we can fit you</small></div><a href=#>$110</a></div>
+ <div class=svc><div><strong>Dental cleaning</strong><br><small>Includes anesthesia + monitoring</small></div><a href=#>From $450</a></div>
+ <div class=svc><div><strong>Spay/Neuter</strong><br><small>Cats and dogs both</small></div><a href=#>From $225</a></div>
+ <hr class=divider>
+ <p class=muted>2151 North Warner Drive, Apache Junction, AZ, 85120 · +1 480 620 3253</p>
+ </section>
+ </main></body></html>
\ No newline at end of file
diff --git a/public/mockups/biz-18696-c.html b/public/mockups/biz-18696-c.html
new file mode 100644
index 0000000..d413004
--- /dev/null
+++ b/public/mockups/biz-18696-c.html
@@ -0,0 +1,42 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=EB%2BGaramond%3Awght%40400%3B700%3B900%26family%3DKarla%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c1d2e; --paper:#f4f8fb; --accent:#0a4d6e;
+ --accent2:#e89241; --muted:#5d748a; --rule:#d5e1ea;
+ --h-font:'EB Garamond', serif; --b-font:'Karla', system-ui, sans-serif;
+ --btn-r:4px; --card-r:4px; --card-shadow:0 2px 4px rgba(0,0,0,.04);
+ --divider:solid 1px var(--accent);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .cal-hero{padding:4em 3em;text-align:center;background:linear-gradient(160deg,#d5e1ea,#f4f8fb)}
+ .cal-hero h1{font-size:3.4em;font-weight:800;margin:0 0 .3em}
+ .cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.5em;max-width:900px;margin:2em auto;padding:0 2em}
+ .cal-cell{background:#fff;padding:1em .5em;text-align:center;border-radius:var(--btn-r);box-shadow:var(--card-shadow);font-weight:600}
+ .cal-cell .dow{font-size:.7em;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;display:block}
+ .cal-cell .num{font-size:1.3em;font-family:var(--h-font);color:var(--accent);font-weight:900}
+ .cal-cell.closed{opacity:.3}
+ .cal-cell.open:hover{background:var(--accent);color:var(--paper);cursor:pointer}
+ .cal-cell.open:hover .num,.cal-cell.open:hover .dow{color:var(--paper)}
+</style></head><body>
+ <section class=cal-hero>
+ <small style="letter-spacing:.15em;text-transform:uppercase;color:var(--accent2);font-weight:700">boarding · Apache Junction, AZ</small>
+ <h1>Superstition Stables Equestrian Center</h1>
+ <p class=muted>Pick a day. We'll text you the openings.</p>
+ <div class=cal-grid>
+ <div class="cal-cell open"><span class=dow>Mon</span><span class=num>4</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>5</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>6</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>7</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>8</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>9</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>10</span></div><div class="cal-cell open"><span class=dow>Mon</span><span class=num>11</span></div><div class="cal-cell open"><span class=dow>Tue</span><span class=num>12</span></div><div class="cal-cell open"><span class=dow>Wed</span><span class=num>13</span></div><div class="cal-cell open"><span class=dow>Thu</span><span class=num>14</span></div><div class="cal-cell open"><span class=dow>Fri</span><span class=num>15</span></div><div class="cal-cell open"><span class=dow>Sat</span><span class=num>16</span></div><div class="cal-cell closed"><span class=dow>Sun</span><span class=num>17</span></div>
+ </div>
+ <a class=btn href=#book>Continue →</a>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">2151 North Warner Drive, Apache Junction, AZ, 85120 · +1 480 620 3253</footer></body></html>
\ No newline at end of file
diff --git a/public/sites/aquarium-adventure-hoffman-estates-il-5507/contact.html b/public/sites/aquarium-adventure-hoffman-estates-il-5507/contact.html
new file mode 100644
index 0000000..617d92d
--- /dev/null
+++ b/public/sites/aquarium-adventure-hoffman-estates-il-5507/contact.html
@@ -0,0 +1,55 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Cormorant%2BGaramond%3Awght%40400%3B700%3B900%26family%3DLato%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c1c0a; --paper:#fffce8; --accent:#a16207;
+ --accent2:#1e3a8a; --muted:#7d7d5c; --rule:#fde68a;
+ --h-font:'Cormorant Garamond', serif; --b-font:'Lato', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{background:var(--paper)}
+ .luxe{padding:6em 5em;max-width:1100px;margin:0 auto;text-align:center}
+ .luxe small{font-family:var(--h-font);font-style:italic;font-size:1em;color:var(--accent);letter-spacing:.05em}
+ .luxe h1{font-size:5em;margin:.2em 0;font-weight:400;letter-spacing:-.02em;line-height:1}
+ .luxe .tag{font-family:var(--h-font);font-style:italic;font-size:1.4em;color:var(--muted);margin:.5em 0 2em}
+ .luxe .ornament{display:block;margin:1.5em auto;width:120px;height:1px;background:var(--accent)}
+ .luxe p.intro{max-width:640px;margin:0 auto 2.5em;font-size:1.1em;line-height:1.7;color:var(--ink)}
+ .luxe .cta{display:inline-block;border:1px solid var(--ink);padding:1.1em 2.4em;letter-spacing:.2em;text-transform:uppercase;font-size:.85em;font-weight:600;color:var(--ink)}
+ .pillars2{display:grid;grid-template-columns:repeat(3,1fr);max-width:1100px;margin:0 auto;gap:0;border-top:1px solid var(--rule)}
+ .pillars2 > div{padding:3em 2em;border-right:1px solid var(--rule);text-align:center}
+ .pillars2 > div:last-child{border:0}
+ .pillars2 h3{font-family:var(--h-font);font-style:italic;font-size:1.4em;font-weight:400;color:var(--accent)}
+</style></head><body>
+ <main class=luxe>
+ <small>established · Hoffman Estates</small>
+ <h1>Aquarium Adventure</h1>
+ <div class=tag>A veterinary concierge for Hoffman Estates families.</div>
+ <span class=ornament></span>
+ <p class=intro>For thirty years, the same families have entrusted us with their pets — across generations, through every illness, every joy, every loss. We answer the phone ourselves. We remember what you fed your dog last summer. That is the practice we have built.</p>
+ <a class=cta href=#book>Become a client</a>
+ </main>
+ <section class=pillars2>
+ <div><h3>House calls</h3><p>For senior pets, end-of-life care, or pets who simply hate the car.</p></div>
+ <div><h3>Concierge medicine</h3><p>Direct cell-phone access to your DVM. No portal. No phone tree.</p></div>
+ <div><h3>Estate planning</h3><p>Pet-trust referrals, end-of-life planning, in-home euthanasia.</p></div>
+ </section>
+ <footer style="padding:3em;text-align:center;color:var(--muted);font-size:.85em">11 Golf Center, Hoffman Estates, IL, 60195 · +1-847-490-9334</footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Contact</h1>
+ <p style="line-height:1.7;font-size:1.1em"><strong>Aquarium Adventure</strong><br>
+ 11 Golf Center, Hoffman Estates, IL, 60195<br>
+ <a href="tel:+1-847-490-9334">+1-847-490-9334</a><br>
+
+ <a href="http://aquariumadventure.com/AquariumAdventureLocations.htm" target="_blank" rel="noopener">http://aquariumadventure.com/AquariumAdventureLocations.htm</a><br>
+ </p></section></body></html>
\ No newline at end of file
diff --git a/public/sites/aquarium-adventure-hoffman-estates-il-5507/index.html b/public/sites/aquarium-adventure-hoffman-estates-il-5507/index.html
new file mode 100644
index 0000000..5d5eb63
--- /dev/null
+++ b/public/sites/aquarium-adventure-hoffman-estates-il-5507/index.html
@@ -0,0 +1,49 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Cormorant%2BGaramond%3Awght%40400%3B700%3B900%26family%3DLato%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c1c0a; --paper:#fffce8; --accent:#a16207;
+ --accent2:#1e3a8a; --muted:#7d7d5c; --rule:#fde68a;
+ --h-font:'Cormorant Garamond', serif; --b-font:'Lato', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{background:var(--paper)}
+ .luxe{padding:6em 5em;max-width:1100px;margin:0 auto;text-align:center}
+ .luxe small{font-family:var(--h-font);font-style:italic;font-size:1em;color:var(--accent);letter-spacing:.05em}
+ .luxe h1{font-size:5em;margin:.2em 0;font-weight:400;letter-spacing:-.02em;line-height:1}
+ .luxe .tag{font-family:var(--h-font);font-style:italic;font-size:1.4em;color:var(--muted);margin:.5em 0 2em}
+ .luxe .ornament{display:block;margin:1.5em auto;width:120px;height:1px;background:var(--accent)}
+ .luxe p.intro{max-width:640px;margin:0 auto 2.5em;font-size:1.1em;line-height:1.7;color:var(--ink)}
+ .luxe .cta{display:inline-block;border:1px solid var(--ink);padding:1.1em 2.4em;letter-spacing:.2em;text-transform:uppercase;font-size:.85em;font-weight:600;color:var(--ink)}
+ .pillars2{display:grid;grid-template-columns:repeat(3,1fr);max-width:1100px;margin:0 auto;gap:0;border-top:1px solid var(--rule)}
+ .pillars2 > div{padding:3em 2em;border-right:1px solid var(--rule);text-align:center}
+ .pillars2 > div:last-child{border:0}
+ .pillars2 h3{font-family:var(--h-font);font-style:italic;font-size:1.4em;font-weight:400;color:var(--accent)}
+</style></head><body>
+ <main class=luxe>
+ <small>established · Hoffman Estates</small>
+ <h1>Aquarium Adventure</h1>
+ <div class=tag>A veterinary concierge for Hoffman Estates families.</div>
+ <span class=ornament></span>
+ <p class=intro>For thirty years, the same families have entrusted us with their pets — across generations, through every illness, every joy, every loss. We answer the phone ourselves. We remember what you fed your dog last summer. That is the practice we have built.</p>
+ <a class=cta href=#book>Become a client</a>
+ </main>
+ <section class=pillars2>
+ <div><h3>House calls</h3><p>For senior pets, end-of-life care, or pets who simply hate the car.</p></div>
+ <div><h3>Concierge medicine</h3><p>Direct cell-phone access to your DVM. No portal. No phone tree.</p></div>
+ <div><h3>Estate planning</h3><p>Pet-trust referrals, end-of-life planning, in-home euthanasia.</p></div>
+ </section>
+ <footer style="padding:3em;text-align:center;color:var(--muted);font-size:.85em">11 Golf Center, Hoffman Estates, IL, 60195 · +1-847-490-9334</footer></body></html>
\ No newline at end of file
diff --git a/public/sites/aquarium-adventure-hoffman-estates-il-5507/services.html b/public/sites/aquarium-adventure-hoffman-estates-il-5507/services.html
new file mode 100644
index 0000000..a79a155
--- /dev/null
+++ b/public/sites/aquarium-adventure-hoffman-estates-il-5507/services.html
@@ -0,0 +1,57 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Cormorant%2BGaramond%3Awght%40400%3B700%3B900%26family%3DLato%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c1c0a; --paper:#fffce8; --accent:#a16207;
+ --accent2:#1e3a8a; --muted:#7d7d5c; --rule:#fde68a;
+ --h-font:'Cormorant Garamond', serif; --b-font:'Lato', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{background:var(--paper)}
+ .luxe{padding:6em 5em;max-width:1100px;margin:0 auto;text-align:center}
+ .luxe small{font-family:var(--h-font);font-style:italic;font-size:1em;color:var(--accent);letter-spacing:.05em}
+ .luxe h1{font-size:5em;margin:.2em 0;font-weight:400;letter-spacing:-.02em;line-height:1}
+ .luxe .tag{font-family:var(--h-font);font-style:italic;font-size:1.4em;color:var(--muted);margin:.5em 0 2em}
+ .luxe .ornament{display:block;margin:1.5em auto;width:120px;height:1px;background:var(--accent)}
+ .luxe p.intro{max-width:640px;margin:0 auto 2.5em;font-size:1.1em;line-height:1.7;color:var(--ink)}
+ .luxe .cta{display:inline-block;border:1px solid var(--ink);padding:1.1em 2.4em;letter-spacing:.2em;text-transform:uppercase;font-size:.85em;font-weight:600;color:var(--ink)}
+ .pillars2{display:grid;grid-template-columns:repeat(3,1fr);max-width:1100px;margin:0 auto;gap:0;border-top:1px solid var(--rule)}
+ .pillars2 > div{padding:3em 2em;border-right:1px solid var(--rule);text-align:center}
+ .pillars2 > div:last-child{border:0}
+ .pillars2 h3{font-family:var(--h-font);font-style:italic;font-size:1.4em;font-weight:400;color:var(--accent)}
+</style></head><body>
+ <main class=luxe>
+ <small>established · Hoffman Estates</small>
+ <h1>Aquarium Adventure</h1>
+ <div class=tag>A veterinary concierge for Hoffman Estates families.</div>
+ <span class=ornament></span>
+ <p class=intro>For thirty years, the same families have entrusted us with their pets — across generations, through every illness, every joy, every loss. We answer the phone ourselves. We remember what you fed your dog last summer. That is the practice we have built.</p>
+ <a class=cta href=#book>Become a client</a>
+ </main>
+ <section class=pillars2>
+ <div><h3>House calls</h3><p>For senior pets, end-of-life care, or pets who simply hate the car.</p></div>
+ <div><h3>Concierge medicine</h3><p>Direct cell-phone access to your DVM. No portal. No phone tree.</p></div>
+ <div><h3>Estate planning</h3><p>Pet-trust referrals, end-of-life planning, in-home euthanasia.</p></div>
+ </section>
+ <footer style="padding:3em;text-align:center;color:var(--muted);font-size:.85em">11 Golf Center, Hoffman Estates, IL, 60195 · +1-847-490-9334</footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Our Services</h1>
+ <ul style="line-height:2;font-size:1.1em">
+ <li>Annual wellness exams + vaccinations</li>
+ <li>Same-day sick visits (M-F before 11 AM)</li>
+ <li>In-house surgical suite with continuous anesthetic monitoring</li>
+ <li>Dental cleanings + extractions</li>
+ <li>Specialty referrals (cardiology, dermatology, oncology)</li>
+ <li>End-of-life consultations + in-home euthanasia</li>
+ </ul></section></body></html>
\ No newline at end of file
diff --git a/public/sites/aquarium-adventure-hoffman-estates-il-5507/team.html b/public/sites/aquarium-adventure-hoffman-estates-il-5507/team.html
new file mode 100644
index 0000000..42f02f3
--- /dev/null
+++ b/public/sites/aquarium-adventure-hoffman-estates-il-5507/team.html
@@ -0,0 +1,50 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Cormorant%2BGaramond%3Awght%40400%3B700%3B900%26family%3DLato%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c1c0a; --paper:#fffce8; --accent:#a16207;
+ --accent2:#1e3a8a; --muted:#7d7d5c; --rule:#fde68a;
+ --h-font:'Cormorant Garamond', serif; --b-font:'Lato', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{background:var(--paper)}
+ .luxe{padding:6em 5em;max-width:1100px;margin:0 auto;text-align:center}
+ .luxe small{font-family:var(--h-font);font-style:italic;font-size:1em;color:var(--accent);letter-spacing:.05em}
+ .luxe h1{font-size:5em;margin:.2em 0;font-weight:400;letter-spacing:-.02em;line-height:1}
+ .luxe .tag{font-family:var(--h-font);font-style:italic;font-size:1.4em;color:var(--muted);margin:.5em 0 2em}
+ .luxe .ornament{display:block;margin:1.5em auto;width:120px;height:1px;background:var(--accent)}
+ .luxe p.intro{max-width:640px;margin:0 auto 2.5em;font-size:1.1em;line-height:1.7;color:var(--ink)}
+ .luxe .cta{display:inline-block;border:1px solid var(--ink);padding:1.1em 2.4em;letter-spacing:.2em;text-transform:uppercase;font-size:.85em;font-weight:600;color:var(--ink)}
+ .pillars2{display:grid;grid-template-columns:repeat(3,1fr);max-width:1100px;margin:0 auto;gap:0;border-top:1px solid var(--rule)}
+ .pillars2 > div{padding:3em 2em;border-right:1px solid var(--rule);text-align:center}
+ .pillars2 > div:last-child{border:0}
+ .pillars2 h3{font-family:var(--h-font);font-style:italic;font-size:1.4em;font-weight:400;color:var(--accent)}
+</style></head><body>
+ <main class=luxe>
+ <small>established · Hoffman Estates</small>
+ <h1>Aquarium Adventure</h1>
+ <div class=tag>A veterinary concierge for Hoffman Estates families.</div>
+ <span class=ornament></span>
+ <p class=intro>For thirty years, the same families have entrusted us with their pets — across generations, through every illness, every joy, every loss. We answer the phone ourselves. We remember what you fed your dog last summer. That is the practice we have built.</p>
+ <a class=cta href=#book>Become a client</a>
+ </main>
+ <section class=pillars2>
+ <div><h3>House calls</h3><p>For senior pets, end-of-life care, or pets who simply hate the car.</p></div>
+ <div><h3>Concierge medicine</h3><p>Direct cell-phone access to your DVM. No portal. No phone tree.</p></div>
+ <div><h3>Estate planning</h3><p>Pet-trust referrals, end-of-life planning, in-home euthanasia.</p></div>
+ </section>
+ <footer style="padding:3em;text-align:center;color:var(--muted);font-size:.85em">11 Golf Center, Hoffman Estates, IL, 60195 · +1-847-490-9334</footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Our Team</h1>
+ <p style="line-height:1.7;font-size:1.1em">Board-certified veterinarians, Fear Free Certified® technicians, and front-desk staff who remember your pet's name. Photos + bios coming soon — call us at +1-847-490-9334 for an introduction.</p></section></body></html>
\ No newline at end of file
diff --git a/public/sites/bark-n-call-pet-shop-grooming-winthrop-harbor-il-5510/contact.html b/public/sites/bark-n-call-pet-shop-grooming-winthrop-harbor-il-5510/contact.html
new file mode 100644
index 0000000..68a1578
--- /dev/null
+++ b/public/sites/bark-n-call-pet-shop-grooming-winthrop-harbor-il-5510/contact.html
@@ -0,0 +1,51 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lora%3Awght%40400%3B700%3B900%26family%3DPublic%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c0c0c; --paper:#fcfcfa; --accent:#0a0a0a;
+ --accent2:#d4a017; --muted:#5e5e5e; --rule:#e5e5e0;
+ --h-font:'Lora', serif; --b-font:'Public Sans', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pl-hero{padding:5em 3em;background:var(--accent);color:var(--paper);position:relative;overflow:hidden}
+ .pl-hero:after{content:"🐶 🐱 🐾 🦴 🐾 🐶 🐱 🦴";position:absolute;top:0;right:-20%;font-size:14em;opacity:.05;line-height:1;letter-spacing:.5em}
+ .pl-hero h1{font-size:4.5em;font-weight:900;letter-spacing:-.03em;line-height:1;max-width:14ch;margin:0 0 .3em;color:var(--paper)}
+ .pl-hero p{font-size:1.3em;opacity:.9;max-width:600px;margin:1em 0 2em}
+ .pl-hero .btn{background:var(--accent2);color:#fff}
+ .pl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5em;padding:3em;max-width:1200px;margin:0 auto}
+ .pl-card{background:#fff;padding:2em;border-radius:var(--card-r);box-shadow:var(--card-shadow);text-align:center}
+ .pl-card .emoji{font-size:3em;line-height:1}
+ .pl-card h3{margin:.4em 0;font-size:1.3em}
+ .pl-card p{margin:0;color:var(--muted);font-size:.95em}
+</style></head><body>
+ <section class=pl-hero>
+ <small style="opacity:.7;font-weight:700;letter-spacing:.15em;text-transform:uppercase">pet store</small>
+ <h1>Bark N Call Pet Shop & Grooming</h1>
+ <p>The Winthrop Harbor vet your dog actually wants to visit. Treats, head scratches, and zero waiting-room shaking.</p>
+ <a class=btn href=#book>Book online →</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>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">717 Sheridan Road, Winthrop Harbor, IL, 60096 · +1 847-731-7280</footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Contact</h1>
+ <p style="line-height:1.7;font-size:1.1em"><strong>Bark N Call Pet Shop & Grooming</strong><br>
+ 717 Sheridan Road, Winthrop Harbor, IL, 60096<br>
+ <a href="tel:+1 847-731-7280">+1 847-731-7280</a><br>
+
+ <a href="https://www.barkncallpetshop.com/" target="_blank" rel="noopener">https://www.barkncallpetshop.com/</a><br>
+ </p></section></body></html>
\ No newline at end of file
diff --git a/public/sites/bark-n-call-pet-shop-grooming-winthrop-harbor-il-5510/index.html b/public/sites/bark-n-call-pet-shop-grooming-winthrop-harbor-il-5510/index.html
new file mode 100644
index 0000000..2bb4c8f
--- /dev/null
+++ b/public/sites/bark-n-call-pet-shop-grooming-winthrop-harbor-il-5510/index.html
@@ -0,0 +1,45 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lora%3Awght%40400%3B700%3B900%26family%3DPublic%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c0c0c; --paper:#fcfcfa; --accent:#0a0a0a;
+ --accent2:#d4a017; --muted:#5e5e5e; --rule:#e5e5e0;
+ --h-font:'Lora', serif; --b-font:'Public Sans', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pl-hero{padding:5em 3em;background:var(--accent);color:var(--paper);position:relative;overflow:hidden}
+ .pl-hero:after{content:"🐶 🐱 🐾 🦴 🐾 🐶 🐱 🦴";position:absolute;top:0;right:-20%;font-size:14em;opacity:.05;line-height:1;letter-spacing:.5em}
+ .pl-hero h1{font-size:4.5em;font-weight:900;letter-spacing:-.03em;line-height:1;max-width:14ch;margin:0 0 .3em;color:var(--paper)}
+ .pl-hero p{font-size:1.3em;opacity:.9;max-width:600px;margin:1em 0 2em}
+ .pl-hero .btn{background:var(--accent2);color:#fff}
+ .pl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5em;padding:3em;max-width:1200px;margin:0 auto}
+ .pl-card{background:#fff;padding:2em;border-radius:var(--card-r);box-shadow:var(--card-shadow);text-align:center}
+ .pl-card .emoji{font-size:3em;line-height:1}
+ .pl-card h3{margin:.4em 0;font-size:1.3em}
+ .pl-card p{margin:0;color:var(--muted);font-size:.95em}
+</style></head><body>
+ <section class=pl-hero>
+ <small style="opacity:.7;font-weight:700;letter-spacing:.15em;text-transform:uppercase">pet store</small>
+ <h1>Bark N Call Pet Shop & Grooming</h1>
+ <p>The Winthrop Harbor vet your dog actually wants to visit. Treats, head scratches, and zero waiting-room shaking.</p>
+ <a class=btn href=#book>Book online →</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>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">717 Sheridan Road, Winthrop Harbor, IL, 60096 · +1 847-731-7280</footer></body></html>
\ No newline at end of file
diff --git a/public/sites/bark-n-call-pet-shop-grooming-winthrop-harbor-il-5510/services.html b/public/sites/bark-n-call-pet-shop-grooming-winthrop-harbor-il-5510/services.html
new file mode 100644
index 0000000..227ace6
--- /dev/null
+++ b/public/sites/bark-n-call-pet-shop-grooming-winthrop-harbor-il-5510/services.html
@@ -0,0 +1,53 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lora%3Awght%40400%3B700%3B900%26family%3DPublic%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c0c0c; --paper:#fcfcfa; --accent:#0a0a0a;
+ --accent2:#d4a017; --muted:#5e5e5e; --rule:#e5e5e0;
+ --h-font:'Lora', serif; --b-font:'Public Sans', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pl-hero{padding:5em 3em;background:var(--accent);color:var(--paper);position:relative;overflow:hidden}
+ .pl-hero:after{content:"🐶 🐱 🐾 🦴 🐾 🐶 🐱 🦴";position:absolute;top:0;right:-20%;font-size:14em;opacity:.05;line-height:1;letter-spacing:.5em}
+ .pl-hero h1{font-size:4.5em;font-weight:900;letter-spacing:-.03em;line-height:1;max-width:14ch;margin:0 0 .3em;color:var(--paper)}
+ .pl-hero p{font-size:1.3em;opacity:.9;max-width:600px;margin:1em 0 2em}
+ .pl-hero .btn{background:var(--accent2);color:#fff}
+ .pl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5em;padding:3em;max-width:1200px;margin:0 auto}
+ .pl-card{background:#fff;padding:2em;border-radius:var(--card-r);box-shadow:var(--card-shadow);text-align:center}
+ .pl-card .emoji{font-size:3em;line-height:1}
+ .pl-card h3{margin:.4em 0;font-size:1.3em}
+ .pl-card p{margin:0;color:var(--muted);font-size:.95em}
+</style></head><body>
+ <section class=pl-hero>
+ <small style="opacity:.7;font-weight:700;letter-spacing:.15em;text-transform:uppercase">pet store</small>
+ <h1>Bark N Call Pet Shop & Grooming</h1>
+ <p>The Winthrop Harbor vet your dog actually wants to visit. Treats, head scratches, and zero waiting-room shaking.</p>
+ <a class=btn href=#book>Book online →</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>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">717 Sheridan Road, Winthrop Harbor, IL, 60096 · +1 847-731-7280</footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Our Services</h1>
+ <ul style="line-height:2;font-size:1.1em">
+ <li>Annual wellness exams + vaccinations</li>
+ <li>Same-day sick visits (M-F before 11 AM)</li>
+ <li>In-house surgical suite with continuous anesthetic monitoring</li>
+ <li>Dental cleanings + extractions</li>
+ <li>Specialty referrals (cardiology, dermatology, oncology)</li>
+ <li>End-of-life consultations + in-home euthanasia</li>
+ </ul></section></body></html>
\ No newline at end of file
diff --git a/public/sites/bark-n-call-pet-shop-grooming-winthrop-harbor-il-5510/team.html b/public/sites/bark-n-call-pet-shop-grooming-winthrop-harbor-il-5510/team.html
new file mode 100644
index 0000000..f488c00
--- /dev/null
+++ b/public/sites/bark-n-call-pet-shop-grooming-winthrop-harbor-il-5510/team.html
@@ -0,0 +1,46 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Lora%3Awght%40400%3B700%3B900%26family%3DPublic%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c0c0c; --paper:#fcfcfa; --accent:#0a0a0a;
+ --accent2:#d4a017; --muted:#5e5e5e; --rule:#e5e5e0;
+ --h-font:'Lora', serif; --b-font:'Public Sans', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:none;
+ --divider:double 3px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pl-hero{padding:5em 3em;background:var(--accent);color:var(--paper);position:relative;overflow:hidden}
+ .pl-hero:after{content:"🐶 🐱 🐾 🦴 🐾 🐶 🐱 🦴";position:absolute;top:0;right:-20%;font-size:14em;opacity:.05;line-height:1;letter-spacing:.5em}
+ .pl-hero h1{font-size:4.5em;font-weight:900;letter-spacing:-.03em;line-height:1;max-width:14ch;margin:0 0 .3em;color:var(--paper)}
+ .pl-hero p{font-size:1.3em;opacity:.9;max-width:600px;margin:1em 0 2em}
+ .pl-hero .btn{background:var(--accent2);color:#fff}
+ .pl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5em;padding:3em;max-width:1200px;margin:0 auto}
+ .pl-card{background:#fff;padding:2em;border-radius:var(--card-r);box-shadow:var(--card-shadow);text-align:center}
+ .pl-card .emoji{font-size:3em;line-height:1}
+ .pl-card h3{margin:.4em 0;font-size:1.3em}
+ .pl-card p{margin:0;color:var(--muted);font-size:.95em}
+</style></head><body>
+ <section class=pl-hero>
+ <small style="opacity:.7;font-weight:700;letter-spacing:.15em;text-transform:uppercase">pet store</small>
+ <h1>Bark N Call Pet Shop & Grooming</h1>
+ <p>The Winthrop Harbor vet your dog actually wants to visit. Treats, head scratches, and zero waiting-room shaking.</p>
+ <a class=btn href=#book>Book online →</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>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">717 Sheridan Road, Winthrop Harbor, IL, 60096 · +1 847-731-7280</footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Our Team</h1>
+ <p style="line-height:1.7;font-size:1.1em">Board-certified veterinarians, Fear Free Certified® technicians, and front-desk staff who remember your pet's name. Photos + bios coming soon — call us at +1 847-731-7280 for an introduction.</p></section></body></html>
\ No newline at end of file
diff --git a/public/sites/birds-and-beasts-pet-shop-crystal-lake-il-5488/contact.html b/public/sites/birds-and-beasts-pet-shop-crystal-lake-il-5488/contact.html
new file mode 100644
index 0000000..2057a72
--- /dev/null
+++ b/public/sites/birds-and-beasts-pet-shop-crystal-lake-il-5488/contact.html
@@ -0,0 +1,66 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=EB%2BGaramond%3Awght%40400%3B700%3B900%26family%3DKarla%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0f172a; --paper:#f0f9ff; --accent:#0284c7;
+ --accent2:#facc15; --muted:#475569; --rule:#bae6fd;
+ --h-font:'EB Garamond', serif; --b-font:'Karla', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .nav{padding:1.2em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule)}
+ .nav strong{font-size:1.1em}
+ .hero2{display:grid;grid-template-columns:1.4fr 1fr;padding:5em 3em;gap:4em;align-items:start}
+ .hero2 h1{font-size:3.2em;font-weight:800;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .hero2 .sub{font-size:1.15em;color:var(--muted);max-width:560px;margin:0 0 2em}
+ .booking{background:#fff;border:2px solid var(--ink);border-radius:var(--card-r);padding:2em}
+ .booking h3{margin:0 0 1em;font-size:1.3em}
+ .booking label{display:block;margin:.7em 0 .2em;font-weight:600;font-size:.92em}
+ .booking input,.booking select{width:100%;padding:.6em .8em;border:1px solid var(--rule);border-radius:var(--btn-r);font:inherit}
+ .booking button{margin-top:1em;width:100%;background:var(--accent);color:var(--paper);border:0;padding:1em;font-weight:700;font-size:1.05em;border-radius:var(--btn-r);cursor:pointer}
+ .why{padding:3em;background:var(--rule)}
+ .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;max-width:1100px;margin:0 auto}
+ .why-grid > div{background:var(--paper);padding:1.5em;border-radius:var(--card-r)}
+</style></head><body>
+ <nav class=nav><strong>Birds and Beasts Pet Shop</strong><a class=btn href=#book>Book online</a></nav>
+ <section class=hero2>
+ <div>
+ <h1>Skip the phone. Book your visit in 60 seconds.</h1>
+ <p class=sub>Real-time availability. Choose your doctor. Add your pet's symptoms. We'll send a confirmation by email + text.</p>
+ <p class=muted>★ 4.9 from 412 Crystal Lake pet families</p>
+ </div>
+ <form class=booking>
+ <h3>Request an appointment</h3>
+ <label>Your name</label><input placeholder="Jane Doe">
+ <label>Email</label><input placeholder="you@example.com">
+ <label>Pet & reason</label><select><option>Dog — wellness</option><option>Cat — sick visit</option><option>Other</option></select>
+ <label>Preferred day</label><input type=date>
+ <button>Request appointment</button>
+ </form>
+ </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>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted)">35 Berkshire Drive, Crystal Lake, IL, 60014 · +1- 815-477-7387</footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Contact</h1>
+ <p style="line-height:1.7;font-size:1.1em"><strong>Birds and Beasts Pet Shop</strong><br>
+ 35 Berkshire Drive, Crystal Lake, IL, 60014<br>
+ <a href="tel:+1- 815-477-7387">+1- 815-477-7387</a><br>
+
+ <a href="https://www.birdsandbeastspetshop.com/" target="_blank" rel="noopener">https://www.birdsandbeastspetshop.com/</a><br>
+ </p></section></body></html>
\ No newline at end of file
diff --git a/public/sites/birds-and-beasts-pet-shop-crystal-lake-il-5488/index.html b/public/sites/birds-and-beasts-pet-shop-crystal-lake-il-5488/index.html
new file mode 100644
index 0000000..0a54584
--- /dev/null
+++ b/public/sites/birds-and-beasts-pet-shop-crystal-lake-il-5488/index.html
@@ -0,0 +1,60 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=EB%2BGaramond%3Awght%40400%3B700%3B900%26family%3DKarla%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0f172a; --paper:#f0f9ff; --accent:#0284c7;
+ --accent2:#facc15; --muted:#475569; --rule:#bae6fd;
+ --h-font:'EB Garamond', serif; --b-font:'Karla', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .nav{padding:1.2em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule)}
+ .nav strong{font-size:1.1em}
+ .hero2{display:grid;grid-template-columns:1.4fr 1fr;padding:5em 3em;gap:4em;align-items:start}
+ .hero2 h1{font-size:3.2em;font-weight:800;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .hero2 .sub{font-size:1.15em;color:var(--muted);max-width:560px;margin:0 0 2em}
+ .booking{background:#fff;border:2px solid var(--ink);border-radius:var(--card-r);padding:2em}
+ .booking h3{margin:0 0 1em;font-size:1.3em}
+ .booking label{display:block;margin:.7em 0 .2em;font-weight:600;font-size:.92em}
+ .booking input,.booking select{width:100%;padding:.6em .8em;border:1px solid var(--rule);border-radius:var(--btn-r);font:inherit}
+ .booking button{margin-top:1em;width:100%;background:var(--accent);color:var(--paper);border:0;padding:1em;font-weight:700;font-size:1.05em;border-radius:var(--btn-r);cursor:pointer}
+ .why{padding:3em;background:var(--rule)}
+ .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;max-width:1100px;margin:0 auto}
+ .why-grid > div{background:var(--paper);padding:1.5em;border-radius:var(--card-r)}
+</style></head><body>
+ <nav class=nav><strong>Birds and Beasts Pet Shop</strong><a class=btn href=#book>Book online</a></nav>
+ <section class=hero2>
+ <div>
+ <h1>Skip the phone. Book your visit in 60 seconds.</h1>
+ <p class=sub>Real-time availability. Choose your doctor. Add your pet's symptoms. We'll send a confirmation by email + text.</p>
+ <p class=muted>★ 4.9 from 412 Crystal Lake pet families</p>
+ </div>
+ <form class=booking>
+ <h3>Request an appointment</h3>
+ <label>Your name</label><input placeholder="Jane Doe">
+ <label>Email</label><input placeholder="you@example.com">
+ <label>Pet & reason</label><select><option>Dog — wellness</option><option>Cat — sick visit</option><option>Other</option></select>
+ <label>Preferred day</label><input type=date>
+ <button>Request appointment</button>
+ </form>
+ </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>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted)">35 Berkshire Drive, Crystal Lake, IL, 60014 · +1- 815-477-7387</footer></body></html>
\ No newline at end of file
diff --git a/public/sites/birds-and-beasts-pet-shop-crystal-lake-il-5488/services.html b/public/sites/birds-and-beasts-pet-shop-crystal-lake-il-5488/services.html
new file mode 100644
index 0000000..a3c4e5d
--- /dev/null
+++ b/public/sites/birds-and-beasts-pet-shop-crystal-lake-il-5488/services.html
@@ -0,0 +1,68 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=EB%2BGaramond%3Awght%40400%3B700%3B900%26family%3DKarla%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0f172a; --paper:#f0f9ff; --accent:#0284c7;
+ --accent2:#facc15; --muted:#475569; --rule:#bae6fd;
+ --h-font:'EB Garamond', serif; --b-font:'Karla', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .nav{padding:1.2em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule)}
+ .nav strong{font-size:1.1em}
+ .hero2{display:grid;grid-template-columns:1.4fr 1fr;padding:5em 3em;gap:4em;align-items:start}
+ .hero2 h1{font-size:3.2em;font-weight:800;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .hero2 .sub{font-size:1.15em;color:var(--muted);max-width:560px;margin:0 0 2em}
+ .booking{background:#fff;border:2px solid var(--ink);border-radius:var(--card-r);padding:2em}
+ .booking h3{margin:0 0 1em;font-size:1.3em}
+ .booking label{display:block;margin:.7em 0 .2em;font-weight:600;font-size:.92em}
+ .booking input,.booking select{width:100%;padding:.6em .8em;border:1px solid var(--rule);border-radius:var(--btn-r);font:inherit}
+ .booking button{margin-top:1em;width:100%;background:var(--accent);color:var(--paper);border:0;padding:1em;font-weight:700;font-size:1.05em;border-radius:var(--btn-r);cursor:pointer}
+ .why{padding:3em;background:var(--rule)}
+ .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;max-width:1100px;margin:0 auto}
+ .why-grid > div{background:var(--paper);padding:1.5em;border-radius:var(--card-r)}
+</style></head><body>
+ <nav class=nav><strong>Birds and Beasts Pet Shop</strong><a class=btn href=#book>Book online</a></nav>
+ <section class=hero2>
+ <div>
+ <h1>Skip the phone. Book your visit in 60 seconds.</h1>
+ <p class=sub>Real-time availability. Choose your doctor. Add your pet's symptoms. We'll send a confirmation by email + text.</p>
+ <p class=muted>★ 4.9 from 412 Crystal Lake pet families</p>
+ </div>
+ <form class=booking>
+ <h3>Request an appointment</h3>
+ <label>Your name</label><input placeholder="Jane Doe">
+ <label>Email</label><input placeholder="you@example.com">
+ <label>Pet & reason</label><select><option>Dog — wellness</option><option>Cat — sick visit</option><option>Other</option></select>
+ <label>Preferred day</label><input type=date>
+ <button>Request appointment</button>
+ </form>
+ </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>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted)">35 Berkshire Drive, Crystal Lake, IL, 60014 · +1- 815-477-7387</footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Our Services</h1>
+ <ul style="line-height:2;font-size:1.1em">
+ <li>Annual wellness exams + vaccinations</li>
+ <li>Same-day sick visits (M-F before 11 AM)</li>
+ <li>In-house surgical suite with continuous anesthetic monitoring</li>
+ <li>Dental cleanings + extractions</li>
+ <li>Specialty referrals (cardiology, dermatology, oncology)</li>
+ <li>End-of-life consultations + in-home euthanasia</li>
+ </ul></section></body></html>
\ No newline at end of file
diff --git a/public/sites/birds-and-beasts-pet-shop-crystal-lake-il-5488/team.html b/public/sites/birds-and-beasts-pet-shop-crystal-lake-il-5488/team.html
new file mode 100644
index 0000000..c048a97
--- /dev/null
+++ b/public/sites/birds-and-beasts-pet-shop-crystal-lake-il-5488/team.html
@@ -0,0 +1,61 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=EB%2BGaramond%3Awght%40400%3B700%3B900%26family%3DKarla%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0f172a; --paper:#f0f9ff; --accent:#0284c7;
+ --accent2:#facc15; --muted:#475569; --rule:#bae6fd;
+ --h-font:'EB Garamond', serif; --b-font:'Karla', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .nav{padding:1.2em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule)}
+ .nav strong{font-size:1.1em}
+ .hero2{display:grid;grid-template-columns:1.4fr 1fr;padding:5em 3em;gap:4em;align-items:start}
+ .hero2 h1{font-size:3.2em;font-weight:800;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .hero2 .sub{font-size:1.15em;color:var(--muted);max-width:560px;margin:0 0 2em}
+ .booking{background:#fff;border:2px solid var(--ink);border-radius:var(--card-r);padding:2em}
+ .booking h3{margin:0 0 1em;font-size:1.3em}
+ .booking label{display:block;margin:.7em 0 .2em;font-weight:600;font-size:.92em}
+ .booking input,.booking select{width:100%;padding:.6em .8em;border:1px solid var(--rule);border-radius:var(--btn-r);font:inherit}
+ .booking button{margin-top:1em;width:100%;background:var(--accent);color:var(--paper);border:0;padding:1em;font-weight:700;font-size:1.05em;border-radius:var(--btn-r);cursor:pointer}
+ .why{padding:3em;background:var(--rule)}
+ .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;max-width:1100px;margin:0 auto}
+ .why-grid > div{background:var(--paper);padding:1.5em;border-radius:var(--card-r)}
+</style></head><body>
+ <nav class=nav><strong>Birds and Beasts Pet Shop</strong><a class=btn href=#book>Book online</a></nav>
+ <section class=hero2>
+ <div>
+ <h1>Skip the phone. Book your visit in 60 seconds.</h1>
+ <p class=sub>Real-time availability. Choose your doctor. Add your pet's symptoms. We'll send a confirmation by email + text.</p>
+ <p class=muted>★ 4.9 from 412 Crystal Lake pet families</p>
+ </div>
+ <form class=booking>
+ <h3>Request an appointment</h3>
+ <label>Your name</label><input placeholder="Jane Doe">
+ <label>Email</label><input placeholder="you@example.com">
+ <label>Pet & reason</label><select><option>Dog — wellness</option><option>Cat — sick visit</option><option>Other</option></select>
+ <label>Preferred day</label><input type=date>
+ <button>Request appointment</button>
+ </form>
+ </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>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted)">35 Berkshire Drive, Crystal Lake, IL, 60014 · +1- 815-477-7387</footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Our Team</h1>
+ <p style="line-height:1.7;font-size:1.1em">Board-certified veterinarians, Fear Free Certified® technicians, and front-desk staff who remember your pet's name. Photos + bios coming soon — call us at +1- 815-477-7387 for an introduction.</p></section></body></html>
\ No newline at end of file
diff --git a/public/sites/coble-animal-hospital-springfield-il-5470/contact.html b/public/sites/coble-animal-hospital-springfield-il-5470/contact.html
new file mode 100644
index 0000000..b092aaf
--- /dev/null
+++ b/public/sites/coble-animal-hospital-springfield-il-5470/contact.html
@@ -0,0 +1,65 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito%3Awght%40400%3B700%3B900%26family%3DNunito%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1e1b3a; --paper:#faf5ff; --accent:#7c3aed;
+ --accent2:#d97706; --muted:#6b6989; --rule:#e9d5ff;
+ --h-font:'Nunito', serif; --b-font:'Nunito', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pagewrap{max-width:1100px;margin:0 auto;padding:3em 3em}
+ .masthead{border-top:6px solid var(--ink);border-bottom:1px solid var(--rule);padding:1em 0;display:flex;justify-content:space-between;align-items:baseline}
+ .masthead h1{font-size:2.4em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .masthead .date{color:var(--muted);font-size:.9em;letter-spacing:.1em;text-transform:uppercase}
+ .feature{display:grid;grid-template-columns:2fr 1fr;gap:3em;padding:3em 0;border-bottom:1px solid var(--rule)}
+ .feature h2{font-size:3.2em;line-height:1.05;font-weight:700;margin:0 0 .4em}
+ .feature .lead{font-size:1.2em;color:var(--ink);line-height:1.6}
+ .feature aside{border-left:3px solid var(--accent);padding-left:1.5em}
+ .feature aside h4{margin:0 0 .4em;font-size:1.1em;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}
+ .feature aside p{color:var(--muted);font-size:.95em;line-height:1.55}
+ .three{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 0}
+ .three h3{font-family:var(--h-font);font-size:1.5em;border-top:2px solid var(--accent);padding-top:.6em}
+</style></head><body>
+ <div class=pagewrap>
+ <header class=masthead>
+ <h1>Coble Animal Hospital</h1>
+ <span class=date>vet clinic · Springfield, IL</span>
+ </header>
+ <article class=feature>
+ <div>
+ <h2>The kind of veterinary care your grandparents trusted — with the technology your pet deserves now.</h2>
+ <p class=lead>For three decades, we've been the family practice Springfield families call when something matters. Walk-in welcomes, transparent pricing, and a waiting room that doesn't feel like one.</p>
+ <p><a class=btn href=#book>Book a visit →</a></p>
+ </div>
+ <aside>
+ <h4>What's new</h4>
+ <p><strong>Online booking is live.</strong> Pick your day, your doctor, and the time that fits — no phone tag.</p>
+ <p><strong>Senior pet program.</strong> Quarterly visits + bloodwork for pets 8+, $35/mo.</p>
+ </aside>
+ </article>
+ <section class=three>
+ <div><h3>General Practice</h3><p>Annual wellness visits, vaccines, parasite prevention, nutrition counseling.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with anesthetic monitoring. Same-day discharge for most.</p></div>
+ <div><h3>Urgent Sick Care</h3><p>Same-day appointments most weekdays. Call before 11 AM, visit before 5.</p></div>
+ </section>
+ <footer><p class=muted>2828 South MacArthur Boulevard, Springfield, IL, 62704 · +1-217-789-4200</p></footer>
+ </div><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Contact</h1>
+ <p style="line-height:1.7;font-size:1.1em"><strong>Coble Animal Hospital</strong><br>
+ 2828 South MacArthur Boulevard, Springfield, IL, 62704<br>
+ <a href="tel:+1-217-789-4200">+1-217-789-4200</a><br>
+
+ <a href="https://www.myvetcoble.com/" target="_blank" rel="noopener">https://www.myvetcoble.com/</a><br>
+ </p></section></body></html>
\ No newline at end of file
diff --git a/public/sites/coble-animal-hospital-springfield-il-5470/index.html b/public/sites/coble-animal-hospital-springfield-il-5470/index.html
new file mode 100644
index 0000000..db25479
--- /dev/null
+++ b/public/sites/coble-animal-hospital-springfield-il-5470/index.html
@@ -0,0 +1,59 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito%3Awght%40400%3B700%3B900%26family%3DNunito%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1e1b3a; --paper:#faf5ff; --accent:#7c3aed;
+ --accent2:#d97706; --muted:#6b6989; --rule:#e9d5ff;
+ --h-font:'Nunito', serif; --b-font:'Nunito', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pagewrap{max-width:1100px;margin:0 auto;padding:3em 3em}
+ .masthead{border-top:6px solid var(--ink);border-bottom:1px solid var(--rule);padding:1em 0;display:flex;justify-content:space-between;align-items:baseline}
+ .masthead h1{font-size:2.4em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .masthead .date{color:var(--muted);font-size:.9em;letter-spacing:.1em;text-transform:uppercase}
+ .feature{display:grid;grid-template-columns:2fr 1fr;gap:3em;padding:3em 0;border-bottom:1px solid var(--rule)}
+ .feature h2{font-size:3.2em;line-height:1.05;font-weight:700;margin:0 0 .4em}
+ .feature .lead{font-size:1.2em;color:var(--ink);line-height:1.6}
+ .feature aside{border-left:3px solid var(--accent);padding-left:1.5em}
+ .feature aside h4{margin:0 0 .4em;font-size:1.1em;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}
+ .feature aside p{color:var(--muted);font-size:.95em;line-height:1.55}
+ .three{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 0}
+ .three h3{font-family:var(--h-font);font-size:1.5em;border-top:2px solid var(--accent);padding-top:.6em}
+</style></head><body>
+ <div class=pagewrap>
+ <header class=masthead>
+ <h1>Coble Animal Hospital</h1>
+ <span class=date>vet clinic · Springfield, IL</span>
+ </header>
+ <article class=feature>
+ <div>
+ <h2>The kind of veterinary care your grandparents trusted — with the technology your pet deserves now.</h2>
+ <p class=lead>For three decades, we've been the family practice Springfield families call when something matters. Walk-in welcomes, transparent pricing, and a waiting room that doesn't feel like one.</p>
+ <p><a class=btn href=#book>Book a visit →</a></p>
+ </div>
+ <aside>
+ <h4>What's new</h4>
+ <p><strong>Online booking is live.</strong> Pick your day, your doctor, and the time that fits — no phone tag.</p>
+ <p><strong>Senior pet program.</strong> Quarterly visits + bloodwork for pets 8+, $35/mo.</p>
+ </aside>
+ </article>
+ <section class=three>
+ <div><h3>General Practice</h3><p>Annual wellness visits, vaccines, parasite prevention, nutrition counseling.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with anesthetic monitoring. Same-day discharge for most.</p></div>
+ <div><h3>Urgent Sick Care</h3><p>Same-day appointments most weekdays. Call before 11 AM, visit before 5.</p></div>
+ </section>
+ <footer><p class=muted>2828 South MacArthur Boulevard, Springfield, IL, 62704 · +1-217-789-4200</p></footer>
+ </div></body></html>
\ No newline at end of file
diff --git a/public/sites/coble-animal-hospital-springfield-il-5470/services.html b/public/sites/coble-animal-hospital-springfield-il-5470/services.html
new file mode 100644
index 0000000..b25e408
--- /dev/null
+++ b/public/sites/coble-animal-hospital-springfield-il-5470/services.html
@@ -0,0 +1,67 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito%3Awght%40400%3B700%3B900%26family%3DNunito%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1e1b3a; --paper:#faf5ff; --accent:#7c3aed;
+ --accent2:#d97706; --muted:#6b6989; --rule:#e9d5ff;
+ --h-font:'Nunito', serif; --b-font:'Nunito', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pagewrap{max-width:1100px;margin:0 auto;padding:3em 3em}
+ .masthead{border-top:6px solid var(--ink);border-bottom:1px solid var(--rule);padding:1em 0;display:flex;justify-content:space-between;align-items:baseline}
+ .masthead h1{font-size:2.4em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .masthead .date{color:var(--muted);font-size:.9em;letter-spacing:.1em;text-transform:uppercase}
+ .feature{display:grid;grid-template-columns:2fr 1fr;gap:3em;padding:3em 0;border-bottom:1px solid var(--rule)}
+ .feature h2{font-size:3.2em;line-height:1.05;font-weight:700;margin:0 0 .4em}
+ .feature .lead{font-size:1.2em;color:var(--ink);line-height:1.6}
+ .feature aside{border-left:3px solid var(--accent);padding-left:1.5em}
+ .feature aside h4{margin:0 0 .4em;font-size:1.1em;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}
+ .feature aside p{color:var(--muted);font-size:.95em;line-height:1.55}
+ .three{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 0}
+ .three h3{font-family:var(--h-font);font-size:1.5em;border-top:2px solid var(--accent);padding-top:.6em}
+</style></head><body>
+ <div class=pagewrap>
+ <header class=masthead>
+ <h1>Coble Animal Hospital</h1>
+ <span class=date>vet clinic · Springfield, IL</span>
+ </header>
+ <article class=feature>
+ <div>
+ <h2>The kind of veterinary care your grandparents trusted — with the technology your pet deserves now.</h2>
+ <p class=lead>For three decades, we've been the family practice Springfield families call when something matters. Walk-in welcomes, transparent pricing, and a waiting room that doesn't feel like one.</p>
+ <p><a class=btn href=#book>Book a visit →</a></p>
+ </div>
+ <aside>
+ <h4>What's new</h4>
+ <p><strong>Online booking is live.</strong> Pick your day, your doctor, and the time that fits — no phone tag.</p>
+ <p><strong>Senior pet program.</strong> Quarterly visits + bloodwork for pets 8+, $35/mo.</p>
+ </aside>
+ </article>
+ <section class=three>
+ <div><h3>General Practice</h3><p>Annual wellness visits, vaccines, parasite prevention, nutrition counseling.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with anesthetic monitoring. Same-day discharge for most.</p></div>
+ <div><h3>Urgent Sick Care</h3><p>Same-day appointments most weekdays. Call before 11 AM, visit before 5.</p></div>
+ </section>
+ <footer><p class=muted>2828 South MacArthur Boulevard, Springfield, IL, 62704 · +1-217-789-4200</p></footer>
+ </div><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Our Services</h1>
+ <ul style="line-height:2;font-size:1.1em">
+ <li>Annual wellness exams + vaccinations</li>
+ <li>Same-day sick visits (M-F before 11 AM)</li>
+ <li>In-house surgical suite with continuous anesthetic monitoring</li>
+ <li>Dental cleanings + extractions</li>
+ <li>Specialty referrals (cardiology, dermatology, oncology)</li>
+ <li>End-of-life consultations + in-home euthanasia</li>
+ </ul></section></body></html>
\ No newline at end of file
diff --git a/public/sites/coble-animal-hospital-springfield-il-5470/team.html b/public/sites/coble-animal-hospital-springfield-il-5470/team.html
new file mode 100644
index 0000000..108fbe5
--- /dev/null
+++ b/public/sites/coble-animal-hospital-springfield-il-5470/team.html
@@ -0,0 +1,60 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito%3Awght%40400%3B700%3B900%26family%3DNunito%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1e1b3a; --paper:#faf5ff; --accent:#7c3aed;
+ --accent2:#d97706; --muted:#6b6989; --rule:#e9d5ff;
+ --h-font:'Nunito', serif; --b-font:'Nunito', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pagewrap{max-width:1100px;margin:0 auto;padding:3em 3em}
+ .masthead{border-top:6px solid var(--ink);border-bottom:1px solid var(--rule);padding:1em 0;display:flex;justify-content:space-between;align-items:baseline}
+ .masthead h1{font-size:2.4em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .masthead .date{color:var(--muted);font-size:.9em;letter-spacing:.1em;text-transform:uppercase}
+ .feature{display:grid;grid-template-columns:2fr 1fr;gap:3em;padding:3em 0;border-bottom:1px solid var(--rule)}
+ .feature h2{font-size:3.2em;line-height:1.05;font-weight:700;margin:0 0 .4em}
+ .feature .lead{font-size:1.2em;color:var(--ink);line-height:1.6}
+ .feature aside{border-left:3px solid var(--accent);padding-left:1.5em}
+ .feature aside h4{margin:0 0 .4em;font-size:1.1em;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}
+ .feature aside p{color:var(--muted);font-size:.95em;line-height:1.55}
+ .three{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 0}
+ .three h3{font-family:var(--h-font);font-size:1.5em;border-top:2px solid var(--accent);padding-top:.6em}
+</style></head><body>
+ <div class=pagewrap>
+ <header class=masthead>
+ <h1>Coble Animal Hospital</h1>
+ <span class=date>vet clinic · Springfield, IL</span>
+ </header>
+ <article class=feature>
+ <div>
+ <h2>The kind of veterinary care your grandparents trusted — with the technology your pet deserves now.</h2>
+ <p class=lead>For three decades, we've been the family practice Springfield families call when something matters. Walk-in welcomes, transparent pricing, and a waiting room that doesn't feel like one.</p>
+ <p><a class=btn href=#book>Book a visit →</a></p>
+ </div>
+ <aside>
+ <h4>What's new</h4>
+ <p><strong>Online booking is live.</strong> Pick your day, your doctor, and the time that fits — no phone tag.</p>
+ <p><strong>Senior pet program.</strong> Quarterly visits + bloodwork for pets 8+, $35/mo.</p>
+ </aside>
+ </article>
+ <section class=three>
+ <div><h3>General Practice</h3><p>Annual wellness visits, vaccines, parasite prevention, nutrition counseling.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with anesthetic monitoring. Same-day discharge for most.</p></div>
+ <div><h3>Urgent Sick Care</h3><p>Same-day appointments most weekdays. Call before 11 AM, visit before 5.</p></div>
+ </section>
+ <footer><p class=muted>2828 South MacArthur Boulevard, Springfield, IL, 62704 · +1-217-789-4200</p></footer>
+ </div><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Our Team</h1>
+ <p style="line-height:1.7;font-size:1.1em">Board-certified veterinarians, Fear Free Certified® technicians, and front-desk staff who remember your pet's name. Photos + bios coming soon — call us at +1-217-789-4200 for an introduction.</p></section></body></html>
\ No newline at end of file
diff --git a/public/sites/lucky-e-kennel-ringwood-il-5505/contact.html b/public/sites/lucky-e-kennel-ringwood-il-5505/contact.html
new file mode 100644
index 0000000..d5925d8
--- /dev/null
+++ b/public/sites/lucky-e-kennel-ringwood-il-5505/contact.html
@@ -0,0 +1,66 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Spectral%3Awght%40400%3B700%3B900%26family%3DWork%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#222218; --paper:#f9f8f1; --accent:#5d6b3a;
+ --accent2:#c97a3e; --muted:#7d7c66; --rule:#e6e3d4;
+ --h-font:'Spectral', serif; --b-font:'Work Sans', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .nav{padding:1.2em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule)}
+ .nav strong{font-size:1.1em}
+ .hero2{display:grid;grid-template-columns:1.4fr 1fr;padding:5em 3em;gap:4em;align-items:start}
+ .hero2 h1{font-size:3.2em;font-weight:800;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .hero2 .sub{font-size:1.15em;color:var(--muted);max-width:560px;margin:0 0 2em}
+ .booking{background:#fff;border:2px solid var(--ink);border-radius:var(--card-r);padding:2em}
+ .booking h3{margin:0 0 1em;font-size:1.3em}
+ .booking label{display:block;margin:.7em 0 .2em;font-weight:600;font-size:.92em}
+ .booking input,.booking select{width:100%;padding:.6em .8em;border:1px solid var(--rule);border-radius:var(--btn-r);font:inherit}
+ .booking button{margin-top:1em;width:100%;background:var(--accent);color:var(--paper);border:0;padding:1em;font-weight:700;font-size:1.05em;border-radius:var(--btn-r);cursor:pointer}
+ .why{padding:3em;background:var(--rule)}
+ .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;max-width:1100px;margin:0 auto}
+ .why-grid > div{background:var(--paper);padding:1.5em;border-radius:var(--card-r)}
+</style></head><body>
+ <nav class=nav><strong>Lucky-E Kennel</strong><a class=btn href=#book>Book online</a></nav>
+ <section class=hero2>
+ <div>
+ <h1>Skip the phone. Book your visit in 60 seconds.</h1>
+ <p class=sub>Real-time availability. Choose your doctor. Add your pet's symptoms. We'll send a confirmation by email + text.</p>
+ <p class=muted>★ 4.9 from 412 Ringwood pet families</p>
+ </div>
+ <form class=booking>
+ <h3>Request an appointment</h3>
+ <label>Your name</label><input placeholder="Jane Doe">
+ <label>Email</label><input placeholder="you@example.com">
+ <label>Pet & reason</label><select><option>Dog — wellness</option><option>Cat — sick visit</option><option>Other</option></select>
+ <label>Preferred day</label><input type=date>
+ <button>Request appointment</button>
+ </form>
+ </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>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted)">4915 Ringwood Road, Ringwood, IL, 60072 · +1-815-653-9016</footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Contact</h1>
+ <p style="line-height:1.7;font-size:1.1em"><strong>Lucky-E Kennel</strong><br>
+ 4915 Ringwood Road, Ringwood, IL, 60072<br>
+ <a href="tel:+1-815-653-9016">+1-815-653-9016</a><br>
+
+ <a href="http://lucky-ekennel.com/" target="_blank" rel="noopener">http://lucky-ekennel.com/</a><br>
+ </p></section></body></html>
\ No newline at end of file
diff --git a/public/sites/lucky-e-kennel-ringwood-il-5505/index.html b/public/sites/lucky-e-kennel-ringwood-il-5505/index.html
new file mode 100644
index 0000000..3a98cd2
--- /dev/null
+++ b/public/sites/lucky-e-kennel-ringwood-il-5505/index.html
@@ -0,0 +1,60 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Spectral%3Awght%40400%3B700%3B900%26family%3DWork%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#222218; --paper:#f9f8f1; --accent:#5d6b3a;
+ --accent2:#c97a3e; --muted:#7d7c66; --rule:#e6e3d4;
+ --h-font:'Spectral', serif; --b-font:'Work Sans', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .nav{padding:1.2em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule)}
+ .nav strong{font-size:1.1em}
+ .hero2{display:grid;grid-template-columns:1.4fr 1fr;padding:5em 3em;gap:4em;align-items:start}
+ .hero2 h1{font-size:3.2em;font-weight:800;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .hero2 .sub{font-size:1.15em;color:var(--muted);max-width:560px;margin:0 0 2em}
+ .booking{background:#fff;border:2px solid var(--ink);border-radius:var(--card-r);padding:2em}
+ .booking h3{margin:0 0 1em;font-size:1.3em}
+ .booking label{display:block;margin:.7em 0 .2em;font-weight:600;font-size:.92em}
+ .booking input,.booking select{width:100%;padding:.6em .8em;border:1px solid var(--rule);border-radius:var(--btn-r);font:inherit}
+ .booking button{margin-top:1em;width:100%;background:var(--accent);color:var(--paper);border:0;padding:1em;font-weight:700;font-size:1.05em;border-radius:var(--btn-r);cursor:pointer}
+ .why{padding:3em;background:var(--rule)}
+ .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;max-width:1100px;margin:0 auto}
+ .why-grid > div{background:var(--paper);padding:1.5em;border-radius:var(--card-r)}
+</style></head><body>
+ <nav class=nav><strong>Lucky-E Kennel</strong><a class=btn href=#book>Book online</a></nav>
+ <section class=hero2>
+ <div>
+ <h1>Skip the phone. Book your visit in 60 seconds.</h1>
+ <p class=sub>Real-time availability. Choose your doctor. Add your pet's symptoms. We'll send a confirmation by email + text.</p>
+ <p class=muted>★ 4.9 from 412 Ringwood pet families</p>
+ </div>
+ <form class=booking>
+ <h3>Request an appointment</h3>
+ <label>Your name</label><input placeholder="Jane Doe">
+ <label>Email</label><input placeholder="you@example.com">
+ <label>Pet & reason</label><select><option>Dog — wellness</option><option>Cat — sick visit</option><option>Other</option></select>
+ <label>Preferred day</label><input type=date>
+ <button>Request appointment</button>
+ </form>
+ </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>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted)">4915 Ringwood Road, Ringwood, IL, 60072 · +1-815-653-9016</footer></body></html>
\ No newline at end of file
diff --git a/public/sites/lucky-e-kennel-ringwood-il-5505/services.html b/public/sites/lucky-e-kennel-ringwood-il-5505/services.html
new file mode 100644
index 0000000..d2ea026
--- /dev/null
+++ b/public/sites/lucky-e-kennel-ringwood-il-5505/services.html
@@ -0,0 +1,68 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Spectral%3Awght%40400%3B700%3B900%26family%3DWork%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#222218; --paper:#f9f8f1; --accent:#5d6b3a;
+ --accent2:#c97a3e; --muted:#7d7c66; --rule:#e6e3d4;
+ --h-font:'Spectral', serif; --b-font:'Work Sans', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .nav{padding:1.2em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule)}
+ .nav strong{font-size:1.1em}
+ .hero2{display:grid;grid-template-columns:1.4fr 1fr;padding:5em 3em;gap:4em;align-items:start}
+ .hero2 h1{font-size:3.2em;font-weight:800;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .hero2 .sub{font-size:1.15em;color:var(--muted);max-width:560px;margin:0 0 2em}
+ .booking{background:#fff;border:2px solid var(--ink);border-radius:var(--card-r);padding:2em}
+ .booking h3{margin:0 0 1em;font-size:1.3em}
+ .booking label{display:block;margin:.7em 0 .2em;font-weight:600;font-size:.92em}
+ .booking input,.booking select{width:100%;padding:.6em .8em;border:1px solid var(--rule);border-radius:var(--btn-r);font:inherit}
+ .booking button{margin-top:1em;width:100%;background:var(--accent);color:var(--paper);border:0;padding:1em;font-weight:700;font-size:1.05em;border-radius:var(--btn-r);cursor:pointer}
+ .why{padding:3em;background:var(--rule)}
+ .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;max-width:1100px;margin:0 auto}
+ .why-grid > div{background:var(--paper);padding:1.5em;border-radius:var(--card-r)}
+</style></head><body>
+ <nav class=nav><strong>Lucky-E Kennel</strong><a class=btn href=#book>Book online</a></nav>
+ <section class=hero2>
+ <div>
+ <h1>Skip the phone. Book your visit in 60 seconds.</h1>
+ <p class=sub>Real-time availability. Choose your doctor. Add your pet's symptoms. We'll send a confirmation by email + text.</p>
+ <p class=muted>★ 4.9 from 412 Ringwood pet families</p>
+ </div>
+ <form class=booking>
+ <h3>Request an appointment</h3>
+ <label>Your name</label><input placeholder="Jane Doe">
+ <label>Email</label><input placeholder="you@example.com">
+ <label>Pet & reason</label><select><option>Dog — wellness</option><option>Cat — sick visit</option><option>Other</option></select>
+ <label>Preferred day</label><input type=date>
+ <button>Request appointment</button>
+ </form>
+ </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>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted)">4915 Ringwood Road, Ringwood, IL, 60072 · +1-815-653-9016</footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Our Services</h1>
+ <ul style="line-height:2;font-size:1.1em">
+ <li>Annual wellness exams + vaccinations</li>
+ <li>Same-day sick visits (M-F before 11 AM)</li>
+ <li>In-house surgical suite with continuous anesthetic monitoring</li>
+ <li>Dental cleanings + extractions</li>
+ <li>Specialty referrals (cardiology, dermatology, oncology)</li>
+ <li>End-of-life consultations + in-home euthanasia</li>
+ </ul></section></body></html>
\ No newline at end of file
diff --git a/public/sites/lucky-e-kennel-ringwood-il-5505/team.html b/public/sites/lucky-e-kennel-ringwood-il-5505/team.html
new file mode 100644
index 0000000..36bf0f2
--- /dev/null
+++ b/public/sites/lucky-e-kennel-ringwood-il-5505/team.html
@@ -0,0 +1,61 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Spectral%3Awght%40400%3B700%3B900%26family%3DWork%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#222218; --paper:#f9f8f1; --accent:#5d6b3a;
+ --accent2:#c97a3e; --muted:#7d7c66; --rule:#e6e3d4;
+ --h-font:'Spectral', serif; --b-font:'Work Sans', system-ui, sans-serif;
+ --btn-r:8px; --card-r:10px; --card-shadow:0 12px 30px rgba(0,0,0,.10);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .nav{padding:1.2em 3em;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule)}
+ .nav strong{font-size:1.1em}
+ .hero2{display:grid;grid-template-columns:1.4fr 1fr;padding:5em 3em;gap:4em;align-items:start}
+ .hero2 h1{font-size:3.2em;font-weight:800;letter-spacing:-.02em;line-height:1.05;margin:0 0 .5em}
+ .hero2 .sub{font-size:1.15em;color:var(--muted);max-width:560px;margin:0 0 2em}
+ .booking{background:#fff;border:2px solid var(--ink);border-radius:var(--card-r);padding:2em}
+ .booking h3{margin:0 0 1em;font-size:1.3em}
+ .booking label{display:block;margin:.7em 0 .2em;font-weight:600;font-size:.92em}
+ .booking input,.booking select{width:100%;padding:.6em .8em;border:1px solid var(--rule);border-radius:var(--btn-r);font:inherit}
+ .booking button{margin-top:1em;width:100%;background:var(--accent);color:var(--paper);border:0;padding:1em;font-weight:700;font-size:1.05em;border-radius:var(--btn-r);cursor:pointer}
+ .why{padding:3em;background:var(--rule)}
+ .why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;max-width:1100px;margin:0 auto}
+ .why-grid > div{background:var(--paper);padding:1.5em;border-radius:var(--card-r)}
+</style></head><body>
+ <nav class=nav><strong>Lucky-E Kennel</strong><a class=btn href=#book>Book online</a></nav>
+ <section class=hero2>
+ <div>
+ <h1>Skip the phone. Book your visit in 60 seconds.</h1>
+ <p class=sub>Real-time availability. Choose your doctor. Add your pet's symptoms. We'll send a confirmation by email + text.</p>
+ <p class=muted>★ 4.9 from 412 Ringwood pet families</p>
+ </div>
+ <form class=booking>
+ <h3>Request an appointment</h3>
+ <label>Your name</label><input placeholder="Jane Doe">
+ <label>Email</label><input placeholder="you@example.com">
+ <label>Pet & reason</label><select><option>Dog — wellness</option><option>Cat — sick visit</option><option>Other</option></select>
+ <label>Preferred day</label><input type=date>
+ <button>Request appointment</button>
+ </form>
+ </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>
+ </section>
+ <footer style="padding:2em 3em;color:var(--muted)">4915 Ringwood Road, Ringwood, IL, 60072 · +1-815-653-9016</footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Our Team</h1>
+ <p style="line-height:1.7;font-size:1.1em">Board-certified veterinarians, Fear Free Certified® technicians, and front-desk staff who remember your pet's name. Photos + bios coming soon — call us at +1-815-653-9016 for an introduction.</p></section></body></html>
\ No newline at end of file
diff --git a/public/sites/pampered-pet-center-inc-springfield-il-5479/contact.html b/public/sites/pampered-pet-center-inc-springfield-il-5479/contact.html
new file mode 100644
index 0000000..8972ee1
--- /dev/null
+++ b/public/sites/pampered-pet-center-inc-springfield-il-5479/contact.html
@@ -0,0 +1,65 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Cormorant%2BGaramond%3Awght%40400%3B700%3B900%26family%3DLato%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c0c0c; --paper:#fcfcfa; --accent:#0a0a0a;
+ --accent2:#d4a017; --muted:#5e5e5e; --rule:#e5e5e0;
+ --h-font:'Cormorant Garamond', serif; --b-font:'Lato', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pagewrap{max-width:1100px;margin:0 auto;padding:3em 3em}
+ .masthead{border-top:6px solid var(--ink);border-bottom:1px solid var(--rule);padding:1em 0;display:flex;justify-content:space-between;align-items:baseline}
+ .masthead h1{font-size:2.4em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .masthead .date{color:var(--muted);font-size:.9em;letter-spacing:.1em;text-transform:uppercase}
+ .feature{display:grid;grid-template-columns:2fr 1fr;gap:3em;padding:3em 0;border-bottom:1px solid var(--rule)}
+ .feature h2{font-size:3.2em;line-height:1.05;font-weight:700;margin:0 0 .4em}
+ .feature .lead{font-size:1.2em;color:var(--ink);line-height:1.6}
+ .feature aside{border-left:3px solid var(--accent);padding-left:1.5em}
+ .feature aside h4{margin:0 0 .4em;font-size:1.1em;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}
+ .feature aside p{color:var(--muted);font-size:.95em;line-height:1.55}
+ .three{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 0}
+ .three h3{font-family:var(--h-font);font-size:1.5em;border-top:2px solid var(--accent);padding-top:.6em}
+</style></head><body>
+ <div class=pagewrap>
+ <header class=masthead>
+ <h1>Pampered Pet Center, Inc.</h1>
+ <span class=date>boarding · Springfield, IL</span>
+ </header>
+ <article class=feature>
+ <div>
+ <h2>The kind of veterinary care your grandparents trusted — with the technology your pet deserves now.</h2>
+ <p class=lead>For three decades, we've been the family practice Springfield families call when something matters. Walk-in welcomes, transparent pricing, and a waiting room that doesn't feel like one.</p>
+ <p><a class=btn href=#book>Book a visit →</a></p>
+ </div>
+ <aside>
+ <h4>What's new</h4>
+ <p><strong>Online booking is live.</strong> Pick your day, your doctor, and the time that fits — no phone tag.</p>
+ <p><strong>Senior pet program.</strong> Quarterly visits + bloodwork for pets 8+, $35/mo.</p>
+ </aside>
+ </article>
+ <section class=three>
+ <div><h3>General Practice</h3><p>Annual wellness visits, vaccines, parasite prevention, nutrition counseling.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with anesthetic monitoring. Same-day discharge for most.</p></div>
+ <div><h3>Urgent Sick Care</h3><p>Same-day appointments most weekdays. Call before 11 AM, visit before 5.</p></div>
+ </section>
+ <footer><p class=muted>3401 Gateway Drive, Springfield, IL, 62711 · +1-217-483-9106</p></footer>
+ </div><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Contact</h1>
+ <p style="line-height:1.7;font-size:1.1em"><strong>Pampered Pet Center, Inc.</strong><br>
+ 3401 Gateway Drive, Springfield, IL, 62711<br>
+ <a href="tel:+1-217-483-9106">+1-217-483-9106</a><br>
+
+ <a href="http://www.pamperedpetcenter.com/" target="_blank" rel="noopener">http://www.pamperedpetcenter.com/</a><br>
+ </p></section></body></html>
\ No newline at end of file
diff --git a/public/sites/pampered-pet-center-inc-springfield-il-5479/index.html b/public/sites/pampered-pet-center-inc-springfield-il-5479/index.html
new file mode 100644
index 0000000..2c68531
--- /dev/null
+++ b/public/sites/pampered-pet-center-inc-springfield-il-5479/index.html
@@ -0,0 +1,59 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Cormorant%2BGaramond%3Awght%40400%3B700%3B900%26family%3DLato%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c0c0c; --paper:#fcfcfa; --accent:#0a0a0a;
+ --accent2:#d4a017; --muted:#5e5e5e; --rule:#e5e5e0;
+ --h-font:'Cormorant Garamond', serif; --b-font:'Lato', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pagewrap{max-width:1100px;margin:0 auto;padding:3em 3em}
+ .masthead{border-top:6px solid var(--ink);border-bottom:1px solid var(--rule);padding:1em 0;display:flex;justify-content:space-between;align-items:baseline}
+ .masthead h1{font-size:2.4em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .masthead .date{color:var(--muted);font-size:.9em;letter-spacing:.1em;text-transform:uppercase}
+ .feature{display:grid;grid-template-columns:2fr 1fr;gap:3em;padding:3em 0;border-bottom:1px solid var(--rule)}
+ .feature h2{font-size:3.2em;line-height:1.05;font-weight:700;margin:0 0 .4em}
+ .feature .lead{font-size:1.2em;color:var(--ink);line-height:1.6}
+ .feature aside{border-left:3px solid var(--accent);padding-left:1.5em}
+ .feature aside h4{margin:0 0 .4em;font-size:1.1em;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}
+ .feature aside p{color:var(--muted);font-size:.95em;line-height:1.55}
+ .three{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 0}
+ .three h3{font-family:var(--h-font);font-size:1.5em;border-top:2px solid var(--accent);padding-top:.6em}
+</style></head><body>
+ <div class=pagewrap>
+ <header class=masthead>
+ <h1>Pampered Pet Center, Inc.</h1>
+ <span class=date>boarding · Springfield, IL</span>
+ </header>
+ <article class=feature>
+ <div>
+ <h2>The kind of veterinary care your grandparents trusted — with the technology your pet deserves now.</h2>
+ <p class=lead>For three decades, we've been the family practice Springfield families call when something matters. Walk-in welcomes, transparent pricing, and a waiting room that doesn't feel like one.</p>
+ <p><a class=btn href=#book>Book a visit →</a></p>
+ </div>
+ <aside>
+ <h4>What's new</h4>
+ <p><strong>Online booking is live.</strong> Pick your day, your doctor, and the time that fits — no phone tag.</p>
+ <p><strong>Senior pet program.</strong> Quarterly visits + bloodwork for pets 8+, $35/mo.</p>
+ </aside>
+ </article>
+ <section class=three>
+ <div><h3>General Practice</h3><p>Annual wellness visits, vaccines, parasite prevention, nutrition counseling.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with anesthetic monitoring. Same-day discharge for most.</p></div>
+ <div><h3>Urgent Sick Care</h3><p>Same-day appointments most weekdays. Call before 11 AM, visit before 5.</p></div>
+ </section>
+ <footer><p class=muted>3401 Gateway Drive, Springfield, IL, 62711 · +1-217-483-9106</p></footer>
+ </div></body></html>
\ No newline at end of file
diff --git a/public/sites/pampered-pet-center-inc-springfield-il-5479/services.html b/public/sites/pampered-pet-center-inc-springfield-il-5479/services.html
new file mode 100644
index 0000000..1be7f53
--- /dev/null
+++ b/public/sites/pampered-pet-center-inc-springfield-il-5479/services.html
@@ -0,0 +1,67 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Cormorant%2BGaramond%3Awght%40400%3B700%3B900%26family%3DLato%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c0c0c; --paper:#fcfcfa; --accent:#0a0a0a;
+ --accent2:#d4a017; --muted:#5e5e5e; --rule:#e5e5e0;
+ --h-font:'Cormorant Garamond', serif; --b-font:'Lato', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pagewrap{max-width:1100px;margin:0 auto;padding:3em 3em}
+ .masthead{border-top:6px solid var(--ink);border-bottom:1px solid var(--rule);padding:1em 0;display:flex;justify-content:space-between;align-items:baseline}
+ .masthead h1{font-size:2.4em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .masthead .date{color:var(--muted);font-size:.9em;letter-spacing:.1em;text-transform:uppercase}
+ .feature{display:grid;grid-template-columns:2fr 1fr;gap:3em;padding:3em 0;border-bottom:1px solid var(--rule)}
+ .feature h2{font-size:3.2em;line-height:1.05;font-weight:700;margin:0 0 .4em}
+ .feature .lead{font-size:1.2em;color:var(--ink);line-height:1.6}
+ .feature aside{border-left:3px solid var(--accent);padding-left:1.5em}
+ .feature aside h4{margin:0 0 .4em;font-size:1.1em;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}
+ .feature aside p{color:var(--muted);font-size:.95em;line-height:1.55}
+ .three{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 0}
+ .three h3{font-family:var(--h-font);font-size:1.5em;border-top:2px solid var(--accent);padding-top:.6em}
+</style></head><body>
+ <div class=pagewrap>
+ <header class=masthead>
+ <h1>Pampered Pet Center, Inc.</h1>
+ <span class=date>boarding · Springfield, IL</span>
+ </header>
+ <article class=feature>
+ <div>
+ <h2>The kind of veterinary care your grandparents trusted — with the technology your pet deserves now.</h2>
+ <p class=lead>For three decades, we've been the family practice Springfield families call when something matters. Walk-in welcomes, transparent pricing, and a waiting room that doesn't feel like one.</p>
+ <p><a class=btn href=#book>Book a visit →</a></p>
+ </div>
+ <aside>
+ <h4>What's new</h4>
+ <p><strong>Online booking is live.</strong> Pick your day, your doctor, and the time that fits — no phone tag.</p>
+ <p><strong>Senior pet program.</strong> Quarterly visits + bloodwork for pets 8+, $35/mo.</p>
+ </aside>
+ </article>
+ <section class=three>
+ <div><h3>General Practice</h3><p>Annual wellness visits, vaccines, parasite prevention, nutrition counseling.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with anesthetic monitoring. Same-day discharge for most.</p></div>
+ <div><h3>Urgent Sick Care</h3><p>Same-day appointments most weekdays. Call before 11 AM, visit before 5.</p></div>
+ </section>
+ <footer><p class=muted>3401 Gateway Drive, Springfield, IL, 62711 · +1-217-483-9106</p></footer>
+ </div><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Our Services</h1>
+ <ul style="line-height:2;font-size:1.1em">
+ <li>Annual wellness exams + vaccinations</li>
+ <li>Same-day sick visits (M-F before 11 AM)</li>
+ <li>In-house surgical suite with continuous anesthetic monitoring</li>
+ <li>Dental cleanings + extractions</li>
+ <li>Specialty referrals (cardiology, dermatology, oncology)</li>
+ <li>End-of-life consultations + in-home euthanasia</li>
+ </ul></section></body></html>
\ No newline at end of file
diff --git a/public/sites/pampered-pet-center-inc-springfield-il-5479/team.html b/public/sites/pampered-pet-center-inc-springfield-il-5479/team.html
new file mode 100644
index 0000000..52b336c
--- /dev/null
+++ b/public/sites/pampered-pet-center-inc-springfield-il-5479/team.html
@@ -0,0 +1,60 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Cormorant%2BGaramond%3Awght%40400%3B700%3B900%26family%3DLato%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c0c0c; --paper:#fcfcfa; --accent:#0a0a0a;
+ --accent2:#d4a017; --muted:#5e5e5e; --rule:#e5e5e0;
+ --h-font:'Cormorant Garamond', serif; --b-font:'Lato', system-ui, sans-serif;
+ --btn-r:4px; --card-r:6px; --card-shadow:2px 2px 0 var(--ink);
+ --divider:solid 1px var(--ink);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pagewrap{max-width:1100px;margin:0 auto;padding:3em 3em}
+ .masthead{border-top:6px solid var(--ink);border-bottom:1px solid var(--rule);padding:1em 0;display:flex;justify-content:space-between;align-items:baseline}
+ .masthead h1{font-size:2.4em;margin:0;font-weight:900;letter-spacing:-.03em}
+ .masthead .date{color:var(--muted);font-size:.9em;letter-spacing:.1em;text-transform:uppercase}
+ .feature{display:grid;grid-template-columns:2fr 1fr;gap:3em;padding:3em 0;border-bottom:1px solid var(--rule)}
+ .feature h2{font-size:3.2em;line-height:1.05;font-weight:700;margin:0 0 .4em}
+ .feature .lead{font-size:1.2em;color:var(--ink);line-height:1.6}
+ .feature aside{border-left:3px solid var(--accent);padding-left:1.5em}
+ .feature aside h4{margin:0 0 .4em;font-size:1.1em;text-transform:uppercase;letter-spacing:.1em;color:var(--accent)}
+ .feature aside p{color:var(--muted);font-size:.95em;line-height:1.55}
+ .three{display:grid;grid-template-columns:repeat(3,1fr);gap:2em;padding:3em 0}
+ .three h3{font-family:var(--h-font);font-size:1.5em;border-top:2px solid var(--accent);padding-top:.6em}
+</style></head><body>
+ <div class=pagewrap>
+ <header class=masthead>
+ <h1>Pampered Pet Center, Inc.</h1>
+ <span class=date>boarding · Springfield, IL</span>
+ </header>
+ <article class=feature>
+ <div>
+ <h2>The kind of veterinary care your grandparents trusted — with the technology your pet deserves now.</h2>
+ <p class=lead>For three decades, we've been the family practice Springfield families call when something matters. Walk-in welcomes, transparent pricing, and a waiting room that doesn't feel like one.</p>
+ <p><a class=btn href=#book>Book a visit →</a></p>
+ </div>
+ <aside>
+ <h4>What's new</h4>
+ <p><strong>Online booking is live.</strong> Pick your day, your doctor, and the time that fits — no phone tag.</p>
+ <p><strong>Senior pet program.</strong> Quarterly visits + bloodwork for pets 8+, $35/mo.</p>
+ </aside>
+ </article>
+ <section class=three>
+ <div><h3>General Practice</h3><p>Annual wellness visits, vaccines, parasite prevention, nutrition counseling.</p></div>
+ <div><h3>Surgery & Dental</h3><p>In-house surgical suite with anesthetic monitoring. Same-day discharge for most.</p></div>
+ <div><h3>Urgent Sick Care</h3><p>Same-day appointments most weekdays. Call before 11 AM, visit before 5.</p></div>
+ </section>
+ <footer><p class=muted>3401 Gateway Drive, Springfield, IL, 62711 · +1-217-483-9106</p></footer>
+ </div><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Our Team</h1>
+ <p style="line-height:1.7;font-size:1.1em">Board-certified veterinarians, Fear Free Certified® technicians, and front-desk staff who remember your pet's name. Photos + bios coming soon — call us at +1-217-483-9106 for an introduction.</p></section></body></html>
\ No newline at end of file
diff --git a/public/sites/pet-supplies-plus-springfield-il-5535/contact.html b/public/sites/pet-supplies-plus-springfield-il-5535/contact.html
new file mode 100644
index 0000000..c64446e
--- /dev/null
+++ b/public/sites/pet-supplies-plus-springfield-il-5535/contact.html
@@ -0,0 +1,51 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Merriweather%3Awght%40400%3B700%3B900%26family%3DIBM%2BPlex%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c0c1c; --paper:#f4f3f6; --accent:#581c87;
+ --accent2:#737373; --muted:#787078; --rule:#d8d5e0;
+ --h-font:'Merriweather', serif; --b-font:'IBM Plex Sans', system-ui, sans-serif;
+ --btn-r:10px; --card-r:12px; --card-shadow:0 4px 14px rgba(0,0,0,.06);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pl-hero{padding:5em 3em;background:var(--accent);color:var(--paper);position:relative;overflow:hidden}
+ .pl-hero:after{content:"🐶 🐱 🐾 🦴 🐾 🐶 🐱 🦴";position:absolute;top:0;right:-20%;font-size:14em;opacity:.05;line-height:1;letter-spacing:.5em}
+ .pl-hero h1{font-size:4.5em;font-weight:900;letter-spacing:-.03em;line-height:1;max-width:14ch;margin:0 0 .3em;color:var(--paper)}
+ .pl-hero p{font-size:1.3em;opacity:.9;max-width:600px;margin:1em 0 2em}
+ .pl-hero .btn{background:var(--accent2);color:#fff}
+ .pl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5em;padding:3em;max-width:1200px;margin:0 auto}
+ .pl-card{background:#fff;padding:2em;border-radius:var(--card-r);box-shadow:var(--card-shadow);text-align:center}
+ .pl-card .emoji{font-size:3em;line-height:1}
+ .pl-card h3{margin:.4em 0;font-size:1.3em}
+ .pl-card p{margin:0;color:var(--muted);font-size:.95em}
+</style></head><body>
+ <section class=pl-hero>
+ <small style="opacity:.7;font-weight:700;letter-spacing:.15em;text-transform:uppercase">pet store</small>
+ <h1>Pet Supplies Plus</h1>
+ <p>The Springfield vet your dog actually wants to visit. Treats, head scratches, and zero waiting-room shaking.</p>
+ <a class=btn href=#book>Book online →</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>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">1895 East Sangamon Avenue, Springfield, IL, 62702 · +1-217-528-7301</footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Contact</h1>
+ <p style="line-height:1.7;font-size:1.1em"><strong>Pet Supplies Plus</strong><br>
+ 1895 East Sangamon Avenue, Springfield, IL, 62702<br>
+ <a href="tel:+1-217-528-7301">+1-217-528-7301</a><br>
+
+ <a href="https://www.petsuppliesplus.com/Store/IL/Springfield-/Springfield-/4090" target="_blank" rel="noopener">https://www.petsuppliesplus.com/Store/IL/Springfield-/Springfield-/4090</a><br>
+ </p></section></body></html>
\ No newline at end of file
diff --git a/public/sites/pet-supplies-plus-springfield-il-5535/index.html b/public/sites/pet-supplies-plus-springfield-il-5535/index.html
new file mode 100644
index 0000000..0be9d9a
--- /dev/null
+++ b/public/sites/pet-supplies-plus-springfield-il-5535/index.html
@@ -0,0 +1,45 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Merriweather%3Awght%40400%3B700%3B900%26family%3DIBM%2BPlex%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c0c1c; --paper:#f4f3f6; --accent:#581c87;
+ --accent2:#737373; --muted:#787078; --rule:#d8d5e0;
+ --h-font:'Merriweather', serif; --b-font:'IBM Plex Sans', system-ui, sans-serif;
+ --btn-r:10px; --card-r:12px; --card-shadow:0 4px 14px rgba(0,0,0,.06);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pl-hero{padding:5em 3em;background:var(--accent);color:var(--paper);position:relative;overflow:hidden}
+ .pl-hero:after{content:"🐶 🐱 🐾 🦴 🐾 🐶 🐱 🦴";position:absolute;top:0;right:-20%;font-size:14em;opacity:.05;line-height:1;letter-spacing:.5em}
+ .pl-hero h1{font-size:4.5em;font-weight:900;letter-spacing:-.03em;line-height:1;max-width:14ch;margin:0 0 .3em;color:var(--paper)}
+ .pl-hero p{font-size:1.3em;opacity:.9;max-width:600px;margin:1em 0 2em}
+ .pl-hero .btn{background:var(--accent2);color:#fff}
+ .pl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5em;padding:3em;max-width:1200px;margin:0 auto}
+ .pl-card{background:#fff;padding:2em;border-radius:var(--card-r);box-shadow:var(--card-shadow);text-align:center}
+ .pl-card .emoji{font-size:3em;line-height:1}
+ .pl-card h3{margin:.4em 0;font-size:1.3em}
+ .pl-card p{margin:0;color:var(--muted);font-size:.95em}
+</style></head><body>
+ <section class=pl-hero>
+ <small style="opacity:.7;font-weight:700;letter-spacing:.15em;text-transform:uppercase">pet store</small>
+ <h1>Pet Supplies Plus</h1>
+ <p>The Springfield vet your dog actually wants to visit. Treats, head scratches, and zero waiting-room shaking.</p>
+ <a class=btn href=#book>Book online →</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>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">1895 East Sangamon Avenue, Springfield, IL, 62702 · +1-217-528-7301</footer></body></html>
\ No newline at end of file
diff --git a/public/sites/pet-supplies-plus-springfield-il-5535/services.html b/public/sites/pet-supplies-plus-springfield-il-5535/services.html
new file mode 100644
index 0000000..d30cc94
--- /dev/null
+++ b/public/sites/pet-supplies-plus-springfield-il-5535/services.html
@@ -0,0 +1,53 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Merriweather%3Awght%40400%3B700%3B900%26family%3DIBM%2BPlex%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c0c1c; --paper:#f4f3f6; --accent:#581c87;
+ --accent2:#737373; --muted:#787078; --rule:#d8d5e0;
+ --h-font:'Merriweather', serif; --b-font:'IBM Plex Sans', system-ui, sans-serif;
+ --btn-r:10px; --card-r:12px; --card-shadow:0 4px 14px rgba(0,0,0,.06);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pl-hero{padding:5em 3em;background:var(--accent);color:var(--paper);position:relative;overflow:hidden}
+ .pl-hero:after{content:"🐶 🐱 🐾 🦴 🐾 🐶 🐱 🦴";position:absolute;top:0;right:-20%;font-size:14em;opacity:.05;line-height:1;letter-spacing:.5em}
+ .pl-hero h1{font-size:4.5em;font-weight:900;letter-spacing:-.03em;line-height:1;max-width:14ch;margin:0 0 .3em;color:var(--paper)}
+ .pl-hero p{font-size:1.3em;opacity:.9;max-width:600px;margin:1em 0 2em}
+ .pl-hero .btn{background:var(--accent2);color:#fff}
+ .pl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5em;padding:3em;max-width:1200px;margin:0 auto}
+ .pl-card{background:#fff;padding:2em;border-radius:var(--card-r);box-shadow:var(--card-shadow);text-align:center}
+ .pl-card .emoji{font-size:3em;line-height:1}
+ .pl-card h3{margin:.4em 0;font-size:1.3em}
+ .pl-card p{margin:0;color:var(--muted);font-size:.95em}
+</style></head><body>
+ <section class=pl-hero>
+ <small style="opacity:.7;font-weight:700;letter-spacing:.15em;text-transform:uppercase">pet store</small>
+ <h1>Pet Supplies Plus</h1>
+ <p>The Springfield vet your dog actually wants to visit. Treats, head scratches, and zero waiting-room shaking.</p>
+ <a class=btn href=#book>Book online →</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>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">1895 East Sangamon Avenue, Springfield, IL, 62702 · +1-217-528-7301</footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Our Services</h1>
+ <ul style="line-height:2;font-size:1.1em">
+ <li>Annual wellness exams + vaccinations</li>
+ <li>Same-day sick visits (M-F before 11 AM)</li>
+ <li>In-house surgical suite with continuous anesthetic monitoring</li>
+ <li>Dental cleanings + extractions</li>
+ <li>Specialty referrals (cardiology, dermatology, oncology)</li>
+ <li>End-of-life consultations + in-home euthanasia</li>
+ </ul></section></body></html>
\ No newline at end of file
diff --git a/public/sites/pet-supplies-plus-springfield-il-5535/team.html b/public/sites/pet-supplies-plus-springfield-il-5535/team.html
new file mode 100644
index 0000000..7d6ce2c
--- /dev/null
+++ b/public/sites/pet-supplies-plus-springfield-il-5535/team.html
@@ -0,0 +1,46 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Merriweather%3Awght%40400%3B700%3B900%26family%3DIBM%2BPlex%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c0c1c; --paper:#f4f3f6; --accent:#581c87;
+ --accent2:#737373; --muted:#787078; --rule:#d8d5e0;
+ --h-font:'Merriweather', serif; --b-font:'IBM Plex Sans', system-ui, sans-serif;
+ --btn-r:10px; --card-r:12px; --card-shadow:0 4px 14px rgba(0,0,0,.06);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ .pl-hero{padding:5em 3em;background:var(--accent);color:var(--paper);position:relative;overflow:hidden}
+ .pl-hero:after{content:"🐶 🐱 🐾 🦴 🐾 🐶 🐱 🦴";position:absolute;top:0;right:-20%;font-size:14em;opacity:.05;line-height:1;letter-spacing:.5em}
+ .pl-hero h1{font-size:4.5em;font-weight:900;letter-spacing:-.03em;line-height:1;max-width:14ch;margin:0 0 .3em;color:var(--paper)}
+ .pl-hero p{font-size:1.3em;opacity:.9;max-width:600px;margin:1em 0 2em}
+ .pl-hero .btn{background:var(--accent2);color:#fff}
+ .pl-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5em;padding:3em;max-width:1200px;margin:0 auto}
+ .pl-card{background:#fff;padding:2em;border-radius:var(--card-r);box-shadow:var(--card-shadow);text-align:center}
+ .pl-card .emoji{font-size:3em;line-height:1}
+ .pl-card h3{margin:.4em 0;font-size:1.3em}
+ .pl-card p{margin:0;color:var(--muted);font-size:.95em}
+</style></head><body>
+ <section class=pl-hero>
+ <small style="opacity:.7;font-weight:700;letter-spacing:.15em;text-transform:uppercase">pet store</small>
+ <h1>Pet Supplies Plus</h1>
+ <p>The Springfield vet your dog actually wants to visit. Treats, head scratches, and zero waiting-room shaking.</p>
+ <a class=btn href=#book>Book online →</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>
+ </section>
+ <footer style="padding:2em 3em;text-align:center;color:var(--muted)">1895 East Sangamon Avenue, Springfield, IL, 62702 · +1-217-528-7301</footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Our Team</h1>
+ <p style="line-height:1.7;font-size:1.1em">Board-certified veterinarians, Fear Free Certified® technicians, and front-desk staff who remember your pet's name. Photos + bios coming soon — call us at +1-217-528-7301 for an introduction.</p></section></body></html>
\ No newline at end of file
diff --git a/public/sites/the-paw-place-third-lake-il-5465/contact.html b/public/sites/the-paw-place-third-lake-il-5465/contact.html
new file mode 100644
index 0000000..5c098fa
--- /dev/null
+++ b/public/sites/the-paw-place-third-lake-il-5465/contact.html
@@ -0,0 +1,62 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito%3Awght%40400%3B700%3B900%26family%3DNunito%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c0c0c; --paper:#fcfcfa; --accent:#0a0a0a;
+ --accent2:#d4a017; --muted:#5e5e5e; --rule:#e5e5e0;
+ --h-font:'Nunito', serif; --b-font:'Nunito', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:inset 0 -3px 0 var(--accent2);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{font-feature-settings:'kern','liga'}
+ .auth-hero{padding:5em 4em 4em;border-bottom:6px solid var(--accent)}
+ .auth-hero h1{font-size:3.4em;font-weight:800;letter-spacing:-.025em;line-height:1.05;max-width:14ch}
+ .auth-hero .credentials{margin:1em 0 1.5em;font-size:1.1em;color:var(--muted)}
+ .auth-hero .credentials span{display:inline-block;background:var(--accent);color:var(--paper);padding:.2em .6em;border-radius:var(--btn-r);font-size:.85em;font-weight:700;margin-right:.5em;margin-bottom:.4em}
+ .specs{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ink);color:var(--paper)}
+ .specs > div{padding:2em;border-right:1px solid rgba(255,255,255,.1)}
+ .specs strong{display:block;font-size:2.2em;font-family:var(--h-font);color:var(--accent2);font-weight:900}
+ .specs span{display:block;color:rgba(255,255,255,.7);font-size:.9em;margin-top:.3em;text-transform:uppercase;letter-spacing:.1em}
+ .pillars{padding:4em;display:grid;grid-template-columns:repeat(2,1fr);gap:3em}
+ .pillars h3{font-size:1.6em;border-bottom:1px solid var(--rule);padding-bottom:.5em}
+ .pillars p{color:var(--muted);line-height:1.6}
+</style></head><body>
+ <header class=auth-hero>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">pet store · Third Lake, IL</small>
+ <h1>The Paw Place</h1>
+ <div class=credentials>
+ <span>AAHA Accredited</span><span>24-Hour ICU</span><span>Board-Certified Specialists</span>
+ </div>
+ <a class=btn href=#refer>Refer a patient →</a>
+ </header>
+ <section class=specs>
+ <div><strong>15K+</strong><span>patients seen / yr</span></div>
+ <div><strong>9</strong><span>specialties on staff</span></div>
+ <div><strong>24/7</strong><span>emergency coverage</span></div>
+ <div><strong>14 yrs</strong><span>median DVM tenure</span></div>
+ </section>
+ <section class=pillars>
+ <div><h3>Internal Medicine</h3><p>Endocrine, gastrointestinal, hematology — diagnostics in-house, treatment plans coordinated with your primary vet.</p></div>
+ <div><h3>Cardiology</h3><p>Echocardiography, holter monitoring, BNP testing. Same-week appointments for complex cases.</p></div>
+ <div><h3>Surgery</h3><p>Soft-tissue, orthopedic, and neurosurgical procedures. Board-certified surgeons on every case.</p></div>
+ <div><h3>Oncology</h3><p>Chemotherapy, radiation referrals, palliative-care consults. We call you within 24h of every diagnosis.</p></div>
+ </section>
+ <footer style="padding:2em 4em;background:var(--ink);color:rgba(255,255,255,.7)">34121 US-45, Third Lake, IL, 60030 · +1-224-357-7387</footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Contact</h1>
+ <p style="line-height:1.7;font-size:1.1em"><strong>The Paw Place</strong><br>
+ 34121 US-45, Third Lake, IL, 60030<br>
+ <a href="tel:+1-224-357-7387">+1-224-357-7387</a><br>
+
+ <a href="https://www.pawplaceonline.com/" target="_blank" rel="noopener">https://www.pawplaceonline.com/</a><br>
+ </p></section></body></html>
\ No newline at end of file
diff --git a/public/sites/the-paw-place-third-lake-il-5465/index.html b/public/sites/the-paw-place-third-lake-il-5465/index.html
new file mode 100644
index 0000000..23d9a12
--- /dev/null
+++ b/public/sites/the-paw-place-third-lake-il-5465/index.html
@@ -0,0 +1,56 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito%3Awght%40400%3B700%3B900%26family%3DNunito%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c0c0c; --paper:#fcfcfa; --accent:#0a0a0a;
+ --accent2:#d4a017; --muted:#5e5e5e; --rule:#e5e5e0;
+ --h-font:'Nunito', serif; --b-font:'Nunito', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:inset 0 -3px 0 var(--accent2);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{font-feature-settings:'kern','liga'}
+ .auth-hero{padding:5em 4em 4em;border-bottom:6px solid var(--accent)}
+ .auth-hero h1{font-size:3.4em;font-weight:800;letter-spacing:-.025em;line-height:1.05;max-width:14ch}
+ .auth-hero .credentials{margin:1em 0 1.5em;font-size:1.1em;color:var(--muted)}
+ .auth-hero .credentials span{display:inline-block;background:var(--accent);color:var(--paper);padding:.2em .6em;border-radius:var(--btn-r);font-size:.85em;font-weight:700;margin-right:.5em;margin-bottom:.4em}
+ .specs{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ink);color:var(--paper)}
+ .specs > div{padding:2em;border-right:1px solid rgba(255,255,255,.1)}
+ .specs strong{display:block;font-size:2.2em;font-family:var(--h-font);color:var(--accent2);font-weight:900}
+ .specs span{display:block;color:rgba(255,255,255,.7);font-size:.9em;margin-top:.3em;text-transform:uppercase;letter-spacing:.1em}
+ .pillars{padding:4em;display:grid;grid-template-columns:repeat(2,1fr);gap:3em}
+ .pillars h3{font-size:1.6em;border-bottom:1px solid var(--rule);padding-bottom:.5em}
+ .pillars p{color:var(--muted);line-height:1.6}
+</style></head><body>
+ <header class=auth-hero>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">pet store · Third Lake, IL</small>
+ <h1>The Paw Place</h1>
+ <div class=credentials>
+ <span>AAHA Accredited</span><span>24-Hour ICU</span><span>Board-Certified Specialists</span>
+ </div>
+ <a class=btn href=#refer>Refer a patient →</a>
+ </header>
+ <section class=specs>
+ <div><strong>15K+</strong><span>patients seen / yr</span></div>
+ <div><strong>9</strong><span>specialties on staff</span></div>
+ <div><strong>24/7</strong><span>emergency coverage</span></div>
+ <div><strong>14 yrs</strong><span>median DVM tenure</span></div>
+ </section>
+ <section class=pillars>
+ <div><h3>Internal Medicine</h3><p>Endocrine, gastrointestinal, hematology — diagnostics in-house, treatment plans coordinated with your primary vet.</p></div>
+ <div><h3>Cardiology</h3><p>Echocardiography, holter monitoring, BNP testing. Same-week appointments for complex cases.</p></div>
+ <div><h3>Surgery</h3><p>Soft-tissue, orthopedic, and neurosurgical procedures. Board-certified surgeons on every case.</p></div>
+ <div><h3>Oncology</h3><p>Chemotherapy, radiation referrals, palliative-care consults. We call you within 24h of every diagnosis.</p></div>
+ </section>
+ <footer style="padding:2em 4em;background:var(--ink);color:rgba(255,255,255,.7)">34121 US-45, Third Lake, IL, 60030 · +1-224-357-7387</footer></body></html>
\ No newline at end of file
diff --git a/public/sites/the-paw-place-third-lake-il-5465/services.html b/public/sites/the-paw-place-third-lake-il-5465/services.html
new file mode 100644
index 0000000..5ed1a32
--- /dev/null
+++ b/public/sites/the-paw-place-third-lake-il-5465/services.html
@@ -0,0 +1,64 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito%3Awght%40400%3B700%3B900%26family%3DNunito%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c0c0c; --paper:#fcfcfa; --accent:#0a0a0a;
+ --accent2:#d4a017; --muted:#5e5e5e; --rule:#e5e5e0;
+ --h-font:'Nunito', serif; --b-font:'Nunito', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:inset 0 -3px 0 var(--accent2);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{font-feature-settings:'kern','liga'}
+ .auth-hero{padding:5em 4em 4em;border-bottom:6px solid var(--accent)}
+ .auth-hero h1{font-size:3.4em;font-weight:800;letter-spacing:-.025em;line-height:1.05;max-width:14ch}
+ .auth-hero .credentials{margin:1em 0 1.5em;font-size:1.1em;color:var(--muted)}
+ .auth-hero .credentials span{display:inline-block;background:var(--accent);color:var(--paper);padding:.2em .6em;border-radius:var(--btn-r);font-size:.85em;font-weight:700;margin-right:.5em;margin-bottom:.4em}
+ .specs{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ink);color:var(--paper)}
+ .specs > div{padding:2em;border-right:1px solid rgba(255,255,255,.1)}
+ .specs strong{display:block;font-size:2.2em;font-family:var(--h-font);color:var(--accent2);font-weight:900}
+ .specs span{display:block;color:rgba(255,255,255,.7);font-size:.9em;margin-top:.3em;text-transform:uppercase;letter-spacing:.1em}
+ .pillars{padding:4em;display:grid;grid-template-columns:repeat(2,1fr);gap:3em}
+ .pillars h3{font-size:1.6em;border-bottom:1px solid var(--rule);padding-bottom:.5em}
+ .pillars p{color:var(--muted);line-height:1.6}
+</style></head><body>
+ <header class=auth-hero>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">pet store · Third Lake, IL</small>
+ <h1>The Paw Place</h1>
+ <div class=credentials>
+ <span>AAHA Accredited</span><span>24-Hour ICU</span><span>Board-Certified Specialists</span>
+ </div>
+ <a class=btn href=#refer>Refer a patient →</a>
+ </header>
+ <section class=specs>
+ <div><strong>15K+</strong><span>patients seen / yr</span></div>
+ <div><strong>9</strong><span>specialties on staff</span></div>
+ <div><strong>24/7</strong><span>emergency coverage</span></div>
+ <div><strong>14 yrs</strong><span>median DVM tenure</span></div>
+ </section>
+ <section class=pillars>
+ <div><h3>Internal Medicine</h3><p>Endocrine, gastrointestinal, hematology — diagnostics in-house, treatment plans coordinated with your primary vet.</p></div>
+ <div><h3>Cardiology</h3><p>Echocardiography, holter monitoring, BNP testing. Same-week appointments for complex cases.</p></div>
+ <div><h3>Surgery</h3><p>Soft-tissue, orthopedic, and neurosurgical procedures. Board-certified surgeons on every case.</p></div>
+ <div><h3>Oncology</h3><p>Chemotherapy, radiation referrals, palliative-care consults. We call you within 24h of every diagnosis.</p></div>
+ </section>
+ <footer style="padding:2em 4em;background:var(--ink);color:rgba(255,255,255,.7)">34121 US-45, Third Lake, IL, 60030 · +1-224-357-7387</footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Our Services</h1>
+ <ul style="line-height:2;font-size:1.1em">
+ <li>Annual wellness exams + vaccinations</li>
+ <li>Same-day sick visits (M-F before 11 AM)</li>
+ <li>In-house surgical suite with continuous anesthetic monitoring</li>
+ <li>Dental cleanings + extractions</li>
+ <li>Specialty referrals (cardiology, dermatology, oncology)</li>
+ <li>End-of-life consultations + in-home euthanasia</li>
+ </ul></section></body></html>
\ No newline at end of file
diff --git a/public/sites/the-paw-place-third-lake-il-5465/team.html b/public/sites/the-paw-place-third-lake-il-5465/team.html
new file mode 100644
index 0000000..022c776
--- /dev/null
+++ b/public/sites/the-paw-place-third-lake-il-5465/team.html
@@ -0,0 +1,57 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito%3Awght%40400%3B700%3B900%26family%3DNunito%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0c0c0c; --paper:#fcfcfa; --accent:#0a0a0a;
+ --accent2:#d4a017; --muted:#5e5e5e; --rule:#e5e5e0;
+ --h-font:'Nunito', serif; --b-font:'Nunito', system-ui, sans-serif;
+ --btn-r:2px; --card-r:0; --card-shadow:inset 0 -3px 0 var(--accent2);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{font-feature-settings:'kern','liga'}
+ .auth-hero{padding:5em 4em 4em;border-bottom:6px solid var(--accent)}
+ .auth-hero h1{font-size:3.4em;font-weight:800;letter-spacing:-.025em;line-height:1.05;max-width:14ch}
+ .auth-hero .credentials{margin:1em 0 1.5em;font-size:1.1em;color:var(--muted)}
+ .auth-hero .credentials span{display:inline-block;background:var(--accent);color:var(--paper);padding:.2em .6em;border-radius:var(--btn-r);font-size:.85em;font-weight:700;margin-right:.5em;margin-bottom:.4em}
+ .specs{display:grid;grid-template-columns:repeat(4,1fr);background:var(--ink);color:var(--paper)}
+ .specs > div{padding:2em;border-right:1px solid rgba(255,255,255,.1)}
+ .specs strong{display:block;font-size:2.2em;font-family:var(--h-font);color:var(--accent2);font-weight:900}
+ .specs span{display:block;color:rgba(255,255,255,.7);font-size:.9em;margin-top:.3em;text-transform:uppercase;letter-spacing:.1em}
+ .pillars{padding:4em;display:grid;grid-template-columns:repeat(2,1fr);gap:3em}
+ .pillars h3{font-size:1.6em;border-bottom:1px solid var(--rule);padding-bottom:.5em}
+ .pillars p{color:var(--muted);line-height:1.6}
+</style></head><body>
+ <header class=auth-hero>
+ <small style="text-transform:uppercase;letter-spacing:.15em;color:var(--accent2);font-weight:700">pet store · Third Lake, IL</small>
+ <h1>The Paw Place</h1>
+ <div class=credentials>
+ <span>AAHA Accredited</span><span>24-Hour ICU</span><span>Board-Certified Specialists</span>
+ </div>
+ <a class=btn href=#refer>Refer a patient →</a>
+ </header>
+ <section class=specs>
+ <div><strong>15K+</strong><span>patients seen / yr</span></div>
+ <div><strong>9</strong><span>specialties on staff</span></div>
+ <div><strong>24/7</strong><span>emergency coverage</span></div>
+ <div><strong>14 yrs</strong><span>median DVM tenure</span></div>
+ </section>
+ <section class=pillars>
+ <div><h3>Internal Medicine</h3><p>Endocrine, gastrointestinal, hematology — diagnostics in-house, treatment plans coordinated with your primary vet.</p></div>
+ <div><h3>Cardiology</h3><p>Echocardiography, holter monitoring, BNP testing. Same-week appointments for complex cases.</p></div>
+ <div><h3>Surgery</h3><p>Soft-tissue, orthopedic, and neurosurgical procedures. Board-certified surgeons on every case.</p></div>
+ <div><h3>Oncology</h3><p>Chemotherapy, radiation referrals, palliative-care consults. We call you within 24h of every diagnosis.</p></div>
+ </section>
+ <footer style="padding:2em 4em;background:var(--ink);color:rgba(255,255,255,.7)">34121 US-45, Third Lake, IL, 60030 · +1-224-357-7387</footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Our Team</h1>
+ <p style="line-height:1.7;font-size:1.1em">Board-certified veterinarians, Fear Free Certified® technicians, and front-desk staff who remember your pet's name. Photos + bios coming soon — call us at +1-224-357-7387 for an introduction.</p></section></body></html>
\ No newline at end of file
diff --git a/public/sites/woodbine-hill-kennel-huntley-il-5509/contact.html b/public/sites/woodbine-hill-kennel-huntley-il-5509/contact.html
new file mode 100644
index 0000000..2e0a58c
--- /dev/null
+++ b/public/sites/woodbine-hill-kennel-huntley-il-5509/contact.html
@@ -0,0 +1,45 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Libre%2BBaskerville%3Awght%40400%3B700%3B900%26family%3DOpen%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0f172a; --paper:#f8fafc; --accent:#0ea5e9;
+ --accent2:#f97316; --muted:#64748b; --rule:#e2e8f0;
+ --h-font:'Libre Baskerville', serif; --b-font:'Open Sans', system-ui, sans-serif;
+ --btn-r:4px; --card-r:4px; --card-shadow:0 2px 4px rgba(0,0,0,.04);
+ --divider:solid 1px var(--accent);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{display:flex;flex-direction:column;min-height:100vh}
+ .min-nav{padding:2em 4em;display:flex;justify-content:space-between;align-items:center;font-size:.9em;letter-spacing:.05em}
+ .min-nav strong{font-size:1em;font-weight:600}
+ .min-nav a{margin-left:1.5em;color:var(--ink)}
+ .min-hero{flex:1;padding:6em 4em;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:900px;margin:0 auto}
+ .min-hero h1{font-size:5em;font-weight:300;letter-spacing:-.04em;line-height:1.05;margin:0 0 .3em}
+ .min-hero p{font-size:1.2em;color:var(--muted);max-width:520px;margin:1em 0 2em;line-height:1.7;font-weight:300}
+ .min-hero .arrow{font-size:1em;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:.2em}
+ .min-foot{padding:2em 4em;border-top:1px solid var(--rule);display:flex;justify-content:space-between;color:var(--muted);font-size:.85em}
+</style></head><body>
+ <header class=min-nav><strong>Woodbine Hill Kennel</strong><div><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a><a href=#>Book</a></div></header>
+ <main class=min-hero>
+ <h1>Woodbine Hill Kennel.</h1>
+ <p>A small, deliberately quiet veterinary practice in Huntley.<br>By appointment.</p>
+ <a class=arrow href=#book>Request an appointment →</a>
+ </main>
+ <footer class=min-foot><span>10425 Woodbine Road, Huntley, IL, 60142</span><span>+1-815-455-3601</span></footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Contact</h1>
+ <p style="line-height:1.7;font-size:1.1em"><strong>Woodbine Hill Kennel</strong><br>
+ 10425 Woodbine Road, Huntley, IL, 60142<br>
+ <a href="tel:+1-815-455-3601">+1-815-455-3601</a><br>
+
+ <a href="https://woodbinehillkennel.com/" target="_blank" rel="noopener">https://woodbinehillkennel.com/</a><br>
+ </p></section></body></html>
\ No newline at end of file
diff --git a/public/sites/woodbine-hill-kennel-huntley-il-5509/index.html b/public/sites/woodbine-hill-kennel-huntley-il-5509/index.html
new file mode 100644
index 0000000..ee97f39
--- /dev/null
+++ b/public/sites/woodbine-hill-kennel-huntley-il-5509/index.html
@@ -0,0 +1,39 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Libre%2BBaskerville%3Awght%40400%3B700%3B900%26family%3DOpen%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0f172a; --paper:#f8fafc; --accent:#0ea5e9;
+ --accent2:#f97316; --muted:#64748b; --rule:#e2e8f0;
+ --h-font:'Libre Baskerville', serif; --b-font:'Open Sans', system-ui, sans-serif;
+ --btn-r:4px; --card-r:4px; --card-shadow:0 2px 4px rgba(0,0,0,.04);
+ --divider:solid 1px var(--accent);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{display:flex;flex-direction:column;min-height:100vh}
+ .min-nav{padding:2em 4em;display:flex;justify-content:space-between;align-items:center;font-size:.9em;letter-spacing:.05em}
+ .min-nav strong{font-size:1em;font-weight:600}
+ .min-nav a{margin-left:1.5em;color:var(--ink)}
+ .min-hero{flex:1;padding:6em 4em;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:900px;margin:0 auto}
+ .min-hero h1{font-size:5em;font-weight:300;letter-spacing:-.04em;line-height:1.05;margin:0 0 .3em}
+ .min-hero p{font-size:1.2em;color:var(--muted);max-width:520px;margin:1em 0 2em;line-height:1.7;font-weight:300}
+ .min-hero .arrow{font-size:1em;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:.2em}
+ .min-foot{padding:2em 4em;border-top:1px solid var(--rule);display:flex;justify-content:space-between;color:var(--muted);font-size:.85em}
+</style></head><body>
+ <header class=min-nav><strong>Woodbine Hill Kennel</strong><div><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a><a href=#>Book</a></div></header>
+ <main class=min-hero>
+ <h1>Woodbine Hill Kennel.</h1>
+ <p>A small, deliberately quiet veterinary practice in Huntley.<br>By appointment.</p>
+ <a class=arrow href=#book>Request an appointment →</a>
+ </main>
+ <footer class=min-foot><span>10425 Woodbine Road, Huntley, IL, 60142</span><span>+1-815-455-3601</span></footer></body></html>
\ No newline at end of file
diff --git a/public/sites/woodbine-hill-kennel-huntley-il-5509/services.html b/public/sites/woodbine-hill-kennel-huntley-il-5509/services.html
new file mode 100644
index 0000000..27e299c
--- /dev/null
+++ b/public/sites/woodbine-hill-kennel-huntley-il-5509/services.html
@@ -0,0 +1,47 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Libre%2BBaskerville%3Awght%40400%3B700%3B900%26family%3DOpen%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0f172a; --paper:#f8fafc; --accent:#0ea5e9;
+ --accent2:#f97316; --muted:#64748b; --rule:#e2e8f0;
+ --h-font:'Libre Baskerville', serif; --b-font:'Open Sans', system-ui, sans-serif;
+ --btn-r:4px; --card-r:4px; --card-shadow:0 2px 4px rgba(0,0,0,.04);
+ --divider:solid 1px var(--accent);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{display:flex;flex-direction:column;min-height:100vh}
+ .min-nav{padding:2em 4em;display:flex;justify-content:space-between;align-items:center;font-size:.9em;letter-spacing:.05em}
+ .min-nav strong{font-size:1em;font-weight:600}
+ .min-nav a{margin-left:1.5em;color:var(--ink)}
+ .min-hero{flex:1;padding:6em 4em;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:900px;margin:0 auto}
+ .min-hero h1{font-size:5em;font-weight:300;letter-spacing:-.04em;line-height:1.05;margin:0 0 .3em}
+ .min-hero p{font-size:1.2em;color:var(--muted);max-width:520px;margin:1em 0 2em;line-height:1.7;font-weight:300}
+ .min-hero .arrow{font-size:1em;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:.2em}
+ .min-foot{padding:2em 4em;border-top:1px solid var(--rule);display:flex;justify-content:space-between;color:var(--muted);font-size:.85em}
+</style></head><body>
+ <header class=min-nav><strong>Woodbine Hill Kennel</strong><div><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a><a href=#>Book</a></div></header>
+ <main class=min-hero>
+ <h1>Woodbine Hill Kennel.</h1>
+ <p>A small, deliberately quiet veterinary practice in Huntley.<br>By appointment.</p>
+ <a class=arrow href=#book>Request an appointment →</a>
+ </main>
+ <footer class=min-foot><span>10425 Woodbine Road, Huntley, IL, 60142</span><span>+1-815-455-3601</span></footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Our Services</h1>
+ <ul style="line-height:2;font-size:1.1em">
+ <li>Annual wellness exams + vaccinations</li>
+ <li>Same-day sick visits (M-F before 11 AM)</li>
+ <li>In-house surgical suite with continuous anesthetic monitoring</li>
+ <li>Dental cleanings + extractions</li>
+ <li>Specialty referrals (cardiology, dermatology, oncology)</li>
+ <li>End-of-life consultations + in-home euthanasia</li>
+ </ul></section></body></html>
\ No newline at end of file
diff --git a/public/sites/woodbine-hill-kennel-huntley-il-5509/team.html b/public/sites/woodbine-hill-kennel-huntley-il-5509/team.html
new file mode 100644
index 0000000..700db5b
--- /dev/null
+++ b/public/sites/woodbine-hill-kennel-huntley-il-5509/team.html
@@ -0,0 +1,40 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Libre%2BBaskerville%3Awght%40400%3B700%3B900%26family%3DOpen%2BSans%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#0f172a; --paper:#f8fafc; --accent:#0ea5e9;
+ --accent2:#f97316; --muted:#64748b; --rule:#e2e8f0;
+ --h-font:'Libre Baskerville', serif; --b-font:'Open Sans', system-ui, sans-serif;
+ --btn-r:4px; --card-r:4px; --card-shadow:0 2px 4px rgba(0,0,0,.04);
+ --divider:solid 1px var(--accent);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{display:flex;flex-direction:column;min-height:100vh}
+ .min-nav{padding:2em 4em;display:flex;justify-content:space-between;align-items:center;font-size:.9em;letter-spacing:.05em}
+ .min-nav strong{font-size:1em;font-weight:600}
+ .min-nav a{margin-left:1.5em;color:var(--ink)}
+ .min-hero{flex:1;padding:6em 4em;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:900px;margin:0 auto}
+ .min-hero h1{font-size:5em;font-weight:300;letter-spacing:-.04em;line-height:1.05;margin:0 0 .3em}
+ .min-hero p{font-size:1.2em;color:var(--muted);max-width:520px;margin:1em 0 2em;line-height:1.7;font-weight:300}
+ .min-hero .arrow{font-size:1em;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:.2em}
+ .min-foot{padding:2em 4em;border-top:1px solid var(--rule);display:flex;justify-content:space-between;color:var(--muted);font-size:.85em}
+</style></head><body>
+ <header class=min-nav><strong>Woodbine Hill Kennel</strong><div><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a><a href=#>Book</a></div></header>
+ <main class=min-hero>
+ <h1>Woodbine Hill Kennel.</h1>
+ <p>A small, deliberately quiet veterinary practice in Huntley.<br>By appointment.</p>
+ <a class=arrow href=#book>Request an appointment →</a>
+ </main>
+ <footer class=min-foot><span>10425 Woodbine Road, Huntley, IL, 60142</span><span>+1-815-455-3601</span></footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Our Team</h1>
+ <p style="line-height:1.7;font-size:1.1em">Board-certified veterinarians, Fear Free Certified® technicians, and front-desk staff who remember your pet's name. Photos + bios coming soon — call us at +1-815-455-3601 for an introduction.</p></section></body></html>
\ No newline at end of file
diff --git a/public/sites/yorkville-animal-hospital-yorkville-il-5457/contact.html b/public/sites/yorkville-animal-hospital-yorkville-il-5457/contact.html
new file mode 100644
index 0000000..38e7332
--- /dev/null
+++ b/public/sites/yorkville-animal-hospital-yorkville-il-5457/contact.html
@@ -0,0 +1,45 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=EB%2BGaramond%3Awght%40400%3B700%3B900%26family%3DKarla%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c0c1c; --paper:#f4f3f6; --accent:#581c87;
+ --accent2:#737373; --muted:#787078; --rule:#d8d5e0;
+ --h-font:'EB Garamond', serif; --b-font:'Karla', system-ui, sans-serif;
+ --btn-r:12px; --card-r:14px; --card-shadow:0 16px 40px rgba(0,0,0,.12);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{display:flex;flex-direction:column;min-height:100vh}
+ .min-nav{padding:2em 4em;display:flex;justify-content:space-between;align-items:center;font-size:.9em;letter-spacing:.05em}
+ .min-nav strong{font-size:1em;font-weight:600}
+ .min-nav a{margin-left:1.5em;color:var(--ink)}
+ .min-hero{flex:1;padding:6em 4em;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:900px;margin:0 auto}
+ .min-hero h1{font-size:5em;font-weight:300;letter-spacing:-.04em;line-height:1.05;margin:0 0 .3em}
+ .min-hero p{font-size:1.2em;color:var(--muted);max-width:520px;margin:1em 0 2em;line-height:1.7;font-weight:300}
+ .min-hero .arrow{font-size:1em;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:.2em}
+ .min-foot{padding:2em 4em;border-top:1px solid var(--rule);display:flex;justify-content:space-between;color:var(--muted);font-size:.85em}
+</style></head><body>
+ <header class=min-nav><strong>Yorkville Animal Hospital</strong><div><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a><a href=#>Book</a></div></header>
+ <main class=min-hero>
+ <h1>Yorkville Animal Hospital.</h1>
+ <p>A small, deliberately quiet veterinary practice in Yorkville.<br>By appointment.</p>
+ <a class=arrow href=#book>Request an appointment →</a>
+ </main>
+ <footer class=min-foot><span>102 Garden Street, Yorkville, IL, 60560</span><span>+1-630-882-6060</span></footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Contact</h1>
+ <p style="line-height:1.7;font-size:1.1em"><strong>Yorkville Animal Hospital</strong><br>
+ 102 Garden Street, Yorkville, IL, 60560<br>
+ <a href="tel:+1-630-882-6060">+1-630-882-6060</a><br>
+
+ <a href="http://www.yorkvilleanimalhospital.com" target="_blank" rel="noopener">http://www.yorkvilleanimalhospital.com</a><br>
+ </p></section></body></html>
\ No newline at end of file
diff --git a/public/sites/yorkville-animal-hospital-yorkville-il-5457/index.html b/public/sites/yorkville-animal-hospital-yorkville-il-5457/index.html
new file mode 100644
index 0000000..76ac99f
--- /dev/null
+++ b/public/sites/yorkville-animal-hospital-yorkville-il-5457/index.html
@@ -0,0 +1,39 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=EB%2BGaramond%3Awght%40400%3B700%3B900%26family%3DKarla%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c0c1c; --paper:#f4f3f6; --accent:#581c87;
+ --accent2:#737373; --muted:#787078; --rule:#d8d5e0;
+ --h-font:'EB Garamond', serif; --b-font:'Karla', system-ui, sans-serif;
+ --btn-r:12px; --card-r:14px; --card-shadow:0 16px 40px rgba(0,0,0,.12);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{display:flex;flex-direction:column;min-height:100vh}
+ .min-nav{padding:2em 4em;display:flex;justify-content:space-between;align-items:center;font-size:.9em;letter-spacing:.05em}
+ .min-nav strong{font-size:1em;font-weight:600}
+ .min-nav a{margin-left:1.5em;color:var(--ink)}
+ .min-hero{flex:1;padding:6em 4em;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:900px;margin:0 auto}
+ .min-hero h1{font-size:5em;font-weight:300;letter-spacing:-.04em;line-height:1.05;margin:0 0 .3em}
+ .min-hero p{font-size:1.2em;color:var(--muted);max-width:520px;margin:1em 0 2em;line-height:1.7;font-weight:300}
+ .min-hero .arrow{font-size:1em;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:.2em}
+ .min-foot{padding:2em 4em;border-top:1px solid var(--rule);display:flex;justify-content:space-between;color:var(--muted);font-size:.85em}
+</style></head><body>
+ <header class=min-nav><strong>Yorkville Animal Hospital</strong><div><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a><a href=#>Book</a></div></header>
+ <main class=min-hero>
+ <h1>Yorkville Animal Hospital.</h1>
+ <p>A small, deliberately quiet veterinary practice in Yorkville.<br>By appointment.</p>
+ <a class=arrow href=#book>Request an appointment →</a>
+ </main>
+ <footer class=min-foot><span>102 Garden Street, Yorkville, IL, 60560</span><span>+1-630-882-6060</span></footer></body></html>
\ No newline at end of file
diff --git a/public/sites/yorkville-animal-hospital-yorkville-il-5457/services.html b/public/sites/yorkville-animal-hospital-yorkville-il-5457/services.html
new file mode 100644
index 0000000..3dbd8f2
--- /dev/null
+++ b/public/sites/yorkville-animal-hospital-yorkville-il-5457/services.html
@@ -0,0 +1,47 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=EB%2BGaramond%3Awght%40400%3B700%3B900%26family%3DKarla%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c0c1c; --paper:#f4f3f6; --accent:#581c87;
+ --accent2:#737373; --muted:#787078; --rule:#d8d5e0;
+ --h-font:'EB Garamond', serif; --b-font:'Karla', system-ui, sans-serif;
+ --btn-r:12px; --card-r:14px; --card-shadow:0 16px 40px rgba(0,0,0,.12);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{display:flex;flex-direction:column;min-height:100vh}
+ .min-nav{padding:2em 4em;display:flex;justify-content:space-between;align-items:center;font-size:.9em;letter-spacing:.05em}
+ .min-nav strong{font-size:1em;font-weight:600}
+ .min-nav a{margin-left:1.5em;color:var(--ink)}
+ .min-hero{flex:1;padding:6em 4em;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:900px;margin:0 auto}
+ .min-hero h1{font-size:5em;font-weight:300;letter-spacing:-.04em;line-height:1.05;margin:0 0 .3em}
+ .min-hero p{font-size:1.2em;color:var(--muted);max-width:520px;margin:1em 0 2em;line-height:1.7;font-weight:300}
+ .min-hero .arrow{font-size:1em;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:.2em}
+ .min-foot{padding:2em 4em;border-top:1px solid var(--rule);display:flex;justify-content:space-between;color:var(--muted);font-size:.85em}
+</style></head><body>
+ <header class=min-nav><strong>Yorkville Animal Hospital</strong><div><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a><a href=#>Book</a></div></header>
+ <main class=min-hero>
+ <h1>Yorkville Animal Hospital.</h1>
+ <p>A small, deliberately quiet veterinary practice in Yorkville.<br>By appointment.</p>
+ <a class=arrow href=#book>Request an appointment →</a>
+ </main>
+ <footer class=min-foot><span>102 Garden Street, Yorkville, IL, 60560</span><span>+1-630-882-6060</span></footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Our Services</h1>
+ <ul style="line-height:2;font-size:1.1em">
+ <li>Annual wellness exams + vaccinations</li>
+ <li>Same-day sick visits (M-F before 11 AM)</li>
+ <li>In-house surgical suite with continuous anesthetic monitoring</li>
+ <li>Dental cleanings + extractions</li>
+ <li>Specialty referrals (cardiology, dermatology, oncology)</li>
+ <li>End-of-life consultations + in-home euthanasia</li>
+ </ul></section></body></html>
\ No newline at end of file
diff --git a/public/sites/yorkville-animal-hospital-yorkville-il-5457/team.html b/public/sites/yorkville-animal-hospital-yorkville-il-5457/team.html
new file mode 100644
index 0000000..b211db7
--- /dev/null
+++ b/public/sites/yorkville-animal-hospital-yorkville-il-5457/team.html
@@ -0,0 +1,40 @@
+<!doctype html><html><head><meta charset=utf-8>
+<link rel="preconnect" href="https://fonts.googleapis.com">
+<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
+<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=EB%2BGaramond%3Awght%40400%3B700%3B900%26family%3DKarla%3Awght%40400%3B500%3B600%3B700&display=swap">
+<style>
+:root{
+ --ink:#1c0c1c; --paper:#f4f3f6; --accent:#581c87;
+ --accent2:#737373; --muted:#787078; --rule:#d8d5e0;
+ --h-font:'EB Garamond', serif; --b-font:'Karla', system-ui, sans-serif;
+ --btn-r:12px; --card-r:14px; --card-shadow:0 16px 40px rgba(0,0,0,.12);
+ --divider:solid 1px var(--rule);
+}
+*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--b-font);font-size:16px;line-height:1.55}
+h1,h2,h3,h4{font-family:var(--h-font);margin:0 0 .4em;letter-spacing:-.01em}
+a{color:var(--accent);text-decoration:none}
+.btn{display:inline-block;background:var(--accent);color:var(--paper);padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-2{display:inline-block;background:var(--accent2);color:#fff;padding:.85em 1.6em;border-radius:var(--btn-r);font-weight:700;text-decoration:none}
+.btn-ghost{display:inline-block;border:1.5px solid var(--ink);color:var(--ink);padding:.8em 1.5em;border-radius:var(--btn-r);font-weight:600;text-decoration:none}
+.card{background:#fff;border-radius:var(--card-r);box-shadow:var(--card-shadow);padding:1.5em}
+.divider{border:0;border-top:var(--divider);margin:2em 0}
+.muted{color:var(--muted)}
+
+ body{display:flex;flex-direction:column;min-height:100vh}
+ .min-nav{padding:2em 4em;display:flex;justify-content:space-between;align-items:center;font-size:.9em;letter-spacing:.05em}
+ .min-nav strong{font-size:1em;font-weight:600}
+ .min-nav a{margin-left:1.5em;color:var(--ink)}
+ .min-hero{flex:1;padding:6em 4em;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;max-width:900px;margin:0 auto}
+ .min-hero h1{font-size:5em;font-weight:300;letter-spacing:-.04em;line-height:1.05;margin:0 0 .3em}
+ .min-hero p{font-size:1.2em;color:var(--muted);max-width:520px;margin:1em 0 2em;line-height:1.7;font-weight:300}
+ .min-hero .arrow{font-size:1em;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:.2em}
+ .min-foot{padding:2em 4em;border-top:1px solid var(--rule);display:flex;justify-content:space-between;color:var(--muted);font-size:.85em}
+</style></head><body>
+ <header class=min-nav><strong>Yorkville Animal Hospital</strong><div><a href=#>Services</a><a href=#>Team</a><a href=#>Visit</a><a href=#>Book</a></div></header>
+ <main class=min-hero>
+ <h1>Yorkville Animal Hospital.</h1>
+ <p>A small, deliberately quiet veterinary practice in Yorkville.<br>By appointment.</p>
+ <a class=arrow href=#book>Request an appointment →</a>
+ </main>
+ <footer class=min-foot><span>102 Garden Street, Yorkville, IL, 60560</span><span>+1-630-882-6060</span></footer><section style="padding:4em 3em;max-width:900px;margin:0 auto"><h1>Our Team</h1>
+ <p style="line-height:1.7;font-size:1.1em">Board-certified veterinarians, Fear Free Certified® technicians, and front-desk staff who remember your pet's name. Photos + bios coming soon — call us at +1-630-882-6060 for an introduction.</p></section></body></html>
\ No newline at end of file
← 05cb1bc yolo: iter 1 trivial patches from claude-codex debate
·
back to Animals
·
yolo: iter 3 trivial patches from claude-codex debate c0c2328 →