2025–2026 · онлайн
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`) снимает свадьбы с композиционной строгостью, которую черпает из режиссуры кино: каждый кадр выстроен, а не пойман; пары ведут в моменты, а не позируют для них. Это и есть его отличие. Проблема была в том, что ничто в его цифровом присутствии этого не передавало.
Разрыв позиционирования, который закрыл этот проект.
Математика была проста.
При €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»). Бренд просил слишком мало, отдавал слишком мало и говорил не на тех языках, на которых приходят брони.
Сначала — 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.
Что сделало возможной саму конструкцию.
-
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 генерируется на каждой странице.
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 за съёмку, — это решение, а не баг кода. Инфраструктура держит целевую цену. Решение остаётся за Евгением.
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