CP//DEV
WinePassport

2026 · End-to-end design & development · Xpandex

WinePassport

Wine tourism platform for Castilla y León

  • WordPress FSE
  • ACF Pro
  • Fluent Forms Pro
  • Rank Math
  • Cloudflare
  • GitHub Actions
Environments
3 branches · CI/CD
Typography
Self-hosted
Page builder
None

Screenshots of the live site, at 1440px and 375px.

01Home
Home — Desktop

Desktop · 1440px

Home — Mobile

Mobile · 375px

02Experiences
Experiences — Desktop

Desktop · 1440px

Experiences — Mobile

Mobile · 375px

03Wineries
Wineries — Desktop

Desktop · 1440px

Wineries — Mobile

Mobile · 375px

04Premium passport
Premium passport — Desktop

Desktop · 1440px

Premium passport — Mobile

Mobile · 375px

Context

A Valladolid-based sommelier wanted to sell wine tourism around Ribera, Rueda and Toro: tastings, winery visits, characterful hotels and corporate events. The sector is saturated with templates showing a barrel photo and a script typeface, all interchangeable. The brief asked for the opposite: a site you could tell apart at a glance.

The real challenge wasn’t technical but one of identity. Premium wine tourism without the rustic cliché, and without the design smothering what actually sells, which is the experiences.

Approach

  • A visual concept of its own — “golden hour in the barrel room” as the guiding idea, with an “editorial passport” layer underneath. That’s where the circular hero crops, the fine background grid and the use of burgundy as a block of colour rather than filler all come from.
  • Custom WordPress FSE theme, no Elementor or Divi. theme.json is the single source of truth for tokens: palette, type scale and spacing are defined once and propagate to the editor, so new content can’t drift outside the system.
  • Cormorant Garamond + Inter, self-hosted from the site’s own domain. Not a single request to Google Fonts: lower latency and one less thing to justify in the privacy policy.
  • ACF Pro models wineries, experiences and accommodation as structured content rather than loose pages. The client adds a winery by filling in fields, never touching layout.
  • Cloudflare in front plus server-side caching, with critical fonts and images preloaded.

What I built

  • Full design system in theme.json and block templates
  • Content modelling with ACF for wineries, experiences, hotels and MICE events
  • Booking forms with validation and antispam
  • Technical SEO: JSON-LD schemas, sitemap, canonicals and heading structure
  • Three-branch GitHub Actions pipeline with automated production deploys
  • Legal copy and cookie consent ahead of launch

Outcome

The site is live and the client publishes new experiences unaided: she fills in the fields and the template does the rest. With no page builder in the way, the HTML reaching the browser is the HTML we wrote, not what a visual editor emits with fifteen nested divs per section.

A note on this work

Built at Xpandex, where I run the full cycle: design, development, performance, accessibility, technical SEO and deployment.