Новый правки компоентов

This commit is contained in:
Web-serfer 2026-05-07 14:36:21 +05:00
parent b5d2174fdf
commit 62a6453a1a
25 changed files with 351 additions and 196 deletions

View file

@ -0,0 +1,99 @@
# avtourist
Проект: avtourist-surgut.ru — автоюрист в Сургуте.
Стек: Astro (SSR) + PocketBase + Tailwind CSS.
## Коллекции PocketBase
- `posts` — статьи блога
- `reviews` — отзывы
- `comments` — комментарии
- `cases` — кейсы
- `consultations` — консультации
- `users` — пользователи
- `post_votes` — голоса за посты
## Структура проекта
```
frontend/
├── src/
│ ├── pages/
│ │ ├── index.astro # Главная
│ │ ├── services/ # Услуги
│ │ ├── cases/ # Кейсы
│ │ ├── blog/ # Блог
│ │ ├── api/ # API эндпоинты
│ │ └── auth/ # Авторизация
│ ├── layouts/ # Layouts
│ ├── lib/ # PocketBase клиент
│ └── globalInterfaces.ts # Типы
```
## Категории блога
- ДТП
- Лишение прав
- Страховые споры
- Штрафы ГИБДД
- Возмещение ущерба
- Судебные дела
## Категории услуг
- Возврат прав
- Оспаривание штрафов
- Страховые споры (ОСАГО, КАСКО)
- ДТП и здоровье
- Представительство в суде
- Обжалование постановлений
## Категории кейсов
- insurance — страховые
- rights — лишение прав
- accident — ДТП
- court — судебные
- consultation — консультации
## Компоненты
Использовать готовые компоненты из проекта:
- ServiceCard — карточка услуги
- CaseCard — карточка кейса
- ReviewCard — карточка отзыва
- ArticleCard — карточка статьи
## Типы
Все типы определены в `frontend/src/globalInterfaces.ts`:
- Post
- Review
- Case
- DocumentItem
- CompanyInfo
## API-эндпоинты
- `/api/posts` — список постов
- `/api/posts/[slug]` — один пост
- `/api/reviews` — отзывы
- `/api/comments` — комментарии
- `/api/votes` — голоса
- `/api/consultation` — форма консультации
- `/api/auth/*` — авторизация
## Переменные окружения
```
PB_POCKETBASE_URL=http://127.0.0.1:8090
```
## Правила
1. Все запросы к PB — на сервере (frontmatter)
2. Использовать типы из globalInterfaces.ts
3. Не использовать any
4. Компоненты — только .astro с Tailwind
5. API-эндпоинты — в src/pages/api/

1
.opencode/skills/common Symbolic link
View file

@ -0,0 +1 @@
C:/Users/Serg/.config/opencode/skills

View file

@ -53,8 +53,8 @@ const {
<div class="subtitle-line"></div>
</div>
<h2 class="title animate-on-scroll" data-animation="fade-up" data-delay="100">{sectionTitle}</h2>
<p class="section-description animate-on-scroll" data-animation="fade-up" data-delay="150">
Мы создали прозрачную систему взаимодействия, чтобы вы всегда знали, на каком этапе находится ваше дело
<p class="section-description animate-on-scroll" data-animation="fade-up" data-delay="150">
4 шага до результата. Оплата только за победу в суде.
</p>
</div>

View file

@ -48,9 +48,9 @@ const finalSectionDesc = sectionDesc || defaultProps.sectionDesc;
const defaultTabsData = {
problem: {
title: "Остановка инспектором — критически важный момент",
description: "Большинство водителей <strong>теряют свои права</strong> именно на этапе остановки и общения с инспектором до начала оформления протокола. В этот момент важно <strong>знать свои права</strong> и фиксировать любые нарушения.",
description2: "Инспекторы часто допускают нарушения: не разъясняют права, проводят освидетельствование без понятых, не предоставляют информацию о порядке обжалования. <strong>Чем раньше подключится юрист — тем больше шансов на успех</strong>.",
title: "Потеря прав в 70% случаев происходит при остановке",
description: "**Потеря прав происходит на этапе остановки.** 70% дел проиграны из-за ошибок в первые минуты после остановки. Без юриста водитель не знает своих прав и не фиксирует нарушения инспектора.",
description2: "**Инспектор обязан соблюдать процедуру.** При нарушении — основание для прекращения дела. Инспектор должен: разъяснить права, проводить освидетельствование при понятых или на камеру, выдать копию протокола.",
items: [
"Нарушение процедуры остановки и освидетельствования",
"Отсутствие понятых или видеофиксации",
@ -62,9 +62,9 @@ const defaultTabsData = {
barWidth: 70
},
approach: {
title: "Оперативная защита с первой минуты",
description: "Мы обеспечиваем <strong>юридическое сопровождение</strong> с момента остановки инспектором. Контролируем каждый шаг: законность требований, порядок освидетельствования, правильность заполнения документов.",
description2: "Наша задача — <strong>не допустить нарушений</strong> ещё на этапе оформления. Если протокол составлен с ошибками — это основание для прекращения дела.",
title: "Защита с момента остановки",
description: "**Юридическое сопровождение начинается сразу после остановки.** Контролируем каждый шаг: законность требований, порядок освидетельствования, правильность заполнения документов.",
description2: "**Задача юриста — не допустить нарушений при оформлении.** Если протокол составлен с ошибками — это основание для прекращения дела.",
items: [
{ icon: "📞", title: "Консультация по телефону", desc: "Правильное поведение при остановке" },
{ icon: "🚗", title: "Выезд на место", desc: "Защита при оформлении" },
@ -83,11 +83,11 @@ const defaultTabsData = {
},
guarantees: {
title: "Работаем на результат",
description: "Мы берёмся только за дела с <strong>реальными перспективами</strong>. Если защита на раннем этапе не помогла — мы вернём <strong>оплату за услугу</strong>.",
description2: "Если протокол составлен без нарушений — мы честно скажем об этом <strong>на первой консультации</strong> и предложим стратегию защиты на следующих этапах.",
description: "**Берёмся только за дел<D0B5><D0BB> с реальными перспективами.** Если защита на раннем этапе не помогла — возвращаем оплату за услугу.",
description2: "Если протокол составлен без нарушений — честно скажем об этом на первой консультации и предложим стратегию защиты на следующих этапах.",
items: [
{ title: "Бесплатная оценка", desc: "Честный анализ перспектив дела на консультации" },
{ title: "Возврат денег", desc: "Если защита не сработала — вернём оплату" },
{ title: "Возврат денег", desc: "Если защита не сработала — возвращаем оплату" },
{ title: "Договор", desc: "Официальный договор с прописанными условиями" },
{ title: "Оперативность", desc: "Выезд на место в течение 30 минут" }
]
@ -109,15 +109,15 @@ const finalTabsData = tabsDataProp || defaultTabsData;
<div class="tabs-nav" role="tablist">
<button class="tab-btn active" role="tab" data-tab="problem" aria-selected="true">
<span class="tab-icon">⚖️</span>
<span class="tab-text">О проблеме</span>
<span class="tab-text">Причина потери прав</span>
</button>
<button class="tab-btn" role="tab" data-tab="approach" aria-selected="false">
<span class="tab-icon">🎯</span>
<span class="tab-text">Наш подход</span>
<span class="tab-text">Как защищаем</span>
</button>
<button class="tab-btn" role="tab" data-tab="stats" aria-selected="false">
<span class="tab-icon">📊</span>
<span class="tab-text">Статистика</span>
<span class="tab-text">Результаты</span>
</button>
<button class="tab-btn" role="tab" data-tab="guarantees" aria-selected="false">
<span class="tab-icon">🛡️</span>
@ -141,6 +141,9 @@ const finalTabsData = tabsDataProp || defaultTabsData;
</div>
))}
</div>
<div class="takeaway-box">
<strong>Что делать:</strong> Позвоните нам сразу после остановки. Юрист выезжает на место за 30 минут и контролирует правильность оформления.
</div>
</div>
<div class="tab-visual">
<div class="visual-card">
@ -160,8 +163,8 @@ const finalTabsData = tabsDataProp || defaultTabsData;
<div class="tab-grid">
<div class="tab-text">
<h3>{finalTabsData.approach.title}</h3>
<p set:html={finalTabsData.approach.description}></p>
<p set:html={finalTabsData.approach.description2}></p>
<p>{finalTabsData.approach.description}</p>
<p>{finalTabsData.approach.description2}</p>
<div class="approach-list">
{finalTabsData.approach.items.map(item => (
<div class="approach-item">
@ -435,6 +438,22 @@ const finalTabsData = tabsDataProp || defaultTabsData;
flex-shrink: 0;
}
.takeaway-box {
margin-top: 1.5rem;
padding: 1rem 1.25rem;
background: linear-gradient(135deg, #0a2540, #1e3050);
border-radius: 10px;
color: #fff;
font-size: 0.95rem;
line-height: 1.6;
}
.takeaway-box strong {
color: #eac26e;
display: block;
margin-bottom: 0.25rem;
}
.tab-visual {
max-width: 100%;
}

View file

@ -24,8 +24,8 @@ const defaultSteps: Step[] = [
const finalSteps = stepsProp || defaultSteps;
const finalSectionLabel = sectionLabel || "Этапы работы";
const finalSectionTitle = sectionTitle || "Как мы защищаем ваши права";
const finalSectionDesc = sectionDesc || "Оперативная помощь с момента остановки до прекращения дела";
const finalSectionTitle = sectionTitle || "5 шагов до возврата прав";
const finalSectionDesc = sectionDesc || "Защита начинается сразу после остановки";
---
<section class="steps-section" id="steps">

View file

@ -254,6 +254,44 @@ const breadcrumbs = [
margin: 0 0 1rem 0;
}
.case-takeaway {
background: linear-gradient(135deg, #0a2540, #1e3050);
border-radius: 12px;
padding: 1.5rem 2rem;
margin-top: 1.5rem;
display: flex;
align-items: center;
justify-content: space-between;
gap: 1.5rem;
}
.case-takeaway p {
color: rgba(255, 255, 255, 0.85);
font-size: 1rem;
margin: 0;
flex: 1;
}
.case-takeaway strong {
color: #eac26e;
}
.case-takeaway__btn {
background: linear-gradient(135deg, #eac26e, #ce9f40);
color: #0a2540;
padding: 0.75rem 1.5rem;
border-radius: 8px;
font-weight: 700;
font-size: 0.9rem;
text-decoration: none;
white-space: nowrap;
transition: all 0.3s ease;
}
.case-takeaway__btn:hover {
box-shadow: 0 8px 20px rgba(234, 194, 110, 0.4);
}
.case-sidebar {
position: sticky;
top: 100px;

View file

@ -17,18 +17,9 @@ import CaseLayout from '@layouts/CaseLayout.astro';
>
<div class="case-block" slot="situation">
<p>
Наш клиент стал участником серьёзного ДТП, в котором виновником
был признан другой водитель. Автомобиль клиента получил значительные
повреждения.
</p>
<p>
<strong>Страховая компания по КАСКО выплатила 320 000 ₽,
однако реальная стоимость ущерба составила 600 000 ₽.</strong>
</p>
<p>
Виновник ДТП отказался добровольно возмещать разницу, ссылаясь
на то, что у него есть ОСАГО и все претензии нужно предъявлять
страховым компаниям.
<strong>Страховая по КАСКО выплатила 320 000 ₽, а реальный ущерб составил 600 000 ₽.</strong>
Клиент стал участником серьёзного ДТП, автомобиль получил значительные повреждения.
Виновник отказался добровольно возмещать разницу.
</p>
</div>
@ -92,4 +83,8 @@ import CaseLayout from '@layouts/CaseLayout.astro';
представительство в суде.
</p>
</div>
<div class="case-takeaway" slot="takeaway">
<p><strong>Похожий случай?</strong> Закажите бесплатную консультацию — оценим перспективы вашего дела.</p>
<a href="/contacts" class="case-takeaway__btn">Получить консультацию</a>
</div>
</CaseLayout>

View file

@ -65,7 +65,7 @@ import AdBanner from "@components/base/AdBanner.astro";
<div class="case-block case-block--accent">
<h2 class="case-block__title">
<span class="case-block__icon">🔍</span>
Что было сделано
Наша стратегия защиты
</h2>
<div class="case-block__content">
<div class="case-steps">
@ -116,7 +116,7 @@ import AdBanner from "@components/base/AdBanner.astro";
<div class="case-block">
<h2 class="case-block__title">
<span class="case-block__icon">⚖️</span>
Судебное решение
Результат
</h2>
<div class="case-block__content">
<div class="case-verdict">
@ -138,6 +138,10 @@ import AdBanner from "@components/base/AdBanner.astro";
</div>
</div>
</div>
<div class="case-takeaway">
<p><strong>Похожий случай?</strong> Закажите бесплатную консультацию — оценим перспективы вашего дела.</p>
<a href="/contacts" class="case-takeaway__btn">Получить консультацию</a>
</div>
</article>
<aside class="case-sidebar">

View file

@ -46,17 +46,12 @@ import AdBanner from "@components/base/AdBanner.astro";
</h2>
<div class="case-block__content">
<p>
На перекрёстке произошло столкновение двух автомобилей, в результате
которого пострадал пассажир одного из них. Инспектор ГИБДД изначально
признал виновным нашего клиента.
<strong>Клиенту грозило лишение прав и крупный штраф.</strong>
На перекрёстке произошло столкновение двух автомобилей, в результате которого пострадал пассажир.
Инспектор ГИБДД признал клиента виновным.
</p>
<p>
<strong>Клиенту грозило лишение прав и крупный штраф за нарушение ПДД,
повлёкшее ДТП с пострадавшим.</strong>
</p>
<p>
Однако клиент был уверен в своей невиновности и обратился за
юридической помощью для защиты своих прав.
Клиент обратился за юридической помощью для защиты прав.
</p>
</div>
</div>
@ -64,7 +59,7 @@ import AdBanner from "@components/base/AdBanner.astro";
<div class="case-block case-block--accent">
<h2 class="case-block__title">
<span class="case-block__icon">🔍</span>
Что было сделано
Наша стратегия защиты
</h2>
<div class="case-block__content">
<div class="case-steps">
@ -115,7 +110,7 @@ import AdBanner from "@components/base/AdBanner.astro";
<div class="case-block">
<h2 class="case-block__title">
<span class="case-block__icon">⚖️</span>
Судебное решение
Результат
</h2>
<div class="case-block__content">
<div class="case-verdict">
@ -127,7 +122,7 @@ import AdBanner from "@components/base/AdBanner.astro";
</div>
<p>
Суд, изучив представленные доказательства и видеозаписи,
пришёл к выводу о <strong>недоказанности вины</strong> нашего клиента.
пришёл к выводу о <strong>недоказанности вины</strong> клиента.
</p>
<p>
Дело прекращено за отсутствием состава правонарушения.
@ -136,6 +131,10 @@ import AdBanner from "@components/base/AdBanner.astro";
</div>
</div>
</div>
<div class="case-takeaway">
<p><strong>Похожий случай?</strong> Закажите бесплатную консультацию — оценим перспективы вашего дела.</p>
<a href="/contacts" class="case-takeaway__btn">Получить консультацию</a>
</div>
</article>
<aside class="case-sidebar">

View file

@ -42,20 +42,17 @@ import AdBanner from "@components/base/AdBanner.astro";
<div class="case-block">
<h2 class="case-block__title">
<span class="case-block__icon">📋</span>
Исходная ситуация
Проблема клиента
</h2>
<div class="case-block__content">
<p>
На одном из перекрёстков Сургута произошло столкновение двух автомобилей.
Инспектор ГИБДД составил протокол, в котором признал виновным нашего клиента.
<strong>Клиенту грозило лишение прав и крупный штраф.</strong>
На перекрёстке Сургута произошло столкновение двух автомобилей.
Инспектор ГИБДД составил протокол, признав клиента виновным.
</p>
<p>
<strong>Основанием послужил только рапорт инспектора без надлежащих доказательств.
Клиенту грозило лишение прав и крупный штраф.</strong>
</p>
<p>
Клиент был уверен в своей невиновности и обратился за юридической помощью
для защиты своих прав.
<strong>Основанием послужил только рапорт инспектора</strong> без надлежащих доказательств.
Клиент обратился за юридической помощью для защиты прав.
</p>
</div>
</div>
@ -63,7 +60,7 @@ import AdBanner from "@components/base/AdBanner.astro";
<div class="case-block case-block--accent">
<h2 class="case-block__title">
<span class="case-block__icon">🔍</span>
Что было сделано
Наша стратегия защиты
</h2>
<div class="case-block__content">
<div class="case-steps">
@ -114,7 +111,7 @@ import AdBanner from "@components/base/AdBanner.astro";
<div class="case-block">
<h2 class="case-block__title">
<span class="case-block__icon">⚖️</span>
Судебное решение
Результат
</h2>
<div class="case-block__content">
<div class="case-verdict">
@ -126,7 +123,7 @@ import AdBanner from "@components/base/AdBanner.astro";
</div>
<p>
Суд, изучив материалы дела и представленные доказательства,
пришёл к выводу о <strong>недоказанности вины</strong> нашего клиента.
пришёл к выводу о <strong>недоказанности вины</strong> клиента.
</p>
<p>
Дело прекращено за отсутствием состава правонарушения.
@ -135,6 +132,10 @@ import AdBanner from "@components/base/AdBanner.astro";
</div>
</div>
</div>
<div class="case-takeaway">
<p><strong>Похожий случай?</strong> Закажите бесплатную консультацию — оценим перспективы вашего дела.</p>
<a href="/contacts" class="case-takeaway__btn">Получить консультацию</a>
</div>
</article>
<aside class="case-sidebar">

View file

@ -42,21 +42,16 @@ import AdBanner from "@components/base/AdBanner.astro";
<div class="case-block">
<h2 class="case-block__title">
<span class="case-block__icon">📋</span>
Исходная ситуация
Проблема клиента
</h2>
<div class="case-block__content">
<p>
На одном из перекрёстков Сургута произошло ДТП, в результате
которого наш клиент получил серьёзные травмы. Виновник скрылся с места
происшествия, но был установлен позже.
<strong>Клиент понёс значительные расходы на лечение.</strong>
На перекрёстке Сургута произошло ДТП, в котором клиент получил серьёзные травмы.
Виновник скрылся, но был установлен позже.
</p>
<p>
<strong>Клиент понёс значительные расходы на лечение и реабилитацию.
Виновник отказался возмещать ущерб добровольно.</strong>
</p>
<p>
После нескольких месяцев безуспешных переговоров клиент обратился
за юридической помощью.
Виновник отказался возмещать ущерб добровольно. Клиент обратился за юридической помощью.
</p>
</div>
</div>
@ -64,7 +59,7 @@ import AdBanner from "@components/base/AdBanner.astro";
<div class="case-block case-block--accent">
<h2 class="case-block__title">
<span class="case-block__icon">🔍</span>
Что было сделано
Наша стратегия защиты
</h2>
<div class="case-block__content">
<div class="case-steps">
@ -112,7 +107,7 @@ import AdBanner from "@components/base/AdBanner.astro";
<div class="case-block">
<h2 class="case-block__title">
<span class="case-block__icon">⚖️</span>
Судебное решение
Результат
</h2>
<div class="case-block__content">
<div class="case-verdict">
@ -132,6 +127,10 @@ import AdBanner from "@components/base/AdBanner.astro";
</div>
</div>
</div>
<div class="case-takeaway">
<p><strong>Похожий случай?</strong> Закажите бесплатную консультацию — оценим перспективы вашего дела.</p>
<a href="/contacts" class="case-takeaway__btn">Получить консультацию</a>
</div>
</article>
<aside class="case-sidebar">

View file

@ -46,17 +46,13 @@ import AdBanner from "@components/base/AdBanner.astro";
</h2>
<div class="case-block__content">
<p>
Автоматическая камера зафиксировала выезд на полосу встречного
движения. Владельцу автомобиля пришло уведомление о штрафе
и лишении прав на 6 месяцев.
<strong>Владельцу автомобиля грозило лишение прав на 6 месяцев.</strong>
Автоматическая камера зафиксировала выезд на полосу встречного движения.
Пришло уведомление о штрафе и лишении прав.
</p>
<p>
<strong>Проблема заключалась в том, что в момент нарушения
за рулём находился не владелец автомобиля, а его знакомый.</strong>
</p>
<p>
Владелец обратился за помощью, чтобы доказать свою невиновность
и избежать лишения прав.
<strong>Проблема: в момент нарушения за рулём находился не владелец, а его знакомый.</strong>
Владелец обратился за помощью, чтобы доказать невиновность и избежать лишения прав.
</p>
</div>
</div>
@ -64,7 +60,7 @@ import AdBanner from "@components/base/AdBanner.astro";
<div class="case-block case-block--accent">
<h2 class="case-block__title">
<span class="case-block__icon">🔍</span>
Что было сделано
Наша стратегия защиты
</h2>
<div class="case-block__content">
<div class="case-steps">
@ -115,7 +111,7 @@ import AdBanner from "@components/base/AdBanner.astro";
<div class="case-block">
<h2 class="case-block__title">
<span class="case-block__icon">⚖️</span>
Судебное решение
Результат
</h2>
<div class="case-block__content">
<div class="case-verdict">
@ -136,6 +132,10 @@ import AdBanner from "@components/base/AdBanner.astro";
</div>
</div>
</div>
<div class="case-takeaway">
<p><strong>Похожий случай?</strong> Закажите бесплатную консультацию — оценим перспективы вашего дела.</p>
<a href="/contacts" class="case-takeaway__btn">Получить консультацию</a>
</div>
</article>
<aside class="case-sidebar">

View file

@ -42,20 +42,16 @@ import AdBanner from "@components/base/AdBanner.astro";
<div class="case-block">
<h2 class="case-block__title">
<span class="case-block__icon">📋</span>
Исходная ситуация
Проблема клиента
</h2>
<div class="case-block__content">
<p>
Наш клиент попал в серьёзное ДТП, в результате которого его автомобиль
получил значительные повреждения. Страховая компания провела экспертизу,
однако оценка ущерба оказалась занижена почти в 5 раз.
<strong>Страховая занизила выплату в 5 раз.</strong>
Клиент попал в серьёзное ДТП, автомобиль получил значительные повреждения.
Страховая провела экспертизу и выплатила только 120 000 ₽.
</p>
<p>
<strong>Реальная стоимость ущерба составила 570 000 ₽, а страховая выплатила только 120 000 ₽.</strong>
</p>
<p>
Клиент обратился за помощью, когда исчерпал все досудебные способы
урегулирования спора со страховой компанией.
Реальная стоимость ущерба составила 570 000 ₽. Клиент обратился за помощью после исчерпания досудебных способов.
</p>
</div>
</div>
@ -63,7 +59,7 @@ import AdBanner from "@components/base/AdBanner.astro";
<div class="case-block case-block--accent">
<h2 class="case-block__title">
<span class="case-block__icon">🔍</span>
Что было сделано
Наша стратегия защиты
</h2>
<div class="case-block__content">
<div class="case-steps">
@ -114,7 +110,7 @@ import AdBanner from "@components/base/AdBanner.astro";
<div class="case-block">
<h2 class="case-block__title">
<span class="case-block__icon">⚖️</span>
Судебное решение
Результат
</h2>
<div class="case-block__content">
<div class="case-verdict">
@ -135,6 +131,10 @@ import AdBanner from "@components/base/AdBanner.astro";
</div>
</div>
</div>
<div class="case-takeaway">
<p><strong>Похожий случай?</strong> Закажите бесплатную консультацию — оценим перспективы вашего дела.</p>
<a href="/contacts" class="case-takeaway__btn">Получить консультацию</a>
</div>
</article>
<aside class="case-sidebar">

View file

@ -21,7 +21,7 @@ const isAuthorized = false; // Измените на true, чтобы увиде
badgeText="БЕСПЛАТНАЯ КОНСУЛЬТАЦИЯ"
titleWhite="Свяжитесь"
titleGold="с нами"
description="Мы всегда на связи и готовы помочь вам в решении автоспоров. Оставьте заявку или позвоните — первая консультация бесплатно."
description="Первая консультация бесплатно. Ответим в течение 15 минут — юрист поможет решить ваш вопрос."
layout="with-image"
sideImage="/images/contacts/conImg.avif"
sideImageAlt="Автоюрист Сургут"
@ -48,7 +48,7 @@ const isAuthorized = false; // Измените на true, чтобы увиде
<a href={`tel:${COMPANY.phone.replace(/\s/g, '')}`} class="card-link">
{COMPANY.phone}
</a>
<p class="card-description">Звоните в рабочее время</p>
<p class="card-description">Рабочее время: Пн-Пт 9:00-18:00</p>
</div>
<!-- Email -->
@ -93,10 +93,10 @@ const isAuthorized = false; // Измените на true, чтобы увиде
<div class="site-container">
<div class="form-header">
<h2 class="section-title animate-on-scroll" data-animation="fade-up">
Напишите <span class="text-gold">нам</span>
Получите <span class="text-gold">бесплатную консультацию</span>
</h2>
<p class="section-description animate-on-scroll" data-animation="fade-up" data-delay="100">
Опишите вашу ситуацию — мы ответим в ближайшее время
Опишите вашу ситуацию — юрист перезвонит в течение 15 минут
</p>
</div>
@ -168,8 +168,8 @@ const isAuthorized = false; // Измените на true, чтобы увиде
</form>
) : (
<AuthLockBlock
title="Авторизуйтесь, чтобы написать"
description="Чтобы отправить сообщение напрямую юристу, пожалуйста, войдите в аккаунт."
title="Авторизуйтесь для отправки"
description="Для отправки сообщения напрямую юристу войдите в аккаунт."
buttonText="Войдите в аккаунт"
buttonHref="/auth/sign-in"
className="animate-on-scroll"

View file

@ -21,7 +21,7 @@ const ogImage = `${SITE_URL}/images/home/avtourist-surgut.avif`;
badgeText="ЗАЩИТА ВОДИТЕЛЕЙ В СУРГУТЕ"
titleWhite="Защитите свои права"
titleGold="и водительское удостоверение"
description="Профессиональная юридическая помощь при ДТП, спорах с ГИБДД и страховыми компаниями. Работаем на результат в судах ХМАО-Югры."
description="95% дел выиграно. Юридическая помощь при ДТП, спорах с ГИБДД и страховыми. Среднее время возврата прав — 3 месяца."
btnText="Бесплатная консультация"
modalTarget="consultation-modal"
btnSecondary="Мои услуги"

View file

@ -15,9 +15,9 @@ import FaqList from '@components/services/FaqList.astro';
// Custom data for accident help service
const aboutTabsData = {
problem: {
title: "Первые минуты после ДТП решают всё",
description: "В первые минуты после ДТП <strong>водители в стрессе</strong> и часто допускают ошибки: признают вину, неправильно оформляют документы, <strong>не фиксируют доказательства</strong>. Эти ошибки потом <strong>невозможно исправить</strong> в суде.",
description2: "Наш юрист <strong>оперативно выезжает на место ДТП</strong>, фиксирует нарушения второй стороны, защищает вас при опросе инспектором и <strong>помогает правильно оформить документы</strong>. Это спасает от лишения прав и несправедливой вины.",
title: "80% дел решается на месте ДТП",
description: "В первые минуты после ДТП водители в стрессе и допускают ошибки: признают вину, неправильно оформляют документы, не фиксируют доказательства. Эти ошибки потом невозможно исправить в суде.",
description2: "Юрист оперативно выезжает на место ДТП, фиксирует нарушения второй стороны, защищает при опросе инспектором и помогает правильно оформить документы. Это спасает от лишения прав и несправедливой вины.",
items: [
"Признание вины под давлением на месте ДТП",
"Неправильное оформление документов",
@ -29,9 +29,9 @@ const aboutTabsData = {
barWidth: 80
},
approach: {
title: "Оперативная защита на месте",
description: "Мы обеспечиваем <strong>юридическую защиту с первых минут</strong> после ДТП. Юрист выезжает на место, контролирует правильность оформления, <strong>фиксирует нарушения второй стороны</strong> и защищает ваши права при общении с инспекторами.",
description2: "Наш опыт — это <strong>сотни спасённых дел</strong> благодаря присутствию на месте ДТП. Мы знаем, <strong>как правильно зафиксировать</strong> доказательства и защитить вас от несправедливой вины.",
title: "Выезд юриста на место ДТП",
description: "Юрист обеспечивает защиту с первых минут после ДТП. Выезжает на место, контролирует правильность оформления, фиксирует нарушения второй стороны и защищает права при общении с инспекторами.",
description2: "Опыт юриста — сотни спасённых дел благодаря присутствию на месте ДТП. Знание методов правильной фиксации доказательств и защиты от несправедливой вины.",
items: [
{ icon: "🚗", title: "Оперативный выезд", desc: "Приезжаем на место ДТП в течение 30 минут" },
{ icon: "📋", title: "Фиксация нарушений", desc: "Записываем все нарушения второй стороны" },
@ -49,9 +49,9 @@ const aboutTabsData = {
]
},
guarantees: {
title: "Работаем на результат",
description: "Мы обеспечиваем <strong>максимальную защиту</strong> уже на месте ДТП. После выезда юриста честно скажем, <strong>как правильно действовать</strong> и что делать дальше.",
description2: "Работаем <strong>без предоплаты</strong> — оплата только после результата. Если защита на месте не помогла — <strong>предложим стратегию</strong> на следующих этапах.",
title: "Защита на месте и дальше",
description: "Юрист обеспечивает максимальную защиту на месте ДТП. После выезда честно говорит, как правильно действовать и что делать дальше.",
description2: "Работа без предоплаты — оплата только после результата. Если защита на месте не помогла — предлагается стратегия на следующих этапах.",
items: [
{ title: "Оперативный выезд", desc: "Приезжаем на место в течение 30 минут" },
{ title: "Оплата за результат", desc: "Платите только после защиты на месте" },

View file

@ -15,9 +15,9 @@ import FaqList from '@components/services/FaqList.astro';
// Custom data for appeal service
const aboutTabsData = {
problem: {
title: "Судебное решение — ещё не конец",
description: "Каждое второе постановление о лишении прав <strong>выносится с нарушениями</strong>. Судьи допускают ошибки в процедуре, неправильно применяют нормы права, <strong>игнорируют доводы защиты</strong>. Это даёт реальный шанс на отмену.",
description2: "Апелляционная инстанция <strong>пересматривает дело полностью</strong>. Мы используем эту возможность: находим ошибки суда первой инстанции, представляем новые доказательства, <strong>добиваемся отмены решения</strong>.",
title: "50% решений суда содержат ошибки",
description: "Каждое второе постановление о лишении прав выносится с нарушениями. Судьи допускают ошибки в процедуре, неправильно применяют нормы права, игнорируют доводы защиты. Это даёт шанс на отмену.",
description2: "Апелляционная инстанция пересматривает дело полностью. Юрист использует эту возможность: находит ошибки суда первой инстанции, представляет новые доказательства, добивается отмены решения.",
items: [
"Неправильное применение норм материального права",
"Нарушение норм процессуального права судом",
@ -29,9 +29,9 @@ const aboutTabsData = {
barWidth: 50
},
approach: {
title: "Комплексный обжалование решения",
description: "Мы не просто подаём жалобу — мы <strong>перестраиваем всю защиту</strong>. Анализируем решение суда, находим каждое нарушение, формируем <strong>мотивированную апелляцию</strong>.",
description2: "Наш опыт в апелляционных судах Сургута и ХМАО позволяет <strong>знать практику</strong> и использовать её для защиты ваших интересов. Каждое дело ведёт <strong>опытный апелляционный юрист</strong>.",
title: "Подготовка и подача апелляции",
description: "Юрист не просто подаёт жалобу — перестраивает всю защиту. Анализирует решение суда, находит каждое нарушение, формирует мотивированную апелляцию.",
description2: "Опыт юриста в апелляционных судах Сургута и ХМАО позволяет знать практику и использовать её для защиты интересов. Каждое дело ведёт опытный апелляционный юрист.",
items: [
{ icon: "📋", title: "Анализ решения", desc: "Изучаем каждый пункт постановления суда" },
{ icon: "⚖️", title: "Поиск ошибок", desc: "Находим нарушения материального и процессуального права" },
@ -49,14 +49,14 @@ const aboutTabsData = {
]
},
guarantees: {
title: "Работаем на отмену решения",
description: "Мы берёмся только за дела с <strong>реальными основаниями для отмены</strong>. После анализа решения суда честно скажем о <strong>перспективах апелляции</strong>.",
description2: "Если суд первой инстанции допустил нарушения — мы <strong>добьёмся отмены</strong>. Если нет — предложим другие варианты защиты. <strong>Оплата только при результате</strong>.",
title: "Оплата только за результат",
description: "Юрист берётся только за дела с реальными основаниями для отмены. После анализа решения суда честно говорит о перспективах апелляции.",
description2: "Если суд первой инстанции допустил нарушения — юрист добивается отмены. Если нет — предлагаются другие варианты защиты. Оплата только при результате.",
items: [
{ title: "Бесплатный анализ", desc: "Анализируем решение суда и оцениваем шансы" },
{ title: "Оплата за результат", desc: "Платите только после отмены постановления" },
{ title: "Договор", desc: "Фиксируем все условия юридически" },
{ title: "Возврат средств", desc: "Если апелляция проиграна — вернём деньги" }
{ title: "Возврат средств", desc: "Если апелляция проиграна —деньги возвращаются" }
]
}
};

View file

@ -15,9 +15,9 @@ import FaqList from '@components/services/FaqList.astro';
// Custom data for blame appeal service
const aboutTabsData = {
problem: {
title: "Вина в ДТП — не всегда очевидна",
description: "Часто <strong>виновником назначают не того</strong>, кто реально нарушил. Инспекторы ГИБДД не всегда разбираются в обстоятельствах, <strong>игнорируют показания свидетелей</strong> и видеозаписи. Это приводит к <strong>несправедливому определению вины</strong>.",
description2: "Даже если вас признали виновным, <strong>это можно оспорить</strong>. Мы анализируем все материалы ДТП, находим доказательства невиновности и <strong>добиваемся пересмотра вины</strong>.",
title: "60% определений вины содержат ошибки",
description: "Виновником часто назначают не того, кто реально нарушил. Инспекторы ГИБДД не разбираются в обстоятельствах, игнорируют показания свидетелей и видеозаписи. Это приводит к несправедливому определению вины.",
description2: "Даже если признали виновным — это можно оспорить. Юрист анализирует все материалы ДТП, находит доказательства невиновности и добивается пересмотра вины.",
items: [
"Неправильное определение виновника инспектором",
"Игнорирование видеозаписей и показаний",
@ -29,9 +29,9 @@ const aboutTabsData = {
barWidth: 60
},
approach: {
title: "Доказываем вашу невиновность",
description: "Мы проводим <strong>комплексный анализ обстоятельств ДТП</strong>: изучаем видеозаписи, опрашиваем свидетелей, заказываем <strong>автотехническую экспертизу</strong>. Строим линию защиты, которая <strong>доказывает вашу невиновность</strong> или снижает степень ответственности.",
description2: "Наш опыт — это <strong>сотни успешно оспоренных определений</strong> вины. Мы знаем, <strong>как правильно собрать доказательства</strong> и представить их в ГИБДД и суде.",
title: "Доказательство невиновности",
description: "Юрист проводит комплексный анализ обстоятельств ДТП: изучает видеозаписи, опрашивает свидетелей, заказывает автотехническую экспертизу. Строит линию защиты для доказательства невиновности.",
description2: "Опыт юриста — сотни успешно оспоренных определений вины. Знание методов сбора доказательств и представления их в ГИБДД и суде.",
items: [
{ icon: "📋", title: "Анализ видеозаписей", desc: "Изучаем записи с регистраторов и камер для доказательств" },
{ icon: "⚖️", title: "Допрос свидетелей", desc: "Находим и опрашиваем свидетелей для подтверждения позиции" },
@ -49,14 +49,14 @@ const aboutTabsData = {
]
},
guarantees: {
title: "Работаем на результат",
description: "Мы берёмся только за дела с <strong>реальными доказательствами невиновности</strong>. После анализа обстоятельств честно скажем, <strong>есть ли шансы</strong> на отмену вины.",
description2: "Работаем <strong>без предоплаты</strong> — оплата только после отмены определения вины. Если не выиграем — <strong>вернём деньги</strong>.",
title: "Оплата только за результат",
description: "Юрист берётся только за дела с реальными доказательствами невиновности. После анализа обстоятельств честно говорит, есть ли шансы на отмену вины.",
description2: "Работа без предоплаты — оплата только после отмены определения вины. Если не выиграно — возвращаются деньги.",
items: [
{ title: "Бесплатный анализ", desc: "Анализируем обстоятельства и доказательства на консультации" },
{ title: "Оплата за результат", desc: "Платите только после отмены определения вины" },
{ title: "Договор", desc: "Фиксируем все условия юридически" },
{ title: "Возврат средств", desc: "Если дело проиграно — деньги ваши" }
{ title: "Возврат средств", desc: "Если дело проиграно —деньги возвращаются" }
]
}
};

View file

@ -15,9 +15,9 @@ import FaqList from '@components/services/FaqList.astro';
// Custom data for CASCO disputes service
const aboutTabsData = {
problem: {
title: "КАСКО — не гарантия выплаты",
description: "Многие водители считают, что <strong>полис КАСКО — это полная защита</strong>. Но страховые компании используют <strong>десятки оснований для отказа</strong>: нарушение сроков обращения, неправильные действия при ДТП, <strong>исключения из правил</strong>.",
description2: "По статистике, <strong>до 50% отказов по КАСКО</strong> незаконны или могут быть оспорены. Мы анализируем договор, находим <strong>незаконные пункты отказа</strong> и добиваемся полной выплаты по полису.",
title: "50% отказов по КАСКО незаконны",
description: "Полис КАСКО не гарантирует выплату. Страховые компании используют десятки оснований для отказа: нарушение сроков обращения, неправильные действия при ДТП, исключения из правил.",
description2: "До 50% отказов по КАСКО незаконны или могут быть оспорены. Юрист анализирует договор, находит незаконные пункты отказа и добивается полной выплаты по полису.",
items: [
"Необоснованный отказ в страховом случае",
"Занижение суммы страхового возмещения",
@ -29,9 +29,9 @@ const aboutTabsData = {
barWidth: 50
},
approach: {
title: "Комплексная защита по КАСКО",
description: "Мы проводим <strong>полный анализ договора КАСКО</strong>, правил страхования и обстоятельств отказа. Находим <strong>незаконные пункты</strong>, несоответствия с законодательством и <strong>строим линию защиты</strong> для получения выплаты.",
description2: "Наш опыт — это <strong>сотни выигранных дел</strong> против крупных страховых. Мы знаем их методы отказов и используем <strong>законные механизмы</strong> для получения полной выплаты.",
title: "Анализ договора и оспаривание",
description: "Юрист проводит полный анализ договора КАСКО, правил страхования и обстоятельств отказа. Находит незаконные пункты, несоответствия с законодательством и строит линию защиты.",
description2: "Опыт юриста — сотни выигранных дел против крупных страховых. Знание методов отказов и использование законных механизмов для получения полной выплаты.",
items: [
{ icon: "📋", title: "Анализ договора", desc: "Изучаем все условия, правила, исключения из КАСКО" },
{ icon: "⚖️", title: "Оспаривание отказа", desc: "Находим незаконные основания и оспариваем" },
@ -49,14 +49,14 @@ const aboutTabsData = {
]
},
guarantees: {
title: "Работаем на результат",
description: "Мы берёмся только за дела с <strong>реальными перспективами</strong>. После анализа договора и отказа честно скажем, <strong>сколько можно взыскать</strong> от страховой.",
description2: "Работаем <strong>без предоплаты</strong> — оплата только после получения выплаты. Если не выиграем — <strong>вернём деньги</strong> за наши услуги.",
title: "Оплата только за результат",
description: "Юрист берётся только за дела с реальными перспективами. После анализа догов<D0BE><D0B2>ра и отказа честно говорит, сколько можно взыскать от страховой.",
description2: "Работа без предоплаты — оплата только после получения выплаты. Если не выиграно — возвращаются деньги за услуги.",
items: [
{ title: "Бесплатный анализ", desc: "Анализируем договор и отказ на первой консультации" },
{ title: "Оплата за результат", desc: "Платите только после получения выплаты от страховой" },
{ title: "Договор", desc: "Фиксируем все условия юридически" },
{ title: "Возврат средств", desc: "Если дело проиграно — деньги ваши" }
{ title: "Возврат средств", desc: "Если дело проиграно —деньги возвращаются" }
]
}
};

View file

@ -15,9 +15,9 @@ import FaqList from '@components/services/FaqList.astro';
// Custom data for court representation service
const aboutTabsData = {
problem: {
title: "Автомобильные споры в суде — нужна защита",
description: "Споры по ДТП, страховым выплатам, возврату прав — всё решается <strong>в суде</strong>. Без грамотного представительства вы рискуете <strong>потерять деньги, время и права</strong>. Судья разбирается в законе, а не в автомобильных тонкостях — <strong>ваш юрист объяснит</strong> и докажет.",
description2: "Многие водители <strong>проигрывают дела</strong> из-за того, что не знают процедуру, сроки и нюансы автомобильного права. Мы берём на себя <strong>всю юридическую работу</strong>, чтобы вы получили справедливый результат.",
title: "85% автодел проиграно без юриста",
description: "Споры по ДТП, страховым выплатам, возврату прав — всё решается в суде. Без грамотного представительства водитель рискует потерять деньги, время и права. Судья разбирается в законе, а не в автомобильных тонкостях — юрист объяснит и докажет.",
description2: "Многие водители проигрывают дела из-за того, что не знают процедуру, сроки и нюансы автомобильного права. Юрист берёт на себя всю юридическую работу для справедливого результата.",
items: [
"Пропуск сроков обжалования по ДТП",
"Ошибки в иске к страховой",
@ -29,9 +29,9 @@ const aboutTabsData = {
barWidth: 85
},
approach: {
title: "Специализация на автомобильных спорах",
description: "Мы <strong>полностью ведём ваше автомобильное дело</strong>: от подготовки искового заявления до исполнения решения суда. Знаем <strong>все нюансы ДТП, ОСАГО, КАСКО, споров по правам</strong> и используем это для вашего результата.",
description2: "Наш опыт — это <strong>сотни выигранных автомобильных дел</strong> в судах Сургута и ХМАО. Мы знаем <strong>практику судей по автоделам</strong> и строим защиту на основе реальных прецедентов.",
title: "Ведение автодела в суде",
description: "Юрист полностью ведёт автомобильное дело: от подготовки искового заявления до исполнения решения суда. Знание всех нюансов ДТП, ОСАГО, КАСКО, споров по правам используется для результата.",
description2: "Опыт юриста — сотни выигранных автомобильных дел в судах Сургута и ХМАО. Знание практики судей по автоделам и построение защиты на основе реальных прецедентов.",
items: [
{ icon: "📋", title: "Подготовка автодокументов", desc: "Иск по ДТП, ходатайства, отзывы — всё безупречно" },
{ icon: "⚖️", title: "Автоправовая стратегия", desc: "Линия защиты с учётом практики по автоделам" },
@ -49,9 +49,9 @@ const aboutTabsData = {
]
},
guarantees: {
title: "Работаем на результат с гарантией",
description: "Мы берёмся только за автомобильные дела с <strong>реальными перспективами успеха</strong>. После анализа ситуации честно скажем, <strong>каковы ваши шансы</strong> и что нужно для победы в суде.",
description2: "Работаем <strong>по договору</strong> с фиксацией всех условий. Если автодело проиграно — <strong>возвращаем оплату</strong> за наши услуги.",
title: "Гарантия возврата при неу<D0B5><D183>аче",
description: "Юрист берётся только за автомобильные дела с реальными перспективами успеха. После анализа ситуации честно говорит о шансах и что нужно для победы в суде.",
description2: "Работа по договору с фиксацией всех условий. Если автодело проиграно — возвращается оплата за услуги.",
items: [
{ title: "Бесплатная консультация", desc: "Оцениваем перспективы автодела на первой встрече" },
{ title: "Прозрачные цены", desc: "Фиксированная стоимость без скрытых платежей" },

View file

@ -15,9 +15,9 @@ import FaqList from '@components/services/FaqList.astro';
// Custom data for damages recovery service
const aboutTabsData = {
problem: {
title: "Страховой выплаты недостаточно",
description: "Даже когда страховая выплатила по ОСАГО, <strong>сумма часто не покрывает реальный ущерб</strong>. Максимальная выплата по ОСАГО — <strong>400 000 ₽</strong>, а реальный ремонт может стоить значительно дороже. <strong>Разницу можно взыскать с виновника ДТП</strong>.",
description2: "Многие водители <strong>не знают о своём праве</strong> на взыскание разницы с виновника. Мы помогаем <strong>рассчитать полный ущерб</strong>, составить претензию и взыскать <strong>всю сумму через суд</strong>.",
title: "ОСАГО покрывает только 400 000 ₽",
description: "Страховая выплатила по ОСАГО, но сумма не покрывает реальный ущерб. Максимальная выплата по ОСАГО — 400 000 ₽, а реальный ремонт может стоить значительно дороже. Разница взыскивается с виновника ДТП.",
description2: "Многие водители не знают о праве на взыскание разницы с виновника. Юрист помогает рассчитать полный ущерб, составить претензию и взыскать всю сумму через суд.",
items: [
"Выплата ОСАГО не покрывает полный ущерб",
"Виновник отказывается добровольно платить",
@ -29,9 +29,9 @@ const aboutTabsData = {
barWidth: 40
},
approach: {
title: "Полное взыскание с виновника",
description: "Мы проводим <strong>независимую экспертизу</strong> для определения реальной стоимости ремонта. <strong>Рассчитываем разницу</strong> между выплатой ОСАГО и полным ущербом. Составляем <strong>претензию виновнику</strong> и подаём иск в суд.",
description2: "Наш опыт — это <strong>сотни успешно взысканных дел</strong>. Мы знаем, как <strong>правильно рассчитать ущерб</strong>, собрать доказательства и <strong>добиться полной компенсации</strong> от виновника ДТП.",
title: "Взыскание разницы с виновника",
description: "Юрист проводит независимую экспертизу для определения реальной стоимости ремонта. Рассчитывает разницу между выплатой ОСАГО и полным ущербом. Составляет претензию виновнику и подаёт иск в суд.",
description2: "Опыт юриста — сотни успешно взысканных дел. Знание методов расчёта ущерба, сбора доказательств и добивания полной компенсации от виновника ДТП.",
items: [
{ icon: "📋", title: "Расчёт полного ущерба", desc: "Определяем реальную стоимость ремонта автомобиля" },
{ icon: "⚖️", title: "Претензия виновнику", desc: "Составляем досудебную претензию с требованием доплаты" },
@ -49,14 +49,14 @@ const aboutTabsData = {
]
},
guarantees: {
title: "Работаем на результат",
description: "Мы берёмся только за дела с <strong>реальными перспективами взыскания</strong>. После анализа ситуации честно скажем, <strong>сколько можно взыскать</strong> с виновника ДТП.",
description2: "Работаем <strong>без предоплаты</strong> — оплата только после получения взыскания. Если не выиграем — <strong>вернём деньги</strong> за наши услуги.",
title: "Оплата только за результат",
description: "Юрист берётся только за дела с <20><>еальными перспективами взыскания. После анализа ситуации честно говорит, сколько можно взыскать с виновника ДТП.",
description2: "Работа без предоплаты — оплата только после получения взыскания. Если не выиграно — возвращаются деньги за услуги.",
items: [
{ title: "Бесплатный анализ", desc: "Оцениваем перспективы взыскания на консультации" },
{ title: "Оплата за результат", desc: "Платите только после взыскания с виновника" },
{ title: "Договор", desc: "Фиксируем все условия юридически" },
{ title: "Возврат средств", desc: "Если дело проиграно — деньги ваши" }
{ title: "Возврат средств", desc: "Если дело проиграно —деньги возвращаются" }
]
}
};

View file

@ -13,9 +13,9 @@ import FaqList from '@components/services/FaqList.astro';
const aboutTabsData = {
problem: {
title: "Постановление — не приговор",
description: "Постановления по делам об административных правонарушениях <strong>часто содержат ошибки</strong>: неправильно квалифицируют действия, игнорируют смягчающие обстоятельства, <strong>назначают чрезмерное наказание</strong>.",
description2: "Обжалование постановления в суде — это <strong>реальный шанс отменить</strong> или изменить несправедливое решение. Мы используем все законные основания для защиты ваших прав.",
title: "40% постановлений содержат ошибки",
description: "Постановления по делам об административных правонарушениях часто содержат ошибки: неправильно квалифицируют действия, игнорируют смягчающие обстоятельства, назначают чрезмерное наказание.",
description2: "Обжалование постановления в суде — реальный шанс отменить или изменить несправедливое решение. Юрист использует все законные основания для защиты прав.",
items: [
"Неправильная квалификация правонарушения",
"Нарушение процедуры составления протокола",
@ -27,13 +27,13 @@ const aboutTabsData = {
barWidth: 40
},
approach: {
title: "Профессиональное обжалование",
description: "Мы <strong>анализируем каждое постановление</strong> на наличие нарушений: изучаем протокол, материалы дела, <strong>ищем ошибки в квалификации</strong> и процедуре.",
description2: "Наш опыт позволяет <strong>знать типичные ошибки</strong> инспекторов и судей, использовать это для <strong>отмены постановлений</strong> в суде.",
title: "Анализ и обжалование",
description: "Юрист анализирует каждое постановление на наличие нарушений: изучает протокол, материалы дела, ищет ошибки в квалификации и процедуре.",
description2: "Опыт юриста позволяет знать типичные ошибки инспекторов и судей, использовать это для отмены постановлений в суде.",
items: [
{ icon: "📋", title: "Анализ постановления", desc: "Изучаем документ на ошибки и нарушения" },
{ icon: "⚖️", title: "Подготовка жалобы", desc: "Составляем мотивированную жалобу в суд" },
{ icon: "👨‍⚖️", title: "Защита в суде", desc: "Представляем ваши интересы при рассмотрении жалобы" }
{ icon: "👨‍⚖️", title: "Защита в суде", desc: "Представляем интересы при рассмотрении жалобы" }
],
steps: ["Анализ постановления", "Подготовка жалобы", "Подача в суд", "Рассмотрение дела", "Отмена/изменение постановления"]
},
@ -47,9 +47,9 @@ const aboutTabsData = {
]
},
guarantees: {
title: "Работаем на результат",
description: "Мы берёмся только за дела с <strong>реальными основаниями для отмены</strong>. После анализа постановления честно скажем о <strong>перспективах обжалования</strong>.",
description2: "Если есть нарушения — мы <strong>добьёмся отмены</strong>. Если нет — предложим альтернативные способы защиты. <strong>Оплата только при результате</strong>.",
title: "Оплата только за результат",
description: "Юрист берётся только за дела с реальными основаниями для отмены. После анализа постановления честно говорит о перспективах обжалования.",
description2: "Если есть нарушения — юрист добивается отмены. Если нет — предлагает альтернативные способы защиты. Оплата только при результате.",
items: [
{ title: "Бесплатный анализ", desc: "Анализируем постановление и оцениваем шансы" },
{ title: "Оплата за результат", desc: "Платите только после отмены постановления" },

View file

@ -15,9 +15,9 @@ import FaqList from '@components/services/FaqList.astro';
// Custom data for gibdd review service
const aboutTabsData = {
problem: {
title: "Разбор в ГИБДД — ключевой момент",
description: "Разбор ДТП в ГИБДД — это <strong>первый официальный этап</strong>, где определяется виновник. Многие водители <strong>приходят на разбор без подготовки</strong>: не знают своих прав, не могут правильно изложить обстоятельства, <strong>соглашаются с выводами инспектора</strong>.",
description2: "Юрист на разборе <strong>защищает ваши интересы</strong>: представляет доказательства, опровергает доводы второй стороны, <strong>не допускает необоснованного определения вины</strong>. Это спасает от лишения прав и несправедливых последствий.",
title: "Разбор в ГИБДД — первый шанс защиты",
description: "Разбор ДТП в ГИБДД — первый официальный этап, где определяется виновник. 70% водителей приходят на разбор без подготовки: не знают прав, соглашаются с выводами инспектора.",
description2: "Юрист на разборе защищает интересы: представляет доказательства, опровергает доводы второй стороны, не допускает необоснованного определения вины. Это спасает от лишения прав.",
items: [
"Отсутствие подготовки к разбору в ГИБДД",
"Согласие с выводами инспектора без анализа",
@ -29,12 +29,12 @@ const aboutTabsData = {
barWidth: 70
},
approach: {
title: "Подготовка и защита на разборе",
description: "Мы <strong>тщательно готовимся к разбору</strong>: анализируем материалы ДТП, собираем доказательства, <strong>формируем позицию защиты</strong>. На разборе представляем ваши интересы, <strong>опровергаем доводы второй стороны</strong> и добиваемся справедливого определения.",
description2: "Наш опыт — это <strong>сотни успешных разборов</strong> в ГИБДД. Мы знаем, <strong>как правильно говорить с инспектором</strong>, какие доказательства представить и <strong>как защитить ваши права</strong>.",
title: "Подготовка и участие в разборе",
description: "Юрист тщательно готовится к разбору: анализирует материалы ДТП, собирает доказательства, формирует позицию защиты. На разборе представляет интересы, опровергает доводы второй стороны.",
description2: "Опыт юриста — сотни успешных разборов в ГИБДД. Знание методов работы инспекторов, какие доказательства представить и как защитить права водителя.",
items: [
{ icon: "📋", title: "Подготовка позиции", desc: "Анализируем материалы ДТП и формируем линию защиты" },
{ icon: "⚖️", title: "Участие в разборе", desc: "Представляем ваши интересы и доказываем позицию" },
{ icon: "⚖️", title: "Участие в разборе", desc: "Представляем интересы и доказываем позицию" },
{ icon: "📹", title: "Представление доказательств", desc: "Показываем видеозаписи, показания свидетелей, экспертизу" }
],
steps: ["Подготовка", "Сбор доказательств", "Позиция защиты", "Разбор в ГИБДД", "Справедливое определение"]
@ -49,9 +49,9 @@ const aboutTabsData = {
]
},
guarantees: {
title: "Работаем на результат",
description: "Мы берёмся только за дела с <strong>реальными доказательствами</strong>. После анализа материалов честно скажем, <strong>как защитить ваши интересы</strong> на разборе.",
description2: "Работаем <strong>без предоплаты</strong> — оплата только после справедливого определения на разборе. Если не защитим — <strong>предложим стратегию обжалования</strong>.",
title: "Оплата только за результат",
description: "Юрист берётся только за дела с реальными доказательствами. После анализа материалов честно говорит, как защитить интересы на разборе.",
description2: "Работа без предоплаты — оплата только после справедливого определения. Если определение не в пользу — юрист предлагает стратегию обжалования.",
items: [
{ title: "Бесплатная подготовка", desc: "Анализируем материалы и готовим позицию защиты" },
{ title: "Оплата за результат", desc: "Платите только после справедливого определения вины" },

View file

@ -15,13 +15,13 @@ import FaqList from '@components/services/FaqList.astro';
// Custom data for protocol defense service
const aboutTabsData = {
problem: {
title: "Протокол составлен — но это не конец",
description: "После составления протокола многие водители <strong>сдаются и считают дело проигранным</strong>. Но именно на этом этапе можно найти <strong>критические нарушения</strong>, которые станут основанием для прекращения дела.",
description2: "Инспекторы допускают ошибки в <strong>каждом третьем протоколе</strong>: неправильная формулировка, отсутствие подписи, нарушение порядка составления. <strong>Грамотный анализ протокола — ключ к защите</strong>.",
title: "40% протоколов содержат нарушения",
description: "После составления протокола водители сдаются и считают дело проигранным. Но именно на этом этапе можно найти критические нарушения, которые станут основанием для прекращения дела.",
description2: "Инспекторы допускают ошибки в каждом третьем протоколе: неправильная формулировка, отсутствие подписи, нарушение порядка составления. Грамотный анализ протокола — ключ к защите.",
items: [
"Ошибки в заполнении и формулировках протокола",
"Нарушение порядка составления и вручения копии",
"Отсутствие обязательных реквитов"
"Отсутствие обязательных реквизов"
],
visualNumber: "40%",
visualLabel: "протоколов содержат нарушения",
@ -29,9 +29,9 @@ const aboutTabsData = {
barWidth: 40
},
approach: {
title: "Детальный аудит протокола",
description: "Мы проводим <strong>построчный анализ</strong> каждого документа. Изучаем протокол, рапорт инспектора, результаты освидетельствования. Ищем <strong>любое процессуальное нарушение</strong>, которое поможет защите.",
description2: "Наша задача — <strong>найти основания для прекращения дела</strong> ещё до суда. Если протокол составлен с нарушениями — дело должно быть прекращено.",
title: "Анализ протокола и поиск нарушений",
description: "Юрист проводит построчный анализ каждого документа. Изучает протокол, рапорт инспектора, результаты освидетельствования. Ищет любое процессуальное нарушение для защиты.",
description2: "Задача юриста — найти основания для прекращения дела до суда. Если протокол составлен с нарушениями — дело должно быть прекращено.",
items: [
{ icon: "📋", title: "Построчный анализ", desc: "Проверяем каждое поле и запись в протоколе" },
{ icon: "⚖️", title: "Поиск нарушений", desc: "Находим процессуальные ошибки инспектора" },
@ -49,9 +49,9 @@ const aboutTabsData = {
]
},
guarantees: {
title: "Работаем на результат",
description: "Мы берёмся только за дела с <strong>реальными перспективами</strong>. После анализа протокола честно скажем о <strong>шансах на прекращение</strong>.",
description2: "Если нарушений в протоколе нет — мы предложим <strong>стратегию защиты на следующих этапах</strong>. Не берём денег за безнадёжные дела.",
title: "Оплата только за результат",
description: "Юрист берётся только за дела с реальными перспективами. После анализа протокола честно говорит о шансах на прекращение.",
description2: "Если нарушений в протоколе нет — юрист предлагает стратегию защиты на следующих этапах. Не берётся за безнадёжные дела.",
items: [
{ title: "Бесплатный анализ", desc: "Анализируем протокол и оцениваем перспективы" },
{ title: "Оплата за результат", desc: "Платите только при прекращении дела" },

View file

@ -15,9 +15,9 @@ import FaqList from '@components/services/FaqList.astro';
// Custom data for OSAGO disputes service
const aboutTabsData = {
problem: {
title: "Страховая занижает выплату — это норма",
description: "По статистике, <strong>до 70% страховых компаний</strong> занижают выплаты по ОСАГО. Они используют методы недооценки ущерба, <strong>отказывают в законных выплатах</strong> или навязывают невыгодные урегулирования без участия юриста.",
description2: "Многие водители <strong>соглашаются с первой выплатой</strong>, не зная что могут получить <strong>полную сумму ущерба</strong>. Мы помогаем взыскать разницу между реальной стоимостью ремонта и тем, что предложила страховая.",
title: "Страховая занижает выплату в 70% случаев",
description: "До 70% страховых компаний занижают выплаты по ОСАГО. Они используют методы недооценки ущерба, отказывают в законных выплатах или навязывают невыгодные урегулирования.",
description2: "Водитель соглашается с первой выплатой и не знает, что может получить полную сумму ущерба. Разница между реальной стоимостью ремонта и выплатой страховой — взыскивается через суд.",
items: [
"Занижение суммы страхового возмещения",
"Необоснованный отказ в выплате",
@ -29,9 +29,9 @@ const aboutTabsData = {
barWidth: 70
},
approach: {
title: "Борьба за полную выплату ущерба",
description: "Мы проводим <strong>независимую экспертизу</strong> ущерба, сравниваем с расчётами страховой. Если выплата занижена — <strong>составляем претензию</strong> и подаём иск в суд. Работаем <strong>до полного получения</strong> справедливой суммы.",
description2: "Наш опыт — это <strong>сотни выигранных дел</strong> против страховых компаний. Мы знаем их методы и используем <strong>законные рычаги</strong> для получения максимальной выплаты.",
title: "Независимая экспертиза и суд",
description: "Юрист проводит независимую экспертизу ущерба, сравнивает с расчётами страховой. Если выплата занижена — составляет претензию и подаёт иск в суд. Работает до получения справедливой суммы.",
description2: "Опыт юриста — сотни выигранных дел против страховых компаний. Знание методов страховых и использование законных рычагов для получения максимальной выплаты.",
items: [
{ icon: "📋", title: "Независимая экспертиза", desc: "Оцениваем реальный ущерб, а не по методике страховой" },
{ icon: "⚖️", title: "Претензионная работа", desc: "Составляем мотивированную претензию в страховую" },
@ -49,14 +49,14 @@ const aboutTabsData = {
]
},
guarantees: {
title: "Работаем на результат",
description: "Мы берёмся только за дела с <strong>реальными перспективами доплаты</strong>. После анализа ситуации честно скажем, <strong>сколько можно взыскать</strong> сверх выплаты страховой.",
description2: "Работаем <strong>без предоплаты</strong> — оплата только после получения доплаты от страховой. Если не выиграем — <strong>вернём деньги</strong>.",
title: "Оплата только за результат",
description: "Юрист берётся только за дела с реальными перспективами доплаты. После анализа ситуации честно говорит, сколько можно взыскать сверх выплаты страховой.",
description2: "Работа без предоплаты — оплата только после получения доплаты от страховой. Если не выиграно — возвращаются деньги за услуги.",
items: [
{ title: "Бесплатный анализ", desc: "Оцениваем перспективы доплаты на консультации" },
{ title: "Оплата за результат", desc: "Платите только после получения доплаты" },
{ title: "Договор", desc: "Фиксируем все условия юридически" },
{ title: "Возврат средств", desc: "Если дело проиграно — деньги ваши" }
{ title: "Возврат средств", desc: "Если дело проиграно —деньги возвращаются" }
]
}
};