Integrative Medicine Web Platform

A multi-page functional medicine site that had to earn trust before anyone picked up the phone — designed for patients who are doing serious research.

Start a Similar Project →

Integrative & Functional Medicine

One of the harder spaces to design for.

Integrative and functional medicine is one of the harder spaces to design for. The patients coming to these practices are often navigating serious diagnoses, have already been through the conventional medical system, and are doing real research before they commit to anything. A site that looks like a generic health clinic template doesn't cut it — it has to earn trust before anyone picks up the phone.

At a glance.

15+

Pages

Full site architecture

11

Treatment Modalities

Each with dedicated content

A11Y

Accessibility First

Radix UI primitives throughout

v15

Next.js

App Router + React 19

The design problem

Clinical blues feel sterile. Wellness greens feel sales-y.

The visual direction took some deliberate thought. Clinical blues feel sterile. The bright greens that dominate wellness branding feel sales-y in a way that doesn't land well when someone is researching hyperbaric oxygen therapy or natural cancer support. We landed on a custom sage green palette — soft enough to feel calming, grounded enough to feel credible.

The full scale (sage-50 through sage-950) gave us enough range to work with: light tones for informational sections, deeper tones for calls to action, mid-tones for body content. Geist Sans handles the typography throughout — modern and geometric without any of the fussiness that can undermine a medical context.

The layout follows the actual decision journey a prospective patient takes. A clear hero, a trust-building founder statement, treatment modalities, patient stories, then contact and location. One scroll covers the whole arc from “what is this place” to “I want to book.”

The build

15 pages, 11 modalities, accessibility built in from the start.

The site runs on Next.js 15 with the App Router, which made sense given the scale — 15+ pages covering 11 distinct treatment modalities, each with its own dedicated content. React 19, TypeScript, Tailwind CSS v4, and shadcn/ui (built on Radix UI primitives) rounded out the stack. The Radix foundation was particularly useful here since accessibility isn't optional in a medical context — keyboard navigation and screen reader support are built in rather than retrofitted.

The navigation reflects the content complexity: desktop gets a full dropdown spanning all 11 treatment modalities, mobile gets a Sheet-based slide-in menu that feels native rather than bolted on. Phone number and address stay pinned in a contact bar above the header on every page, which matters a lot when someone finally decides they want to call.

Each treatment page is structured to educate first and convert second — what the therapy is, how it works, what to expect, then a persistent CTA to book. That order matters in this space. People don't book a hyperbaric session or a mistletoe injection because of a button; they book because they finally feel like they understand what they're getting into.

The stack.

Next.js 15

App Router — full site architecture

React 19 + TypeScript

Type-safe component layer

Tailwind CSS v4

Custom sage green design system

shadcn/ui + Radix UI

Accessible navigation and UI primitives

Lucide React

Consistent, lightweight iconography

Geist Sans

Modern, geometric typography throughout

Foundation also includes hooks for Google Analytics, LocalBusiness schema markup, and online booking integration.

What it demonstrates

Warmth and clinical authority at the same time.

Functional medicine sites need to do something most healthcare sites don't — communicate both warmth and clinical authority at the same time, across a wide range of treatments that most patients have never heard of. This project is a good example of how content architecture, visual tone, and technical decisions all have to point in the same direction to make that work.

Services used in this project