{
  "schemaVersion": 2,
  "name": "Wagtail",
  "slug": "wagtail",
  "blocks": [
    "Pages",
    "Lists: services, team, hours",
    "Actions: book"
  ],
  "persona": "local-services",
  "keywords": [
    "vet",
    "veterinary",
    "veterinary practice",
    "small animal",
    "pet",
    "dog",
    "cat",
    "rabbit",
    "animal clinic",
    "emergency vet",
    "booking"
  ],
  "description": "Enamel pet tags on cream: mustard tag discs for every price, a swinging name tag in the hero, navy type, a tomato out-of-hours strip and a booking picker for a small-animal vet.",
  "audience": [
    "vet",
    "veterinary practice",
    "animal clinic",
    "small-animal practice"
  ],
  "category": "Health",
  "job": "health-fitness",
  "categoryId": "clinic",
  "alsoFits": [
    "veterinary nurse clinic",
    "dog groomer",
    "animal hospital",
    "cat clinic",
    "pet health practice"
  ],
  "direction": "Enamel pet tags: mustard discs with punched holes, navy ink on cream, a swinging name tag and a tomato emergency strip",
  "mood": [
    "light",
    "bold",
    "modern"
  ],
  "schemaOrg": "VeterinaryCare",
  "palette": {
    "--cream": "#FBF4E2",
    "--mustard": "#F4BC3A",
    "--ink": "#1C2540",
    "--tomato": "#C23A1F"
  },
  "fonts": [
    "Gloock",
    "Nunito Sans"
  ],
  "pages": [
    {
      "path": "index.html",
      "label": "Home",
      "purpose": "Swinging pet-tag hero with the check-up price and opening hours, four prices, the emergency block, the team and the book CTA"
    },
    {
      "path": "services.html",
      "label": "Services",
      "purpose": "HTML price list of everyday visits, what planned operations involve, and the book CTA"
    },
    {
      "path": "team.html",
      "label": "Team",
      "purpose": "The vets and head nurse with special interests, the waiting room, one kind review and the book CTA"
    },
    {
      "path": "book.html",
      "label": "Book a visit",
      "purpose": "Booking slot with a phone fallback and the inert booking picker, the emergency block and what happens after a request"
    },
    {
      "path": "visit.html",
      "label": "Visit",
      "purpose": "Address with map link, getting here, opening hours as a list and the out-of-hours emergency block"
    }
  ],
  "slots": [
    {
      "id": "booking",
      "kind": "booking",
      "page": "book.html",
      "fallback": "tel"
    }
  ],
  "facts": [
    "practice name and town",
    "address (street, town, postcode)",
    "phone",
    "email",
    "opening hours",
    "out-of-hours emergency number and who answers it",
    "services, lengths and prices",
    "team names, roles and years",
    "parking, bus and step-free access",
    "reviews from clients (only real ones)",
    "social link"
  ],
  "interview": [
    "What is the practice called, and which town and street is it on?",
    "What are your opening hours, and which days are closed?",
    "Who covers emergencies out of hours, and what is their number?",
    "Which treatments do you offer, how long does each take, and what does each cost?",
    "Who works at the practice, and what is each person's special interest?",
    "Do you want clients to book online, by phone, or both?"
  ],
  "customise": {
    "strings": [
      "Business name 'Wagtail Vets' in every <title>, meta description, header brand, footer and JSON-LD",
      "Services and prices on services.html and index.html (the booking picker in book.html must match)",
      "Team names, roles, years and bios on team.html and index.html",
      "Opening hours in the hours list on visit.html, the footer, the book page and JSON-LD: identical everywhere",
      "Address (7 Millrace Lane, Pennyfold, PF3 8QT), telephone and email: identical in the footer, JSON-LD, visit.html and book.html",
      "Out-of-hours number and hospital name in the top strip, the footer and the emergency block (index.html, book.html, visit.html)"
    ],
    "colours": "Edit the :root tokens at the top of styles.css. Keep --tomato and --ink at 4.5:1 or better with white and cream, and update the theme-color meta on every page",
    "fonts": "Change the Google Fonts <link> on every page and --font-display / --font-body in styles.css",
    "sections": "Each page is self-contained: header with the out-of-hours strip, at most four links and one CTA, the footer and the mobile Call / Book / Directions bar. Lists: services (services.html, index.html), team (team.html, index.html) and hours (visit.html). Booking slot (book.html, id booking): ask the person for their services, hours and rules, add the booking, confirm the summary with them, then build the picker from the inert template in this design (fill it from slots_url, post JSON to post_url) and keep its link to booking_url for visitors without JavaScript. Test with one test booking before calling it live. Do not add a booking form anywhere else.",
    "images": "Replace the SVG portraits art/imogen.svg, art/tomasz.svg and art/bridie.svg with real staff photos (600×600, shown in a round tag frame); art/waiting-room.svg (1280×800, an empty waiting room) and art/front-door.svg (640×800, the practice door). Keep the width, height and data-pl-photo notes; WebP under 300 KB. Show no identifiable clients. The pipeline generates og.png and apple-touch-icon.png."
  },
  "files": [
    "index.html",
    "services.html",
    "team.html",
    "book.html",
    "visit.html",
    "privacy.html",
    "404.html",
    "styles.css",
    "script.js",
    "favicon.svg",
    "og.png",
    "apple-touch-icon.png",
    "art/paws.svg",
    "art/imogen.svg",
    "art/tomasz.svg",
    "art/bridie.svg",
    "art/front-door.svg",
    "art/waiting-room.svg"
  ],
  "updated": "2026-11-03",
  "visuals": {
    "notes": "All art is flat SVG: round staff portraits with a pet each, a yellow front door and a waiting room. The hero is CSS: a brass-yellow pet tag with a punched hole that swings gently on a string.",
    "prompt": "Flat illustrated vet practice: mustard, navy, tomato and moss green on cream, round pet-tag frames, paw prints, no photos of clients."
  },
  "lists": [
    {
      "name": "services",
      "label": "Services and prices",
      "pages": [
        "index.html",
        "services.html"
      ],
      "fields": [
        {
          "name": "name",
          "type": "text",
          "label": "Service"
        },
        {
          "name": "description",
          "type": "long_text",
          "label": "Description"
        },
        {
          "name": "time",
          "type": "text",
          "label": "Length"
        },
        {
          "name": "price",
          "type": "money",
          "label": "Price"
        }
      ],
      "items": [
        {
          "name": "Check-up and booster",
          "description": "A nose-to-tail check, the yearly vaccination booster and a talk about weight, teeth and worming. Dogs, cats and rabbits.",
          "time": "25 min",
          "price": 46
        },
        {
          "name": "Puppy and kitten start",
          "description": "First vaccinations, a microchip chat and a proper plan for fleas, worms and food. Bring the whole litter-box of questions.",
          "time": "30 min",
          "price": 58
        },
        {
          "name": "Microchipping",
          "description": "A chip the size of a rice grain, registered the same day. Done in a minute, with treats.",
          "time": "10 min",
          "price": 22
        },
        {
          "name": "Dental scale and polish",
          "description": "A check, a day under anaesthetic and a clean mouth by teatime. Standard price for a dog up to 25 kg.",
          "time": "Day stay",
          "price": 210
        },
        {
          "name": "Neutering, cat",
          "description": "Planned surgery with pain relief, a cosy recovery pen and a call from the nurse that evening.",
          "time": "Day stay",
          "price": 98
        },
        {
          "name": "Blood test and screen",
          "description": "A full health screen for an older pet or before an operation. Results the same afternoon.",
          "time": "30 min",
          "price": 74
        },
        {
          "name": "Senior pet clinic",
          "description": "A longer look at joints, eyes, kidneys and appetite for pets over eight, with a plan you can follow at home.",
          "time": "30 min",
          "price": 39
        },
        {
          "name": "Weigh-in and nail clinic",
          "description": "Run by the nurses, no appointment needed on Tuesday and Thursday mornings. Treat jar provided.",
          "time": "15 min",
          "price": 12
        }
      ]
    },
    {
      "name": "team",
      "label": "Team",
      "pages": [
        "index.html",
        "team.html"
      ],
      "fields": [
        {
          "name": "photo",
          "type": "image",
          "label": "Portrait"
        },
        {
          "name": "name",
          "type": "text",
          "label": "Name"
        },
        {
          "name": "role",
          "type": "text",
          "label": "Role"
        },
        {
          "name": "since",
          "type": "text",
          "label": "With us since"
        },
        {
          "name": "tagline",
          "type": "text",
          "label": "Tagline"
        },
        {
          "name": "bio",
          "type": "long_text",
          "label": "Biography"
        },
        {
          "name": "speciality",
          "type": "text",
          "label": "Special interest"
        }
      ],
      "items": [
        {
          "photo": "art/imogen.svg",
          "name": "Dr Imogen Parr",
          "role": "Principal vet",
          "since": "2012",
          "tagline": "Gentle with big dogs, patient with small owners.",
          "bio": "Imogen founded the practice on Millrace Lane and still sees the nervous ones herself. She will talk through the options before anything is booked.",
          "speciality": "dogs, skin trouble and anxious patients."
        },
        {
          "photo": "art/tomasz.svg",
          "name": "Dr Tomasz Kerrigan",
          "role": "Vet",
          "since": "2018",
          "tagline": "Rabbits first, then everything with fur.",
          "bio": "Tomasz trained in exotic and small mammal medicine and runs the rabbit and guinea pig clinic on Wednesdays. His own rabbit, Pickle, supervises.",
          "speciality": "rabbits, guinea pigs and soft tissue surgery."
        },
        {
          "photo": "art/bridie.svg",
          "name": "Bridie Okafor",
          "role": "Head nurse",
          "since": "2015",
          "tagline": "Knows every pet by name, and most of their owners.",
          "bio": "Bridie runs the nurse clinics, the puppy classes and recovery for every operation. She is the voice on the phone when you ring after a procedure.",
          "speciality": "puppy classes, nail clinics and recovery care."
        }
      ]
    },
    {
      "name": "hours",
      "label": "Opening hours",
      "pages": [
        "visit.html"
      ],
      "fields": [
        {
          "name": "day",
          "type": "text",
          "label": "Day"
        },
        {
          "name": "hours",
          "type": "text",
          "label": "Hours"
        }
      ],
      "items": [
        {
          "day": "Monday",
          "hours": "08:00–19:00"
        },
        {
          "day": "Tuesday",
          "hours": "08:00–19:00"
        },
        {
          "day": "Wednesday",
          "hours": "08:00–19:00"
        },
        {
          "day": "Thursday",
          "hours": "08:00–19:00"
        },
        {
          "day": "Friday",
          "hours": "08:00–19:00"
        },
        {
          "day": "Saturday",
          "hours": "09:00–13:00"
        },
        {
          "day": "Sunday",
          "hours": "Closed · emergency line open"
        }
      ]
    }
  ]
}