Перейти к основному содержимому
← Кейсы

2025–2026 · онлайн

jev doppler · свадебная фотография · Испания

Moments like cinema.

Brief positioning is a code problem. Lift one photographer from €1 500 per wedding into the €3 500 conversation, without changing his work.

Евгений Допплер (юридическое имя Евгений Пачинский, работает под именем `jev doppler`) снимает свадьбы с композиционной строгостью, которую черпает из режиссуры кино: каждый кадр выстроен, а не пойман; пары ведут в моменты, а не позируют для них. Это и есть его отличие. Проблема была в том, что ничто в его цифровом присутствии этого не передавало.

Сигнатура · positioning gap

Разрыв позиционирования, который закрыл этот проект.

СРЕДНЯЯ 2024 €1 500 ЦЕЛЬ 2026 · CINEMATIC €3 500 + €2 000 / СЪЁМКА
При 12 свадьбах за сезон: +€24 000 годовой выручки без увеличения числа съёмок. Разрыв закрыт работой над брендом, а не наращиванием лидов.
01 · Проблема

Математика была проста.

При €1 500 за свадьбу ему нужно втрое больше броней, чем при €4 500, чтобы получить ту же выручку. Его целевой рынок (международные пары DACH/UK/NL, 20–60 гостей, destination weddings в Испании с бюджетом площадки €5 000–€10 000+) не спрашивает, готов ли кто-то платить €3 500. Вопрос в другом: рассказывает ли сайт правду о фотографе настолько убедительно, чтобы нужные пары квалифицировали себя сами.

Технический разрыв был реальным. Аудит (28 апреля 2026) зафиксировал P0-баг: оверлей бургер-меню был pointer-events-none-сиблингом навигации. Каждый посетитель iPhone из Instagram попадал в тупик. При ~70 % трафика из Instagram — это была непрерывная конверсионная катастрофа. У lightbox не было мобильной навигации: галерея из 22 изображений подавалась как 22 отдельных «закрыть и снова тапнуть».

Разрыв позиционирования был глубже. На сайте не было родного немецкого, родного испанского, родного русского. Английский текст содержал слово «luxury» и подобострастные формулировки («I would love to»). Бренд просил слишком мало, отдавал слишком мало и говорил не на тех языках, на которых приходят брони.

02 · Подход

Сначала — design system.

DESIGN.md до первого компонента. Палитра «тёплый чёрный / крем / золото» (#0d0c0b, #f5f0e8, #b8a07a) дистиллирована из шести референс-брендов: Runway, Cursor, SpaceX, Apple, Linear, Vercel. Каждая граница идёт из бренд-чёрного или бренд-крема при низкой альфе. Никакого серого (никаких #ccc) нигде в коде.

Типографика: Cormorant Garamond (display) + Jost (body/UI). Cormorant на крупных размерах кинематографичен. Jost на body-размерах остаётся достаточно чистым, чтобы не мешать фотографии.

Текст написан нативно для каждого языка. Английский: редакционный регистр, от первого лица, без «luxury» и без «we would love to». Немецкий: сдержанно-тёплый, с «du», DACH-фотографическая чувствительность («authentisch», «echte Momente»). Испанский: иберийский регистр с «vosotros», «cinematográfico», «reportaje» — не латиноамериканский, не корпоративный. Русский: литературный регистр, с «ты», интимный. Каждый языковой файл написан так, как если бы его создал носитель языка в разговоре о премиальной фотографии. Никаких переводов.

Архитектура галереи: шесть реальных галерей с именами пар и площадок. Dehesa de Don Pedro (Эстремадура, 46 кадров), Ana & Matt at Tambor del Llano, Bride d'Life editorial, Elisabeth & Thomas в Инсбруке, Marie & Allen at Tissington Hall, Dani & Santi at Bodegas Hidalgo–La Gitana в Санлукар-де-Баррамеда. Lightbox с навигацией с клавиатуры, focus-trap, swipe-жестом (Framer Motion drag="x"), мобильной кнопкой закрытия (клик по оверлею — только на десктопе).

Performance: hero-scale-анимация привязана к useInView (раньше работала постоянно вне экрана). GlassBackground (Three.js WebGL) — lazy-load, на мобильных отключён. Skip-to-content подключён. Honeypot контактной формы переименован с website на confirmation_token — иначе автозаполнение браузера давало ложные срабатывания.

SEO-инфраструктура: JSON-LD (LocalBusiness, Person, WebSite, ImageGallery на slug'ах галерей), hreflang-альтернативы для 4 языков × 9 маршрутов = 36 индексируемых URL.

03 · Стек

Что сделало возможной саму конструкцию.

  • Next.js 16.1.6 (App Router, Turbopack)

    28 статических страниц на 4 языках. generateMetadata на каждой странице для полного контроля SEO.

  • Tailwind CSS 4

    Token-based, тёплая палитра, ни одного системного серого во всём коде.

  • Framer Motion 12.35.2

    Entrance-анимации, lightbox drag/swipe, hero-scale-loop. useReducedMotion на всех motion-компонентах.

  • Three.js 0.183 / R3F 9.5

    Ambient GlassBackground в hero. Lazy-load, на мобильных отключён ради LCP.

  • Nodemailer 8.0.4 + Server Actions

    Контактная форма на сервере, никаких client-credentials.

  • Custom 4-locale i18n

    Без next-intl. Сегмент [lang]. Словари в src/lib. hreflang генерируется на каждой странице.

04 · Статус

Production-ready, за вычетом двух пунктов.

Все 28 статических страниц собираются чисто. Все P0 и P1 пункты аудита от 28 апреля 2026 закрыты. Мобильное бургер-меню работает. Lightbox листается свайпом. Атрибуты sizes проставлены: оценочно 50–70 % экономия мобильного трафика на загрузках галерей. JSON-LD покрывает LocalBusiness, Person, WebSite и на каждой галерее ImageGallery. hreflang покрывает 36 пар «язык × маршрут».

Live: jevdoppler.com. Финальный деплой на Vercel ждёт сжатия изображений и испанского налогового идентификатора в импрессум.

Live-цены на момент аудита: Essential €2 000 / Cinematic €2 500 / Full Day €3 500. Стратегическая цель (анализ позиционирования): €2 800 / €3 500 / €4 800. Разница, €600–€900 за съёмку, — это решение, а не баг кода. Инфраструктура держит целевую цену. Решение остаётся за Евгением.

05 · Что мы поняли

Brand positioning is a code problem. Задача была не «сайт для свадебного фотографа». Задача была: инфраструктура, при которой «Moments like cinema» читается за €2 900 без рефлекса торга.

Для antomata действует зеркальное правило: каждая поставка AI-аудита для Mittelstand-клиента — это не PDF. Это клиент, который перестаёт задавать вопрос «а нам это вообще нужно?». Инфраструктура, которая снимает этот вопрос (скелет доказательств, ясность цен, классификация GDPR-зон, говорящая «зелёный/серый/красный» вместо «зависит»), строится первой.

«He saw things we didn't even notice ourselves. The images feel like scenes from a film we never knew we were starring in.»

— Ana & Matt · Tambor del Llano, 2025