KimPsykolog — project preview

Private psychologist practice, Sweden (remote)

Make It Work

The Brief

Kim Eriksson runs an inclusive KBT practice in Malmö. His site already existed and mostly worked — the problem was that it wasn’t legally compliant and had accessibility gaps that undercut the inclusive practice it was meant to represent. I audited it and worked through the findings, and the audits haven’t stopped since.

The Situation

Kim’s site ran on WordPress and Elementor, and the bones were fine — his services, his booking flow, his own voice in the copy. What wasn’t fine was underneath it: no cookie consent, no legally required pages, and accessibility gaps that hit exactly the clients his practice exists for. He works with people navigating disability, LGBTQIA+ identity, and non-normative relationships — a site a screen reader couldn’t use, or a form with no visible label, sends the opposite message to the one his practice sends in the room.

He didn’t need a new site. He needed someone to audit the one he had and fix what the audit found — legal compliance first, then accessibility, without another identity crisis mid-project or a rebuild for its own sake.

What We Did

The people using it

A client booking a first session is often doing something difficult already. A booking flow a keyboard or screen-reader user can’t complete adds friction at exactly the point it matters least to have any.

Kim needed the site to keep meeting a legal and accessibility standard after launch, not just at handover — WCAG guidance and Swedish accessibility law don’t stand still, and neither does a WordPress site as plugins update.

The platform & who owns it

WordPress and Elementor stayed. Kim owns the content and can publish without us — the work was fixing what sat on top of a platform that was already the right call, not replacing the platform itself.

The first pass set up Elementor properly and cleared out plugins that weren’t earning their keep, added a cookie consent tool, and built the legally required pages — a privacy policy, terms, and the accessibility declaration Swedish law requires for a site like his. It also integrated his third-party booking system, so appointments run through one connected flow rather than a separate tool clients have to find.

A later audit — run months after launch, against the same WCAG checklist, rather than treating handover as the finish line — found twelve further checks: contrast ratios, heading hierarchy, alt text on service icons, form labels, keyboard navigation and focus states, and — because Kim books clients through it — a specific check on whether the booking integration itself was usable by keyboard and screen reader.

Each finding names its own WCAG success criterion rather than a general note to "improve accessibility." That specificity is what makes a fix verifiable rather than a promise, and it’s what lets an audit be checked off item by item instead of taken on faith.

The audits sit inside a standing retainer, not a series of one-off invoices — ongoing WP, theme and plugin updates, security and performance checks, and a monthly allowance for accessibility adjustments and the changes Kim brings to us directly, so drift gets caught on a schedule and his own requests don’t sit in a queue behind ours.

The design & what it does for the business

Early work built a consistent colour scheme and a typography hierarchy in place of what had been a patchwork — heading levels used for size rather than structure, inconsistent spacing, low-contrast type.

Later work realigned the layout and visual design as Kim’s sense of the practice evolved, and added small animated behaviour to specific parts of the site — the FAQ accordion’s chevron rotates open rather than just appearing, for one concrete example. Interaction detail like that reads as considered rather than default.

That system has since been written up formally — colour tokens, type scale, component rules, spacing values — so it isn’t only legible on the live site, it’s documented for whoever touches the site next, including Kim himself.

Kim’s own voice stayed exactly as he wrote it: direct, first person, explicit about who the practice serves, and bilingual — Swedish first, English available. Nothing about the audit touched that. The fixes were structural and technical, not a rewrite of how he talks to clients.

Cadence

The relationship runs as scheduled audits rather than a single handover — each one has caught something the last one missed.

What Changed

The legal gaps are closed. A privacy policy, terms, and an accessibility declaration live in the footer alongside a site map, and cookie consent runs on every visit rather than not existing at all.

Most of the first accessibility pass shipped inside the same engagement — heading structure, alt text, and colour contrast were each fixed and logged, not left as a general intention, alongside the design and booking work in the same weeks. The October audit found twelve further checks the first pass hadn’t reached, ranging from keyboard focus states to whether the booking flow itself was usable without a mouse — findings that exist because someone went looking with a checklist, not because something visibly broke.

The layout and visual detail now match what Kim actually wants, not only what an audit flags — his own requests and the accessibility findings have run side by side rather than one waiting on the other. The practice also has a documented design system behind it, so the colours, type and components that came out of the original clean-up aren’t only correct on the live site — they’re written down.

And the standard doesn’t erode between audits. The retainer means new plugin updates or a new component get checked on a schedule, before they become next October’s outstanding finding rather than after.

“Twelve named checks, each tied to a fix — nothing was guessed at.”
KimPsykolog — key screen
Key screens from the live build.
Outstanding accessibility findings, October 2025
Each finding named its own WCAG check — contrast, heading hierarchy, keyboard navigation, focus states — rather than a general note to "improve accessibility."
Design system, May 2026
Colour, type and component rules written up from the live site, so future work — ours or his — has one reference to build from.
OutcomeGDPR-compliant legal pages, including the Swedish accessibility declaration
OutcomeNamed WCAG fixes shipped and logged
OutcomeLayout and interaction detail matched to Kim’s direction
OutcomeScheduled accessibility audits, ongoing

Looking Back

We didn’t rebuild what already worked. Kim’s booking flow and his service structure were sound — the work was closing the gap between an inclusive practice and a site that lived up to it, one named finding at a time. That’s also why this didn’t end at a handover: the retainer exists because compliance is a standard to maintain, not a box to tick once. It’s up for renewal now, which says more about whether this way of working holds up than any single audit does.

Next

Tell us where you are.

We'll recommend the right starting point — including when the work shouldn't be custom.

Live Website
What we handled

Website audit, accessibility remediation, and ongoing webmaster care

Why this platform

The site was already built in WordPress with little need for Kim to move his website from WordPress to another platform. The previous developer had also already implemented many of the features he wanted, and staying there meant Kim kept full content control.

Deliverables
Accessibility AuditWCAG RemediationGDPR ComplianceCookie ConsentBooking IntegrationLayout & Interaction DesignDesign System DocumentationOngoing Webmaster Care