План: Сайт Дез Обработка (dez-obrabotka.pro)
Контекст: Новый Jekyll-проект в
C:\Users\Admin\Projects\dez-obrabotka\. Главная страница + 7 страниц услуг + блог + FAQ + контакты. Стиль protective-reliable (тёмный navy, эко-зелёный акцент, янтарный CTA). Без гарантий, без выезда 24ч, без горячего тумана.
Шаг 1 из 7: Создать проект и design-dna.json
ВКЛЮЧИТЬ скилы: design-create
Подробно:
- Создать структуру каталогов:
C:\Users\Admin\Projects\dez-obrabotka\ ├── _layouts/ ├── _includes/ ├── _data/ ├── uslugi/ │ ├── tarakany/ │ ├── klopy/ │ ├── muravi/ │ ├── blohi/ │ ├── kleshchi/ │ ├── muhi/ │ └── gryzuny/ ├── blog/ ├── faq/ ├── contacts/ └── assets/ ├── css/ └── img/ - Создать
_config.yml:title: Дез Обработка description: Профессиональная дезинсекция в Пензе. Холодный туман, безопасные препараты 4-го класса. baseurl: "" url: "https://dez-obrabotka.pro" - Создать
design-dna.jsonс полной protective-reliable палитрой:- personality:
protective-reliable - base:
#0B1120, surface:#151E2D, accent:#10B981, accent_alt:#F59E0B - text:
#F1F5F9, text_muted:#94A3B8, border:#1E293B - fonts: Space Grotesk / Inter / JetBrains Mono
- component rules: .btn-primary (accent_alt), .card, .price_tag
- layout patterns: hero с accent-линией 4px слева, cards grid, sticky table, тёмный footer
- personality:
Критерии качества:
- design-dna.json валидный JSON
- Все цвета из утверждённой палитры
- Запрещённые цвета (
#0D7C4D,#3B82F6и др.) отсутствуют
Нюансы: accent_alt (#F59E0B) — только для CTA-кнопок и цен. Accent (#10B981) — для заголовков, иконок, hover. Никаких box-shadow, градиентов, border-radius > 4px.
ВЫКЛЮЧИТЬ скилы: design-create
Шаг 2 из 7: Базовый шаблон и includes
ВКЛЮЧИТЬ скилы: design-create
Подробно:
- Создать
_layouts/default.html— общий каркас всех страниц:- DOCTYPE, lang=”ru”
- meta charset + viewport
- title:
План: Сайт Дез Обработка (dez-obrabotka.pro) — Дез Обработка - meta description: из page или site
- Google Fonts preconnect: Space Grotesk, Inter, JetBrains Mono
- `` — встроенный CSS страницы
- body: `<header class="header" role="banner" id="site-header">
</header>
, <main><h1 id="dez-obrabotka">Dez-obrabotka</h1>
Tech Stack
- Jekyll (SSG)
- Ruby (Gemfile)
Структура
_layouts/— шаблоны Liquid_includes/— переиспользуемые компоненты_data/— данные (JSON/YAML)_site/— собранный сайт (не редактировать)blog/,contacts/,faq/,uslugi/— разделы сайта (Jekyll collections)design-dna.json— дизайн-токены бренда
Дизайн-система
- Файл
design-dna.jsonсодержит токены бренда. Используй его при любых дизайн-задачах. - При дизайне: сначала прочитай
design-dna.json, затем создавай/правь страницы.
Правила
- Отвечай на русском. Код и технические термины — на английском.
- Перед началом работы проверь доступные скилы (Skill tool).
- Дизайн: используй design-engine или design-cycle с Playwright для скриншотов.
- После изменения кода → validator.
- Перед «готово» → verification-before-completion.
- Поиск по коду → делегируй cavecrew-investigator (Agent).
- Jekyll:
bundle exec jekyll serveдля локального запуска.
Экономия токенов
- Read только перед Edit.
- Не перечитывай файлы без причины.
- Поиск → sub-agent.
</main>, <footer class="footer" role="contentinfo">
</footer>
`
- Создать
_includes/header.html:<header class="site-header" role="banner">— sticky, blur (backdrop-filter), тёмный фон с границей.logo— «Дез Обработка», accent-цвет, Space Grotesk 700<nav>с ul.nav-list:- Услуги (has-dropdown) → dropdown: 7 услуг (Тараканы, Клопы, Муравьи, Блохи, Клещи, Мухи, Грызуны)
- Блог → /blog/
- FAQ → /faq/
- Контакты → /contacts/
- Dropdown раскрывается по :hover + :focus-within (чистый CSS, без JS)
.header-phone— JetBrains Mono, accent_alt цвет, ссылка tel:+78412XXXXXXX- Кнопка
.nav-toggleс гамбургером для мобильных (CSS-only)
- Создать
_includes/footer.html:<footer class="site-footer">— тёмный фон (accent), светлый текст- 4 колонки в
.footer-grid:- Колонка 1: «Дез Обработка» — описание компании
- Колонка 2: «Услуги» — 7 ссылок на страницы услуг
- Колонка 3: «Информация» — Блог, FAQ, Контакты, Политика конфиденциальности
- Колонка 4: «Контакты» — телефон (крупно, JetBrains Mono), email, Пенза и область
.footer-bottom— копирайт с годом
Критерии качества:
- HTML валидный (нет незакрытых тегов, правильные атрибуты)
- ARIA-роли у header (banner), nav (navigation), footer (contentinfo)
- Ссылки рабочие (относительные пути правильные)
- Dropdown открывается на десктопе без JS
- На мобильном меню скрывается за гамбургер
Нюансы:
- Телефон-заглушка:
+7 (8412) XX-XX-XX - Email-заглушка:
info@dez-obrabotka.pro - Адрес: Пенза (без точного адреса)
- В футере НЕ упоминать гарантию
ВЫКЛЮЧИТЬ скилы: design-create
Шаг 3 из 7: Главная страница — полный HTML и CSS
ВКЛЮЧИТЬ скилы: design-create
Подробно:
Создать index.html с frontmatter: layout: default, title: "Уничтожение насекомых в Пензе холодным туманом", description: "...".
Весь CSS в <style> внутри frontmatter style (Liquid передаст в default.html).
CSS-переменные (:root)
--color-base: #0B1120;
--color-surface: #151E2D;
--color-accent: #10B981;
--color-accent_alt: #F59E0B;
--color-text: #F1F5F9;
--color-text_muted: #94A3B8;
--color-border: #1E293B;
--text-xs: clamp(0.75rem, 0.25vw, 0.875rem);
--text-sm: clamp(0.875rem, 0.15vw, 1rem);
--text-base: clamp(1rem, 0.3vw, 1.125rem);
--text-lg: clamp(1.125rem, 0.6vw, 1.5rem);
--text-xl: clamp(1.5rem, 1.5vw, 2rem);
--text-2xl: clamp(2rem, 2.5vw, 3rem);
--text-3xl: clamp(2.5rem, 3vw, 4rem);
--space-1…--space-8: clamp-шкала от 0.25rem до 8rem
Секции HTML (9 блоков в <main>)
1. HERO (<section class="hero">)
- accent-линия 4px слева (border-left на .hero-content)
- h1: «Профессиональная дезинсекция в Пензе и области»
- p.hero-subtitle: «Холодный туман — микрочастицы проникают во все щели. Препараты 4-го класса — безопасны для людей и животных. Работаем по договору официально.»
- 3 буллета (.hero-features):
- 🧊 Холодный туман — микрочастицы 10-50 мкм, проникают в щели и за мебель
- 🛡️ Препараты 4-го класса — безопасны для детей, животных, астматиков
- 📋 Работаем официально — договор, акт выполненных работ, закрывающие документы
- .hero-actions: кнопка .btn-primary «Вызвать специалиста» (якорь к #cta) + телефон (JetBrains Mono, accent_alt)
- Статистику НЕ выводить (запрещено)
2. УСЛУГИ (<section class="section" id="services">)
- h2: «Каких насекомых уничтожаем»
- p.subtitle: «Работаем со всеми видами бытовых вредителей в Пензе и области»
- .services-grid: 7 карточек .service-card, каждая — ссылка
<a>на страницу услуги:- 🪳 Тараканы → /uslugi/tarakany/
- 🪲 Клопы → /uslugi/klopy/
- 🐜 Муравьи → /uslugi/muravi/
- 🦗 Блохи → /uslugi/blohi/
- 🕷️ Клещи → /uslugi/kleshchi/
- 🪰 Мухи → /uslugi/muhi/
- 🐭 Грызуны → /uslugi/gryzuny/
- Каждая карточка: иконка (крупно), h3 с названием, краткое описание 2-3 строки
3. ТЕХНОЛОГИЯ (<section class="section section--alt" id="technology">)
- h2: «Холодный туман — современный метод дезинсекции»
- Два блока рядом (на десктопе):
- Левый: как работает — генератор превращает раствор в облако частиц 10-50 мкм, которые проникают в щели, за мебель, в вентиляцию. Равномерное покрытие всех поверхностей.
- Правый: преимущества vs опрыскивание — меньше расход препарата, глубже проникновение, быстрее обработка (40-90 минут), без потёков и разводов
- Место под фото оборудования (заглушка или placeholder)
4. БЕЗОПАСНОСТЬ (<section class="section" id="safety">)
- h2: «Безопасность для вас и ваших близких»
- 4 пункта в сетке .advantages-grid:
- Препараты 4-го класса опасности — малоопасные вещества (расшифровка: 1-й класс — чрезвычайно опасные, 4-й — малоопасные, как поваренная соль)
- Без вреда для детей и животных — после проветривания в помещении безопасно находиться
- Без запаха — современные препараты не оставляют следов и запаха
- Не портит мебель и покрытия — не остаётся разводов на обоях, мебели, тканях
- Место под сертификаты (placeholder: 2-3 прямоугольника)
5. ЦЕНЫ (<section class="section section--alt" id="prices">)
- h2: «Стоимость дезинсекции»
- p.subtitle: «Цены фиксированные, без скрытых доплат»
- Таблица в .table-wrapper (role=”region”, aria-label, tabindex=”0”):
-
Колонки: Услуга 1-комнатная 2-комнатная 3-комнатная Дом до 100м² - 7 строк услуг с ценами из дизайна (реальные рыночные цены для Пензы)
- thead sticky, zebra-строки, .price-cell — JetBrains Mono accent_alt
-
- Сноска: «Цены указаны за одну обработку. Для нестандартных помещений — уточняйте по телефону.»
6. КАК РАБОТАЕМ (<section class="section" id="how-we-work">)
- h2: «Как проходит обработка»
- 4 шага (.steps grid):
- Шаг 1: Заявка — звоните или оставляете заявку. Консультируем по методу обработки и подготовке помещения. Согласовываем удобную дату.
- Шаг 2: Подготовка — даём рекомендации что убрать и накрыть перед приездом специалиста. Никакой специальной подготовки не требуется.
- Шаг 3: Обработка — специалист приезжает с оборудованием. Холодный туман 40-90 минут. Проветривание после обработки.
- Шаг 4: Рекомендации — рассказываем когда можно заходить в помещение, как проводить уборку после обработки, на что обратить внимание.
- НЕ упоминать: гарантию, осмотр, контрольный выезд, замер
7. FAQ (<section class="section section--alt" id="faq">)
- h2: «Частые вопросы»
- 7 вопросов через
<details><summary>(чистый CSS-аккордеон):- Опасно ли для детей и домашних животных?
- Когда можно заходить в помещение после обработки?
- Нужно ли уезжать из квартиры на время обработки?
- Как подготовить помещение к обработке?
- Чем холодный туман отличается от обычного опрыскивания?
- Поможет ли обработка, если насекомые идут от соседей?
- Работаете ли с юридическими лицами?
8. CTA (<section class="section" id="cta">)
- .cta-box (border: 2px solid accent):
- h2: «Остались вопросы?»
- p: «Позвоните — проконсультируем по стоимости и методу обработки вашего помещения»
- .cta-actions: телефон крупно + кнопка .btn-primary
9. FOOTER (через <footer class="footer" role="contentinfo">
</footer>
)
Адаптивность
- Mobile-first: все гриды → 1 колонка на <640px
- @media (min-width: 640px): header-phone крупнее, grid 2 колонки
- @media (min-width: 1024px): hero 2-колоночный (контент + фото/буллеты), grid 3-4 колонки
- Таблица: горизонтальный скролл на мобильных (.table-wrapper overflow-x:auto)
- Меню: гамбургер на мобильных (CSS-only через :target или скрытый checkbox)
Доступность
- :focus-visible outline: 3px solid accent, offset: 2px
- prefers-reduced-motion: анимации 0.01ms
- Все картинки/иконки: aria-hidden=”true” (декоративные)
- Таблица: role=”region”, aria-label, tabindex=”0”
Критерии качества:
- CSS без ошибок (все переменные используются, нет несуществующих классов)
- Все 9 секций присутствуют
- Контент не содержит запрещённых слов (гарантия, 24 часа, горячий туман, осмотр)
- Текст заголовка hero содержит «Пенза»
- 7 карточек услуг ведут на правильные URL
- FAQ аккордеон работает без JS
- Таблица читаема на экране 320px
Нюансы:
- Цены взять из утверждённого диапазона (рыночные для Пензы, ниже московских)
- В CTA не писать «бесплатно»
- Hero-буллеты: именно 3, не 4 и не 2
- Все иконки — эмодзи (просто, без доп. зависимостей)
ВЫКЛЮЧИТЬ скилы: design-create
Шаг 4 из 7: Валидация и исправление ошибок
ВКЛЮЧИТЬ скилы: validator → design-review
Подробно:
- Запустить validator.js на все созданные HTML-файлы:
index.html_layouts/default.html_includes/header.html_includes/footer.html
- Проверить:
- HTML-валидность (закрытые теги, правильная вложенность)
- CSS-валидность (нет ошибок синтаксиса, все переменные определены)
- Наличие всех обязательных атрибутов (alt у img, aria-роли)
- Отсутствие пустых ссылок и кнопок без текста
- design-review проверить:
- Контраст текста на тёмном фоне (WCAG AA: минимум 4.5:1 для body, 3:1 для крупного)
- Иерархия заголовков (h1 → h2 → h3, без пропусков)
- Отступы и spacing: 25%+ прыжки между уровнями
- Кнопки: min-height 48px для тач-целей, отличие primary/outline
- Адаптивность: нет горизонтального скролла на 320px, всё читаемо
- Исправить все найденные ошибки в соответствующих файлах
Критерии качества:
- validator: PASS (нет ошибок)
- design-review: не более 3 мелких замечаний (не критических)
- Контраст accent_alt (#F59E0B) на base (#0B1120): проверить, возможно использовать на surface вместо base
Нюансы:
- Если validator недоступен как отдельный скрипт — проверять вручную: смотреть HTML-структуру, искать битые теги, проверять CSS-переменные
- Особое внимание контрасту жёлтого текста на тёмном фоне
ВЫКЛЮЧИТЬ скилы: validator, design-review
Шаг 5 из 7: Страницы услуг, блог, FAQ, контакты
ВКЛЮЧИТЬ скилы: design-create
Подробно:
Создать 10 страниц с одинаковой структурой, разным контентом. Каждая страница использует layout: default и встроенный <style> для стилей страницы (минимальные — основные стили уже в главной).
7 страниц услуг (/uslugi/[slug]/index.html)
Общий шаблон для каждой:
- frontmatter: layout, title (с ключевым словом + Пенза), description
- Секция 1: Описание насекомого — какие виды, чем опасно, где прячутся
- Секция 2: Как уничтожаем — холодный туман, препараты, время обработки
- Секция 3: Цены — мини-таблица (1к, 2к, 3к, дом)
- CTA: телефон + кнопка
Для каждой услуги уникальный контент:
Тараканы (/uslugi/tarakany/):
- «Рыжие и чёрные тараканы — переносчики инфекций, быстро размножаются»
- «Холодный туман проникает в щели, за плинтусы, в вентиляцию где прячутся тараканы»
- Цены: 1к=2200, 2к=2900, 3к=3700, дом=5000 ₽
Клопы (/uslugi/klopy/):
- «Постельные клопы — укусы, аллергия, быстрое распространение по квартире»
- «Холодный туман находит клопов в складках мебели, под матрасом, в розетках»
- Цены: 1к=2700, 2к=3500, 3к=4400, дом=6000 ₽
Муравьи (/uslugi/muravi/):
- «Фараоновы и садовые муравьи — уничтожаем колонию вместе с маткой»
- «Препарат проникает по муравьиным тропам к гнезду»
- Цены: 1к=1800, 2к=2300, 3к=2900, дом=4000 ₽
Блохи (/uslugi/blohi/):
- «Земляные и постельные блохи — укусы, риск для животных»
- «Обработка пола, плинтусов, ковровых покрытий холодным туманом»
- Цены: 1к=2200, 2к=2800, 3к=3500, дом=4600 ₽
Клещи (/uslugi/kleshchi/):
- «Иксодовые и пылевые клещи — обработка помещений и территории»
- «Холодный туман + барьерная обработка по периметру участка»
- Цены: 1к=2500, 2к=3200, 3к=4000, дом=5200 ₽
Мухи (/uslugi/muhi/):
- «Комнатные и дрозофилы — сезонная обработка мест выплода»
- «Установка ловушек + обработка холодным туманом оконных и дверных проёмов»
- Цены: 1к=1600, 2к=2000, 3к=2500, дом=3600 ₽
Грызуны (/uslugi/gryzuny/):
- «Крысы и мыши — дератизация, перекрытие путей проникновения»
- «Механические барьеры + родентициды в недоступных для детей и животных местах»
- Цены: 1к=3200, 2к=4200, 3к=5200, дом=6500 ₽
Блог (/blog/index.html)
- Заголовок: «Блог о дезинсекции»
- Заглушка: «Скоро здесь появятся статьи о методах борьбы с насекомыми, профилактике и выборе службы дезинсекции»
- Стиль: соответствует главной
FAQ (/faq/index.html)
- Те же 7 вопросов что на главной + 3-5 дополнительных
- Доп. вопросы: «Сколько держится эффект?», «Нужно ли повторять обработку?», «Что делать если насекомые появились снова?»
- Аккордеон через details/summary
Контакты (/contacts/index.html)
- Адрес: г. Пенза (без точного адреса, заглушка)
- Телефон: +7 (8412) XX-XX-XX
- Email: info@dez-obrabotka.pro
- Режим работы: Пн-Вс
- Место под карту (заглушка — серый прямоугольник)
_data/prices.yml
Создать файл с данными цен для переиспользования в шаблонах:
- slug: tarakany, name: Уничтожение тараканов, 1k: 2200, 2k: 2900, 3k: 3700, house: 5000
- slug: klopy, name: Уничтожение клопов, 1k: 2700, 2k: 3500, 3k: 4400, house: 6000
... (все 7)
Критерии качества:
- Каждая страница услуги: title содержит [услуга] + Пенза
- description уникален для каждой страницы
- Цены соответствуют _data/prices.yml
- Ссылки работают (перекрёстные проверки)
Нюансы:
- На страницах услуг не упоминать гарантию
- Не писать «бесплатный выезд» или «выезд за 24 часа»
- Не упоминать осмотр как отдельную услугу
ВЫКЛЮЧИТЬ скилы: design-create
Шаг 6 из 7: SEO-аудит
ВКЛЮЧИТЬ скилы: seo-expert
Подробно:
- Мета-теги на каждой странице:
- Уникальный
<title>с ключевыми словами: [услуга] в Пензе, дезинсекция Пенза - Уникальный
<meta name="description">140-160 символов - Open Graph: og:title, og:description, og:type, og:url, og:image (если есть)
- canonical URL (на случай дублей)
- Уникальный
- Schema.org structured data в
_layouts/default.html:- Organization или LocalBusiness: название, телефон, адрес (Пенза), зона обслуживания
- На главной: WebPage + Organization
- На страницах услуг: Service + offers (цена)
- Заголовки:
- h1 один на страницу, содержит основное ключевое слово
- h2 для секций, h3 для подсекций
- Без пропусков в иерархии
- Семантика:
<main>,<nav>,<article>(карточки услуг),<footer>- Изображения (если есть): alt-текст
- Локальное SEO:
- Ключевые фразы с гео: «Пенза», «Пензенская область»
- title главной содержит «Пенза»
- description содержит «Пенза»
- Адрес и телефон в schema.org
- Техническое:
- mobile-friendly (уже)
- Скорость: минимум внешних запросов (только Google Fonts)
- HTML валидный (уже)
Критерии качества:
- Все страницы имеют уникальный title и description
- Schema.org валидна (проверить в https://validator.schema.org/)
- Ключевые слова «дезинсекция Пенза», «уничтожение [насекомое] Пенза» в title/description
Нюансы:
- Не переспамить ключевыми словами — естественные формулировки
- В schema.org не указывать гарантию и фейк-рейтинг
ВЫКЛЮЧИТЬ скилы: seo-expert
Шаг 7 из 7: Запуск, скриншот и финальная проверка
ВКЛЮЧИТЬ скилы: run → verification-before-completion
Подробно:
- Запустить Jekyll:
cd C:\Users\Admin\Projects\dez-obrabotka bundle exec jekyll serve - Сделать скриншоты:
- Главная страница (вся, скроллом)
- Мобильная версия (320-375px)
- Одна страница услуги (например, клопы)
- FAQ-аккордеон в открытом состоянии
- Выпадающее меню на десктопе
- Проверить в браузере:
- Все ссылки работают
- Меню раскрывается
- FAQ аккордеон открывается/закрывается
- Таблица скроллится на мобильном
- Нет горизонтального скролла
- Текст читаем (контраст)
- Форма (если добавлена) отправляет
- verification-before-completion:
- Все файлы на месте: _config.yml, design-dna.json, _layouts/default.html, _includes/header.html, _includes/footer.html, _data/prices.yml, index.html, 7 услуг, блог, FAQ, контакты
- Контент не содержит запрещённых слов
- CSS не содержит запрещённых цветов
- Все 9 секций на главной присутствуют
Критерии качества:
- Jekyll запускается без ошибок
- Все страницы открываются
- Скриншоты показывают корректную вёрстку
- verification-before-completion: PASS
Нюансы:
- Если Jekyll не установлен — открыть index.html напрямую в браузере (как статический файл)
ВЫКЛЮЧИТЬ скилы: run, verification-before-completion
ЗАВЕРШЕНИЕ
ПОСЛЕ ВЫПОЛНЕНИЯ ВСЕХ 7 ШАГОВ: ВСЕ СКИЛЫ ВЫКЛЮЧЕНЫ. ЗАДАЧА ЗАВЕРШЕНА.
Итоговые файлы проекта:
dez-obrabotka/
├── _config.yml
├── design-dna.json
├── index.html (главная, 9 секций)
├── _layouts/default.html
├── _includes/header.html
├── _includes/footer.html
├── _data/prices.yml
├── uslugi/ (7 страниц)
├── blog/index.html
├── faq/index.html
├── contacts/index.html
└── docs/superpowers/plans/2026-06-01-dez-obrabotka-landing.md