Новые страницы услуг

This commit is contained in:
Web-serfer 2026-04-13 21:48:11 +05:00
parent 67da9f810b
commit ba332ca782
17 changed files with 2739 additions and 191 deletions

View file

@ -38,8 +38,8 @@ const { tabsData: tabsDataProp, sectionLabel, sectionTitle, sectionDesc } = Astr
const defaultProps = {
sectionLabel: "Подробнее об услуге",
sectionTitle: "Всё о возврате водительских прав",
sectionDesc: "Полная информация об услуге возврата прав при лишении"
sectionTitle: "Защита водителей до составления протокола",
sectionDesc: "Полная информация о юридической помощи на ранних этапах"
};
const finalSectionLabel = sectionLabel || defaultProps.sectionLabel;
@ -48,48 +48,48 @@ const finalSectionDesc = sectionDesc || defaultProps.sectionDesc;
const defaultTabsData = {
problem: {
title: "Лишение прав — массовая практика",
description: "Ежегодно в России более <strong>300 000 водителей</strong> лишаются водительских прав. При этом значительная часть постановлений выносится с <strong>процессуальными нарушениями</strong>.",
description2: "Сотрудники ГИБДД часто допускают ошибки при составлении протоколов, нарушении порядка освидетельствования или не разъясняют права водителям.",
title: "Остановка инспектором — критически важный момент",
description: "Большинство водителей <strong>теряют свои права</strong> именно на этапе остановки и общения с инспектором до начала оформления протокола. В этот момент важно <strong>знать свои права</strong> и фиксировать любые нарушения.",
description2: "Инспекторы часто допускают нарушения: не разъясняют права, проводят освидетельствование без понятых, не предоставляют информацию о порядке обжалования. <strong>Чем раньше подключится юрист — тем больше шансов на успех</strong>.",
items: [
"Нарушение процедуры освидетельствования",
"Ошибки в протоколах и постановлениях",
"Отсутствие понятых или видеофиксации"
"Нарушение процедуры остановки и освидетельствования",
"Отсутствие понятых или видеофиксации",
"Не разъяснены права водителя"
],
visualNumber: "300K+",
visualLabel: "водителей лишаются прав ежегодно",
visualNote: "Из них до 40% дел можно выиграть",
barWidth: 75
visualNumber: "70%",
visualLabel: "дел проиграны из-за ошибок на старте",
visualNote: "При грамотной защите на этапе — до 85% дел закрываются",
barWidth: 70
},
approach: {
title: "Индивидуальная стратегия для каждого дела",
description: "Мы не используем шаблонные решения. Каждое дело <strong>уникально</strong> и требует детального анализа материалов, видеозаписей и показаний свидетелей.",
description2: "Наш подход основан на <strong>глубоком знании практики</strong> судов Сургута и ХМАО. Мы изучаем каждую мелочь, чтобы найти слабые места обвинения.",
title: "Оперативная защита с первой минуты",
description: "Мы обеспечиваем <strong>юридическое сопровождение</strong> с момента остановки инспектором. Контролируем каждый шаг: законность требований, порядок освидетельствования, правильность заполнения документов.",
description2: "Наша задача — <strong>не допустить нарушений</strong> ещё на этапе оформления. Если протокол составлен с ошибками — это основание для прекращения дела.",
items: [
{ icon: "📋", title: "Анализ документов", desc: "Изучаем протоколы, постановления, рапорты" },
{ icon: "🔍", title: "Поиск нарушений", desc: "Находим процессуальные ошибки" },
{ icon: "📹", title: "Видеодоказательства", desc: "Запрашиваем и анализируем записи" }
{ icon: "📞", title: "Консультация по телефону", desc: "Правильное поведение при остановке" },
{ icon: "🚗", title: "Выезд на место", desc: "Защита при оформлении" },
{ icon: "📋", title: "Проверка протокола", desc: "Фиксация ошибок и нарушений" }
],
steps: ["Консультация", "Анализ дела", "Стратегия", "Суд", "Результат"]
steps: ["Звонок юристу", "Консультация", "Выезд на место", "Проверка протокола", "Прекращение дела"]
},
stats: {
bigStat: { number: 98, label: "Успешных дел", barWidth: 98 },
bigStat: { number: 85, label: "Дел прекращено на ранних этапах", barWidth: 85 },
stats: [
{ number: 500, label: "Клиентов вернули права", suffix: "+" },
{ number: 15, label: "Лет практики", suffix: "" },
{ number: 2, label: "Недели — мин. срок", suffix: "" },
{ number: 400, label: "Водителей защищены", suffix: "+" },
{ number: 12, label: "Лет практики", suffix: "" },
{ number: 30, label: "Минут — среднее время выезда", suffix: " мин" },
{ number: 100, label: "Возврат денег при неудаче", suffix: "%" }
]
},
guarantees: {
title: "Работаем на результат",
description: "Мы уверены в своих силах, поэтому предлагаем <strong>оплату по факту</strong> — только после успешного возврата прав.",
description2: "Если суд вынес решение не в вашу пользу — мы <strong>вернём деньги</strong> за наши услуги. Это прописано в договоре.",
description: "Мы берёмся только за дела с <strong>реальными перспективами</strong>. Если защита на раннем этапе не помогла — мы вернём <strong>оплату за услугу</strong>.",
description2: "Если протокол составлен без нарушений — мы честно скажем об этом <strong>на первой консультации</strong> и предложим стратегию защиты на следующих этапах.",
items: [
{ title: "Без предоплаты", desc: "Оплата только после положительного результата" },
{ title: "Возврат денег", desc: "Если не вернули права — вернём оплату" },
{ title: "Договор", desc: "Официальный договор с прописанными гарантиями" },
{ title: "Честная оценка", desc: "Не берёмся за заведомо проигрышные дела" }
{ title: "Бесплатная оценка", desc: "Честный анализ перспектив дела на консультации" },
{ title: "Возврат денег", desc: "Если защита не сработала — вернём оплату" },
{ title: "Договор", desc: "Официальный договор с прописанными условиями" },
{ title: "Оперативность", desc: "Выезд на место в течение 30 минут" }
]
}
};

View file

@ -15,18 +15,18 @@ interface Props {
const { advantages: advantagesProp, sectionLabel, sectionTitle, sectionDesc } = Astro.props;
const defaultAdvantages: Advantage[] = [
{ number: "01", title: "Специализация на автоспорах", desc: "Мы занимаемся исключительно делами по лишению прав. Это даёт глубокое знание практики судов Сургута." },
{ number: "02", title: "98% успешных дел", desc: "Наша статистика говорит сама за себя. Большинство дел заканчиваются в пользу клиента." },
{ number: "03", title: "Бесплатная консультация", desc: "Первичная консультация бесплатно. Честно скажем о перспективах дела до начала работы." },
{ number: "04", title: "Работа без предоплаты", desc: "Оплата только после положительного результата. Мы уверены в своих силах." },
{ number: "05", title: "Полное сопровождение", desc: "Берём на себя весь процесс — от анализа документов до получения прав в ГИБДД." },
{ number: "06", title: "Связь 24/7", desc: "На связи в любое время. Оперативно отвечаем на вопросы и информируем о ходе дела." }
{ number: "01", title: "Оперативный выезд", desc: "Выезжаем на место в течение 30 минут. Защищаем водителя с первой минуты остановки." },
{ number: "02", title: "85% дел прекращено", desc: "Большинство дел закрываются благодаря грамотной защите на раннем этапе." },
{ number: "03", title: "Бесплатная консультация", desc: "Первичная консультация бесплатно. Объясним, как вести себя при остановке инспектором." },
{ number: "04", title: "Работа без предоплаты", desc: "Оплата только после результата. Мы уверены в эффективности ранней защиты." },
{ number: "05", title: "Полное сопровождение", desc: "Берём на себя весь процесс — от консультации при остановке до прекращения дела." },
{ number: "06", title: "Связь 24/7", desc: "На связи в любое время. Оперативно выезжаем на место при звонке клиента." }
];
const finalAdvantages = advantagesProp || defaultAdvantages;
const finalSectionLabel = sectionLabel || "Почему мы";
const finalSectionTitle = sectionTitle || "Преимущества работы с нами";
const finalSectionDesc = sectionDesc || "Доверьте своё дело профессионалам с многолетним опытом";
const finalSectionDesc = sectionDesc || "Защита ваших прав с первой минуты остановки";
---
<section class="advantages-section" id="advantages">

View file

@ -16,18 +16,18 @@ interface Props {
const { articles: articlesProp, sectionLabel, sectionTitle, sectionDesc } = Astro.props;
const defaultArticles: Article[] = [
{ icon: "🍺", title: "Ст. 12.8 — Управление в состоянии опьянения", desc: "Оспариваем результаты освидетельствования, проверяем соблюдение процедуры медосвидетельствования.", chance: "Высокий шанс" },
{ icon: "🚫", title: "Ст. 12.26 — Отказ от медосвидетельствования", desc: "Анализируем законность требований о прохождении освидетельствования, ищем нарушения процедуры.", chance: "Высокий шанс" },
{ icon: "🚦", title: "Ст. 12.12 — Проезд на красный свет", desc: "Проверяем работу камер, анализируем материалы дела, ищем свидетелей.", chance: "Средний шанс" },
{ icon: "🔄", title: "Ст. 12.15 — Выезд на встречную полосу", desc: "Анализируем дорожную разметку, знаки, показания инспекторов.", chance: "Высокий шанс" },
{ icon: "🚗", title: "Ст. 12.27 — Оставление места ДТП", desc: "Доказываем отсутствие умысла или необходимость покинуть место по уважительной причине.", chance: "Средний шанс" },
{ icon: "⚠️", title: "Другие статьи", desc: "Работаем с любыми статьями КоАП — каждая ситуация индивидуальна и требует анализа.", chance: "Зависит от дела" }
{ icon: "🛑", title: "Остановка инспектором", desc: "Проверяем законность остановки, контролируем действия инспектора с первой минуты.", chance: "Высокий шанс" },
{ icon: "🫁", title: "Освидетельствование на месте", desc: "Контролируем правильность процедуры, наличие понятых, поверку прибора.", chance: "Высокий шанс" },
{ icon: "📋", title: "Составление протокола", desc: "Проверяем каждое поле протокола, фиксируем ошибки и нарушения процедуры.", chance: "Высокий шанс" },
{ icon: "🎥", title: "Отсутствие видеозаписи", desc: "Если инспектор не вёл запись — это основание для прекращения дела.", chance: "Средний шанс" },
{ icon: "👥", title: "Отсутствие понятых", desc: "Освидетельствование без понятых — грубое процессуальное нарушение.", chance: "Высокий шанс" },
{ icon: "⚠️", title: "Другие ситуации", desc: "Работаем с любыми нарушениями процедуры — каждая ситуация требует анализа.", chance: "Зависит от дела" }
];
const finalArticles = articlesProp || defaultArticles;
const finalSectionLabel = sectionLabel || "Работаем со статьями";
const finalSectionTitle = sectionTitle || "По каким статьям КоАП возвращаем права";
const finalSectionDesc = sectionDesc || "Оспариваем лишение по всем основным статьям КоАП РФ";
const finalSectionLabel = sectionLabel || "Работаем с ситуациями";
const finalSectionTitle = sectionTitle || "Типичные ситуации для защиты";
const finalSectionDesc = sectionDesc || "Защищаем водителей при любых нарушениях процедуры";
---
<section class="articles-section" id="articles">

View file

@ -14,18 +14,18 @@ interface Props {
const { faqs: faqsProp, sectionLabel, sectionTitle, sectionDesc } = Astro.props;
const defaultFAQs: FAQ[] = [
{ question: "Можно ли реально вернуть права после лишения?", answer: "Да, в <strong>98% случаев</strong> нам удаётся вернуть права. Мы анализируем материалы дела и честно говорим о перспективах до начала работы." },
{ question: "Сколько времени занимает процесс?", answer: "В среднем процесс занимает <strong>от 2 недель до 3 месяцев</strong> в зависимости от сложности дела и загруженности судов." },
{ question: "Что если суд уже вынес решение?", answer: "Мы можем <strong>обжаловать решение</strong> в апелляционном суде в течение 10 дней с момента вынесения. Даже если срок прошёл, есть другие механизмы." },
{ question: "Какие гарантии результата?", answer: "Мы работаем <strong>без предоплаты</strong> — оплата только после положительного результата. Если не вернём права — вернём деньги." },
{ question: "Нужно ли моё присутствие в суде?", answer: "<strong>Нет</strong>, мы представляем ваши интересы по доверенности. Ваше присутствие не требуется — мы ведём дело полностью." },
{ question: "Что нужно для начала работы?", answer: "Достаточно <strong>позвонить нам</strong> или оставить заявку. На бесплатной консультации мы всё обсудим и начнём работу." }
{ question: "Что делать, если меня остановил инспектор?", answer: "Сразу <strong>позвоните нам</strong>. Мы объясним, как правильно себя вести, что можно и нельзя говорить. Не подписывайте документы без консультации с юристом." },
{ question: "Как быстро вы можете выехать на место?", answer: "Наш специалист выезжает в течение <strong>30 минут</strong> после звонка. Мы работаем по всему Сургуту и пригороду." },
{ question: "Можно ли прекратить дело до суда?", answer: "Да, если протокол составлен с <strong>процессуальными нарушениями</strong> — это основание для прекращения дела. В 85% случаев дело закрывается на раннем этапе." },
{ question: "Какие гарантии результата?", answer: "Мы работаем <strong>без предоплаты</strong> — оплата только после результата. Если защита не сработала — вернём деньги за услугу." },
{ question: "Нужно ли моё присутствие при оформлении?", answer: "<strong>Да</strong>, вы должны быть на месте. Но с нашим юристом вы будете защищены — мы контролируем каждый шаг инспектора." },
{ question: "Что если я уже подписал протокол?", answer: "Даже если вы подписали протокол, мы можем <strong>оспорить его</strong> при наличии процессуальных нарушений. Звоните — разберёмся в ситуации." }
];
const finalFAQs = faqsProp || defaultFAQs;
const finalSectionLabel = sectionLabel || "Вопросы";
const finalSectionTitle = sectionTitle || "Частые вопросы";
const finalSectionDesc = sectionDesc || "Ответы на популярные вопросы о возврате прав";
const finalSectionDesc = sectionDesc || "Ответы на популярные вопросы о защите водителей";
---
<section class="faq-section" id="faq">

View file

@ -19,14 +19,14 @@ interface Props {
const { plans: plansProp, sectionLabel, sectionTitle, sectionDesc } = Astro.props;
const defaultPlans: Plan[] = [
{ badge: "Базовый", title: "Консультация + анализ дела", price: "Бесплатно", features: ["Анализ материалов дела", "Оценка перспектив", "Рекомендации по действиям", "Консультация по статьям"], btnText: "Получить консультацию", btnClass: "" },
{ badge: "Популярный", title: "Полное сопровождение", price: "от 15 000 ₽", features: ["Всё из базового пакета", "Подготовка жалоб", "Представительство в суде", "Сбор доказательств", "Получение прав"], btnText: "Начать работу", btnClass: "gold", popular: true },
{ badge: "Премиум", title: "Сложные дела", price: "от 30 000 ₽", features: ["Всё из полного пакета", "Экспертиза", "Апелляция", "Работа с ГИБДД", "Приоритетная поддержка"], btnText: "Обсудить дело", btnClass: "" }
{ badge: "Базовый", title: "Телефонная консультация", price: "Бесплатно", features: ["Разбор вашей ситуации", "Рекомендации по поведению", "Оценка перспектив дела", "Консультация 24/7"], btnText: "Позвонить сейчас", btnClass: "" },
{ badge: "Популярный", title: "Выезд + защита на месте", price: "от 8 000 ₽", features: ["Выезд в течение 30 минут", "Защита при оформлении", "Проверка законности действий", "Фиксация нарушений", "Проверка протокола"], btnText: "Вызвать юриста", btnClass: "gold", popular: true },
{ badge: "Премиум", title: "Полное сопровождение", price: "от 15 000 ₽", features: ["Всё из популярного пакета", "Представительство в суде", "Обжалование решения", "Приоритетная поддержка", "Гарантия возврата"], btnText: "Обсудить дело", btnClass: "" }
];
const finalPlans = plansProp || defaultPlans;
const finalSectionLabel = sectionLabel || "Стоимость";
const finalSectionTitle = sectionTitle || "Сколько стоит возврат прав";
const finalSectionTitle = sectionTitle || "Сколько стоит защита водителя";
const finalSectionDesc = sectionDesc || "Прозрачные цены без скрытых платежей";
---

View file

@ -27,28 +27,28 @@ const {
category: "Водительские права",
services: [
{
title: "Возврат прав при лишении",
description: "Оспариваем лишение водительских прав в суде. Работаем с любыми статьями КоАП.",
price: "от 40 000 ₽",
icon: "🚗",
title: "Защита до составления протокола",
description: "Юридическая помощь водителям с момента остановки инспектором до начала оформления. Предотвращаем нарушения прав и неправомерные действия.",
price: "от 8 000 ₽",
icon: "🛡️",
href: "/services/license-return",
features: ["Анализ протокола", "Представительство в суде", "Обжалование решения", "Сопровождение до результата"]
features: ["Консультация при остановке", "Контроль законности действий инспектора", "Фиксация процессуальных нарушений", "Проверка заполнения протокола"]
},
{
title: "Оспаривание лишения",
description: "Находим процессуальные нарушения и добиваемся отмены постановлений.",
title: "Защита при составленном протоколе",
description: "Анализируем протокол, находим процессуальные нарушения, выстраиваем линию защиты для минимизации последствий.",
price: "от 20 000 ₽",
icon: "📝",
href: "/services/license-challenge",
features: ["Аудит протокола на нарушения", "Сбор доказательств", "Подготовка возражений", "Представительство при рассмотрении"]
},
{
title: "Обжалование судебного решения",
description: "Оспариваем вынесенные судебные постановления. Находим основания для отмены и добиваемся отмены решений.",
price: "от 30 000 ₽",
icon: "⚖️",
href: "/services/license-challenge",
features: ["Аудит материалов дела", "Поиск нарушений процедуры", "Подготовка жалобы", "Защита в апелляционном суде"]
},
{
title: "Замена прав",
description: "Помощь в замене прав по окончании срока, при утере или порче.",
price: "от 5 000 ₽",
icon: "🔄",
href: "/services/replacement",
features: ["Подготовка документов", "Запись в ГИБДД", "Сопровождение процедуры", "Получение новых прав"]
href: "/services/appeal",
features: ["Анализ постановления суда", "Подготовка апелляционной жалобы", "Представительство в апелляционном суде", "Контроль исполнения решения"]
}
]
},
@ -531,7 +531,7 @@ const {
/* Текст */
.service-title {
font-size: 1.25rem;
font-size: 1.15rem;
font-weight: 700;
color: var(--color-primary);
margin: 0 0 0.75rem 0;

View file

@ -15,18 +15,18 @@ interface Props {
const { includes: includesProp, sectionLabel, sectionTitle, sectionDesc } = Astro.props;
const defaultIncludes: IncludeItem[] = [
{ icon: "📄", title: "Анализ протокола и документов", desc: "Изучаем все материалы дела, ищем процессуальные нарушения" },
{ icon: "💬", title: "Консультация 24/7", desc: "На связи в любое время, отвечаем на все вопросы" },
{ icon: "📝", title: "Подготовка жалоб и ходатайств", desc: "Составляем все необходимые процессуальные документы" },
{ icon: "👨‍⚖️", title: "Представительство в суде", desc: "Полное ведение дела без вашего участия" },
{ icon: "🔍", title: "Сбор доказательств", desc: "Находим свидетелей, запрашиваем видеозаписи" },
{ icon: "✅", title: "Гарантия результата", desc: "Если не вернули права — вернём деньги" }
{ icon: "📞", title: "Консультация 24/7", desc: "На связи в любое время, отвечаем на все вопросы" },
{ icon: "🚗", title: "Выезд на место остановки", desc: "Защита водителя при оформлении документов" },
{ icon: "📋", title: "Проверка законности действий", desc: "Контролируем правильность процедуры" },
{ icon: "📹", title: "Фиксация нарушений", desc: "Записываем все процессуальные ошибки инспектора" },
{ icon: "📝", title: "Проверка протокола", desc: "Анализируем правильность заполнения документов" },
{ icon: "✅", title: "Гарантия результата", desc: "Если защита не сработала — вернём деньги" }
];
const finalIncludes = includesProp || defaultIncludes;
const finalSectionLabel = sectionLabel || "Что входит";
const finalSectionTitle = sectionTitle || "Что входит в услугу";
const finalSectionDesc = sectionDesc || "Полный спектр работ по возврату ваших прав";
const finalSectionDesc = sectionDesc || "Полный спектр защиты водителя до составления протокола";
---
<section class="includes-section" id="includes">

View file

@ -15,17 +15,17 @@ interface Props {
const { steps: stepsProp, sectionLabel, sectionTitle, sectionDesc } = Astro.props;
const defaultSteps: Step[] = [
{ number: "01", title: "Бесплатная консультация", desc: "Анализируем вашу ситуацию, оцениваем перспективы дела. Рассказываем о шансах и стоимости." },
{ number: "02", title: "Анализ материалов дела", desc: "Изучаем протоколы, постановления, видеозаписи. Ищем процессуальные нарушения." },
{ number: "03", title: "Подготовка стратегии", desc: "Разрабатываем линию защиты, собираем доказательства, готовим документы для суда." },
{ number: "04", title: "Защита в суде", desc: "Представляем ваши интересы в суде первой и апелляционной инстанции." },
{ number: "05", title: "Получение прав", desc: "Помогаем с процедурой возврата прав после успешного решения суда." }
{ number: "01", title: "Звонок юристу", desc: "Позвоните нам сразу после остановки инспектором. Работаем 24/7, консультация бесплатная." },
{ number: "02", title: "Консультация по ситуации", desc: "Объясняем, как правильно себя вести, что можно и нельзя делать при общении с инспектором." },
{ number: "03", title: "Выезд на место", desc: "Наш специалист выезжает к вам для защиты при оформлении документов и освидетельствовании." },
{ number: "04", title: "Проверка протокола", desc: "Контролируем правильность заполнения, фиксируем любые процессуальные нарушения." },
{ number: "05", title: "Прекращение дела", desc: "Благодаря грамотной защите на раннем этапе дело часто прекращается до суда." }
];
const finalSteps = stepsProp || defaultSteps;
const finalSectionLabel = sectionLabel || "Этапы работы";
const finalSectionTitle = sectionTitle || "Как мы возвращаем ваши права";
const finalSectionDesc = sectionDesc || "Прозрачный процесс от первой консультации до получения прав";
const finalSectionTitle = sectionTitle || "Как мы защищаем ваши права";
const finalSectionDesc = sectionDesc || "Оперативная помощь с момента остановки до прекращения дела";
---
<section class="steps-section" id="steps">