from pathlib import Path import zipfile root = Path("/mnt/data/vwkostrov_site") root.mkdir(exist_ok=True) html = r'''Digital Agency — VKOSTROV
САЙТ + SEO + ЯНДЕКС ДИРЕКТ + VK РЕКЛАМА + АНАЛИТИКА

Запускаем систему
привлечения клиентов
из интернета под ключ

Создаём продающий сайт, настраиваем рекламу и аналитику, чтобы ваш бизнес получал стабильный поток заявок и рос.

◉ Сайт под вашу нишу◉ Реклама в Яндекс и VK◉ Контроль стоимости заявки
Аналитика +42%
1 248
Яндекс Директ
246 заявок
732 ₽ CPL
VK Реклама
634 ₽
стоимость заявки
НАМ ДОВЕРЯЮТ

Мы создаём результат,
который виден в цифрах

За каждым проектом стоит команда специалистов, которая не просто запускает рекламу, а отвечает за результат вашего бизнеса.

200+проектов
реализовано
50+ниш
протестировано
3направления
в работе
от 100 000 ₽комплексный
запуск
ПРОБЛЕМА

Почему реклама часто
не приносит клиентов?

Вы тратите бюджет, но не видите результата? Проблема может быть не в одном инструменте, а в отсутствии единой стратегии.

×Есть сайт,
но нет заявок

Потенциальные клиенты уходят.

×Деньги уходят
в рекламу, а клиентов мало

Нет контроля стоимости заявки.

×Подрядчики показывают красивые отчёты

Но нет продаж.

×Нет понимания,
что реально работает

Данные разбросаны.

РЕШЕНИЕ

Создаём полноценную
систему привлечения клиентов

Собираем сайт, SEO, рекламу и аналитику в единую систему, которая работает на ваш бизнес.

01

Анализ бизнеса

Изучаем нишу
анализируем конкурентов
считаем экономику

02

Создание сайта

Структура и дизайн
продающий контент
форма заявки

03

Запуск рекламы

Яндекс Директ
VK Реклама
настройка аналитики

04

Оптимизация

Контроль метрик
снижение стоимости
масштабирование

КОМПЛЕКСНОЕ РЕШЕНИЕ

Комплексный запуск продвижения — от 100 000 ₽

Всё, что нужно для стабильного потока клиентов. Один подрядчик. Одна стратегия. Один результат.

Получить расчёт проекта →

Сайт

Дизайн и разработка
продающая структура
настройка аналитики

SEO

Семантика
оптимизация страниц
рост видимости

Реклама

Яндекс Директ
VK Реклама
сценарии объявлений

Аналитика

Цели и события
отчёты и показатели
контроль ROI

100 000 ₽за комплексный запуск

Почему комплекс работает лучше

Мы не запускаем рекламу отдельно от сайта. Вся работает как единая система.

×   Обычно

✕ Дизайн отдельно

✕ Реклама отдельно

✕ Нет понимания результата

✕ Высокая стоимость заявки

✓   У нас

✓ Сайт создаётся под рекламу

✓ Реклама приводит целевых клиентов

✓ Аналитика показывает рост

✓ Оптимизация бюджета

РЕЗУЛЬТАТЫ НАШИХ КЛИЕНТОВ

Реальные кейсы. Реальные цифры.

СТРОИТЕЛЬСТВО

Строительство домов

+127%заявок−42%стоимость заявки
СТОМАТОЛОГИЯ

Стоматология

+83%заявок−36%стоимость заявки
АВТОСЕРВИС

Автосервис

+146%заявок−51%стоимость заявки
ДЛЯ КОГО МЫ РАБОТАЕМ

Помогаем бизнесам, которым нужны клиенты

⌂ Строительство🚗 Автоуслуги♧ Услуги♧ Медицина▣ B2B компании
ВАШ
ЭКСПЕРТ
ВЫ РАБОТАЕТЕ НАПРЯМУЮ СО СПЕЦИАЛИСТАМИ

Не с менеджером

В вашем проекте специалист отвечает за результат и лично контролирует рекламу, сайт и аналитику.

✓ 5+ лет в digital✓ 200+ проектов✓ Работаем без посредников
ЭТАПЫ РАБОТЫ

Прозрачный процесс. Чёткие сроки. Понятный результат.

1Заявка и анализ2 дня
2Стратегия продвижения2–3 дня
3Создание сайта5–7 дней
4Запуск рекламы3–5 дней
5Оптимизация и ростпостоянно
УЗНАЙТЕ, ПОЧЕМУ ВАША РЕКЛАМА МОЖЕТ ТЕРЯТЬ КЛИЕНТОВ

Получите бесплатный аудит и рекомендации

Разберём сайт, рекламу и аналитику.

FAQ

Часто задаваемые вопросы

Сколько стоит запуск? +

Стоимость зависит от ниши и состава работ. Комплексный запуск — от 100 000 ₽.

Сколько времени занимает? +

Первые этапы обычно занимают от нескольких дней до нескольких недель.

Можно заказать только рекламу? +

Да. Можно выбрать отдельные услуги или комплекс.

Вы работаете с небольшими компаниями? +

Да, формат работы подбирается под задачи и бюджет.

Готовы получить больше клиентов
из интернета?

Оставьте заявку — разберём вашу ситуацию и покажем точки роста.

Оставить заявку →
''' css = r'''@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap'); :root{ --bg:#03122f;--bg2:#071d45;--text:#f5f8ff;--muted:#aabbd8; --blue:#19c8ff;--cyan:#2de9e2;--violet:#8247ff;--light:#f5f9ff; --ink:#10284e;--card:#0a2550;--line:rgba(120,170,255,.2); --radius:12px;--container:1260px; } *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Manrope,Arial,sans-serif;color:var(--ink);background:var(--light)} a{text-decoration:none;color:inherit}.container{width:min(var(--container),calc(100% - 48px));margin:auto} .section-dark{background:var(--bg);color:var(--text);position:relative;overflow:hidden} .section-light{background:#f7faff}.site-header{position:absolute;z-index:10;left:0;right:0;color:#fff;background:rgba(2,15,42,.35);backdrop-filter:blur(10px)} .nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:30px}.logo{display:flex;align-items:center;gap:10px;font-weight:800;font-size:16px;letter-spacing:.2px}.logo small{display:block;font-size:7px;letter-spacing:2px;color:#80a2d5}.logo-mark{font-size:18px;color:#29ddff;font-weight:900}.nav-links{display:flex;gap:30px;font-size:12px;color:#d2dcf0}.nav-links a:hover{color:var(--cyan)} .btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:13px 22px;border-radius:999px;border:0;font-weight:700;font-size:13px;cursor:pointer}.btn-primary{color:#fff;background:linear-gradient(100deg,#8a42ff,#16d9ed);box-shadow:0 8px 30px rgba(58,107,255,.3)}.btn-lg{padding:16px 25px} .hero{min-height:620px;padding:140px 0 75px;background:radial-gradient(circle at 78% 30%,rgba(16,119,255,.35),transparent 32%),radial-gradient(circle at 15% 80%,rgba(88,40,255,.25),transparent 30%),var(--bg)} .hero:after,.process:after,.final-cta:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:rgba(62,44,255,.2);filter:blur(50px);right:-180px;bottom:-250px} .hero-grid{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;gap:40px}.eyebrow{font-size:10px;letter-spacing:1.6px;color:#62dfff;font-weight:800;margin-bottom:10px}.eyebrow.dark{color:#5676ad} h1{font-size:50px;line-height:1.08;margin:0 0 20px;letter-spacing:-2px}h1 span,.blue{color:#28cfff}h2{font-size:31px;line-height:1.15;margin:0 0 14px;letter-spacing:-.8px}h3{margin:7px 0;font-size:15px}p{font-size:13px;line-height:1.55;color:var(--muted);margin:0 0 18px}.hero-copy p{max-width:510px;color:#d5e1f3}.hero-actions{display:flex;align-items:center;gap:24px;margin:25px 0}.play-link{font-size:11px;display:flex;align-items:center;gap:10px}.play{width:30px;height:30px;border:1px solid #2ad9ff;border-radius:50%;display:grid;place-items:center;color:#2ad9ff;font-size:10px}.play-link small{color:#8ba2c7}.mini-features{display:flex;gap:24px;font-size:10px;color:#c7d7ef}.dashboard{height:380px;position:relative;display:flex;align-items:center;justify-content:center}.laptop{width:580px;transform:perspective(1000px) rotateY(-5deg) rotateX(3deg)}.screen{height:310px;border:10px solid #172c50;border-radius:15px;background:linear-gradient(135deg,#07172f,#0d2d5d);padding:28px;box-shadow:0 25px 70px #0008;position:relative;overflow:hidden}.screen-top{color:#9db5da;font-size:12px}.screen-top b{color:#2de9e2}.big-number{font-size:28px;margin-top:35px;font-weight:800}.chart{height:120px;display:flex;align-items:flex-end;gap:12px;border-bottom:1px solid #38517c;margin-top:12px}.chart i{display:block;width:12%;height:var(--h,50%);background:linear-gradient(#17d7ff,#6648ff);border-radius:5px 5px 0 0}.chart i:nth-child(1){--h:25%}.chart i:nth-child(2){--h:40%}.chart i:nth-child(3){--h:35%}.chart i:nth-child(4){--h:58%}.chart i:nth-child(5){--h:48%}.chart i:nth-child(6){--h:76%}.chart i:nth-child(7){--h:94%}.chart-bars{display:flex;gap:8px;margin-top:12px}.chart-bars b{height:6px;flex:1;background:#294a79;border-radius:10px}.keyboard{height:30px;background:linear-gradient(#142e51,#07172d);clip-path:polygon(8% 0,92% 0,100% 100%,0 100%);margin-top:-1px}.float-card{position:absolute;background:rgba(8,35,75,.92);border:1px solid #3979c9;border-radius:10px;padding:14px;color:#cfe2ff;font-size:10px;box-shadow:0 15px 35px #0006;backdrop-filter:blur(12px)}.float-card strong{font-size:17px;color:#24ddff}.float-card em{color:#a9a7ff;font-style:normal}.card-yandex{right:8px;top:45px}.card-vk{right:-15px;bottom:45px} .trust{padding:38px 0;background:linear-gradient(90deg,#06204a,#071a3b)}.trust-grid{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:14px;align-items:stretch}.trust h2{font-size:22px}.trust p{font-size:10px;max-width:360px}.metric{border:1px solid #24508d;border-radius:10px;padding:18px;display:flex;flex-direction:column;justify-content:center;background:#0a2550}.metric strong{font-size:25px;color:#26d8ff}.metric span{font-size:10px;color:#b3c8e8;margin-top:5px} .pain,.services,.comparison,.industries,.timeline,.faq{padding:70px 0}.split-title{display:grid;grid-template-columns:280px 1fr;gap:55px;align-items:center}.cards-4,.steps,.service-panel,.compare-grid,.case-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.info-card{background:#fff;border:1px solid #e1e9f4;border-radius:10px;padding:22px;min-height:150px;box-shadow:0 10px 35px #183c6b0a}.info-card p{font-size:10px}.cross{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#ff5a8b;color:#fff;margin-bottom:12px} .process{padding:70px 0;background:radial-gradient(circle at 10% 70%,#24167a66,transparent 25%),#041737}.steps{gap:10px}.step{padding:20px;background:#092653;border:1px solid #1d4b8c;border-radius:10px;min-height:180px}.step span{font-size:25px;color:#24dfff;font-weight:800}.step p{font-size:10px} .service-panel{grid-template-columns:repeat(4,1fr);background:#06204a;border-radius:12px;padding:18px;border:1px solid #285897;color:#fff}.service-panel article{padding:10px;border-right:1px solid #234875}.service-panel article span{color:#25dfff}.service-panel p{font-size:10px}.panel-price{grid-column:1/-1;border-top:1px solid #28507f;padding:16px 10px}.panel-price strong{color:#27e3d6;font-size:24px;margin-right:15px}.panel-price span{color:#aac0e0;font-size:10px} .compare-grid{grid-template-columns:1fr 1fr}.compare{padding:24px;border-radius:10px;border:1px solid #dce6f2;background:#fff}.compare p{font-size:11px;margin:8px 0}.compare.good{background:#e9fffb;border-color:#68e4d7}.compare.good h3{color:#008e84} .cases{padding:60px 0}.case-grid{margin-top:25px}.case{background:#092653;border:1px solid #23518d;border-radius:10px;padding:12px}.case-image{height:110px;border-radius:7px;background:linear-gradient(135deg,#314a67,#111c32);display:grid;place-items:center;color:#9db6d7;font-size:11px}.case h3{color:#fff}.case b{color:#27e4da;font-size:18px;margin-right:5px}.case span{font-size:9px;color:#a9bddb;margin-right:15px} .industry-row{display:flex;justify-content:space-between;margin-top:28px;gap:10px}.industry-row span{padding:15px 20px;border:1px solid #dbe5f2;border-radius:10px;background:#fff;font-size:11px;flex:1;text-align:center} .about{padding:55px 0}.about-grid{display:grid;grid-template-columns:280px 1fr;gap:45px;align-items:center}.expert-photo{height:180px;border-radius:12px;background:linear-gradient(145deg,#1a426e,#071a35);display:grid;place-items:center;color:#60dfff;font-weight:800;letter-spacing:3px}.expert-points{display:flex;gap:25px;color:#b8cce8;font-size:11px} .timeline-row{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:40px}.timeline-row div{position:relative;padding-right:15px}.timeline-row b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#22d8df;color:#07305b;margin-bottom:12px}.timeline-row strong,.timeline-row small{display:block;font-size:11px}.timeline-row small{color:#7b91b5;margin-top:5px} .contact{padding:60px 0;background:radial-gradient(circle at 80% 50%,#153e8e,transparent 35%),#041633}.contact-box{display:grid;grid-template-columns:1fr 420px;gap:50px;align-items:center}.lead-form{display:grid;gap:10px}.lead-form input{padding:15px 17px;border-radius:8px;border:1px solid #345987;background:#092653;color:#fff;outline:none}.lead-form input::placeholder{color:#8da6cb} .faq-list{margin-top:25px;max-width:850px}.faq details{border-bottom:1px solid #d8e3f1;padding:18px 0}.faq summary{list-style:none;cursor:pointer;font-size:13px;font-weight:700;display:flex;justify-content:space-between}.faq summary::-webkit-details-marker{display:none}.faq details p{margin:14px 0 0} .final-cta{text-align:center;padding:80px 0;background:radial-gradient(circle,#0a3270,#03132f 65%)}.final-cta p{max-width:600px;margin:0 auto 25px}.footer{padding:28px 0}.footer-row{display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#7893bc} @media(max-width:900px){.nav-links{display:none}.hero-grid,.split-title,.about-grid,.contact-box{grid-template-columns:1fr}.dashboard{order:-1;height:300px}.laptop{width:95%}.screen{height:220px}.cards-4,.steps,.case-grid,.service-panel{grid-template-columns:repeat(2,1fr)}.trust-grid{grid-template-columns:1fr 1fr}.trust-grid>div:first-child{grid-column:1/-1}.industry-row,.expert-points{flex-wrap:wrap}.timeline-row{grid-template-columns:1fr 1fr}.nav{height:68px}.hero{padding-top:105px}h1{font-size:38px}.split-title{gap:25px}.contact-box{gap:30px}} @media(max-width:560px){.container{width:min(100% - 28px,var(--container))}.cards-4,.steps,.case-grid,.service-panel,.trust-grid,.compare-grid{grid-template-columns:1fr}.timeline-row{grid-template-columns:1fr}.industry-row{display:grid;grid-template-columns:1fr 1fr}.hero-actions{flex-direction:column;align-items:flex-start}.mini-features{flex-direction:column;gap:8px}.dashboard{transform:scale(.82);margin:-20px -30px}.float-card{display:none}.hero h1{font-size:34px}.section-light,.section-dark{overflow:hidden}} ''' js = r'''document.querySelectorAll('a[href^="#"]').forEach(link => { link.addEventListener('click', e => { const target = document.querySelector(link.getAttribute('href')); if (target) { e.preventDefault(); target.scrollIntoView({behavior:'smooth'}); } }); }); document.querySelector('.lead-form')?.addEventListener('submit', e => { e.preventDefault(); alert('Форма отправлена. Подключите здесь ваш обработчик / CRM / Telegram.'); }); ''' readme = r'''# VKOSTROV — модульный референс сайта Файлы: - index.html — все секции страницы. Каждый блок можно копировать отдельно. - styles.css — стили, переменные цветов и адаптив. - script.js — плавная навигация и демо-форма. Основные самостоятельные блоки: 1. `.hero` — первый экран 2. `.trust` — цифры / доверие 3. `.pain` — проблемы клиента 4. `.process` — 4 шага 5. `.services` — услуги 6. `.comparison` — сравнение «обычно / у нас» 7. `.cases` — кейсы 8. `.industries` — отрасли 9. `.about` — эксперт 10. `.timeline` — этапы 11. `.contact` — форма 12. `.faq` — FAQ 13. `.final-cta` — финальный CTA Можно копировать любую `
...
` из index.html и подключать styles.css. ''' for name, content in {"index.html":html,"styles.css":css,"script.js":js,"README.txt":readme}.items(): (root/name).write_text(content, encoding="utf-8") zip_path = Path("/mnt/data/VKOSTROV_site_reference.zip") with zipfile.ZipFile(zip_path, "w", zipfile.ZIP_DEFLATED) as z: for p in root.iterdir(): z.write(p, p.name) print(f"Готово: {zip_path}") print("Внутри: index.html, styles.css, script.js, README.txt")