Cookie Policy
Last updated: 23 May 2026
What cookies are
Small text files and browser storage (localStorage, sessionStorage) that let the site remember things between page loads. Some are needed for the site to run. Others are optional — you control those.
Your choices
On your first visit we ask you to accept, reject, or customise non-essential cookies. Change that choice anytime: .
Rejecting non-essential cookies does not reduce functionality. The site works without them.
Categories we use
Essential (always on)
Needed for the site to run. Cannot be turned off.
- Supabase session — keeps you signed in if you log into admin surfaces. First-party, functional.
- Consent preference — localStorage entry remembering this very choice so we don't ask on every page load.
- AI session ID — sessionStorage entry linking messages you send to the Ask Rich / Concierge / Workshop Finder / Blog Finder AI surfaces within a single tab. Cleared when you close the tab.
- Accessibility preferences —
ndg-a11y-settingslocalStorage entry storing your accessibility panel choices (font size, contrast, motion). First-party, functional. - Cal.com (when used) — the booking embed on /contact sets third-party cookies on cal.com when you interact with it. That's Cal.com's domain, not ours; see their policy.
Analytics (optional)
Anonymous usage data showing which pages help visitors progress, and which don't. Only loads if you've accepted analytics.
- Provider: Mixpanel (Mixpanel Inc., US). Events are sent to Mixpanel's EU residency endpoint (
api-eu.mixpanel.com). Transfers outside the UK/EEA rely on the EU–US Data Privacy Framework. - Purpose: funnel and engagement analytics — understanding how visitors move from landing pages through to booking a discovery call. No advertising profiles. No cross-site tracking.
- What's collected: a pseudonymous device-generated ID, page paths, clicks on primary CTAs, AI-assistant interactions (event-level only — message content is not sent to Mixpanel; that stays in Supabase), and form-completion events.
- Email: attached to the Mixpanel profile only after you submit a form that includes your email, and only because you explicitly provided it. Mixpanel never uses email as the identifier — the distinct ID stays anonymous; email sits as a profile property.
- Retention: Mixpanel's default — 12 months from last activity.
- Opt-out: use the cookie settings link above. Toggling analytics off opts the SDK out and resets it; later visits don't load it.
Marketing (optional)
Retargeting or audience measurement on other platforms. Not currently active. Same rule: only fires once you've accepted marketing and this page names the tool.
How long choices are kept
Your consent choice stays in your browser until you clear site data, switch browsers, or change it via the cookie settings link. We don't send it to a server.
See also our Privacy Policy for how we handle personal data.