Адрес

Богдановича д.14 А

код

<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<title>Ритуальный агент — версия 3 (фикс 160px + карта)</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style>
/* ===== VMK Skin (navy + gold, строгая типографика) ===== */
:root{
  --ink:#19242d; --ink-2:#22303c; --gold:#c3a56b; --gold-2:#b79357;
  --bg:#f6f8fb; --panel:#ffffff; --muted:#5f6a73; --line:#dde3ea;
  --radius:14px; --shadow:0 10px 28px rgba(7,18,30,.06);
}

.agent-page.v3{scroll-behavior:smooth}
.agent-page.vmk-skin{
  font-family: system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  color:var(--ink);
  background:var(--panel);
  padding:40px 16px 64px;
}
.agent-page *{box-sizing:border-box;}
* {outline-offset:2px}
@media (prefers-reduced-motion: reduce){
  *{scroll-behavior:auto; transition:none !important}
}

/* HERO */
.hero{
  max-width:1180px; margin:0 auto 40px;
  display:grid; gap:24px;
  grid-template-columns:minmax(0,2fr) minmax(280px,1fr);
  align-items:start;
}
.badge{
  display:inline-flex; align-items:center; gap:8px;
  padding:6px 14px; border-radius:999px;
  background:#f2f4f7; color:var(--ink);
  border:1px solid var(--line); font-size:13px;
}
.hero h1{
  margin:10px 0 8px; font-size:28px; line-height:1.3; font-weight:800; color:var(--ink-2);
}
.hero-sub{ margin:0 0 12px; color:var(--muted); font-size:15px; }
.hero-bullets{ margin:0 0 16px; padding:0; list-style:none; color:#2b3440; font-size:14px; }
.hero-bullets li{ margin:4px 0; }

.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:10px 18px; border-radius:999px; border:1px solid transparent;
  text-decoration:none; font-weight:800; font-size:13px; cursor:pointer;
  transition:all .2s ease; white-space:normal; text-align:center;
}
.btn-primary{ background:var(--ink); color:#fff; }
.btn-primary:hover{ background:#131b22; box-shadow:var(--shadow); }
.btn-wa{ background:#f5faf6; color:#135c2f; border-color:#cfe6d8; }
.btn-wa:hover{ box-shadow:var(--shadow); }
.btn.lg{ padding:12px 22px; font-size:14px; }
.hero-cta{ display:flex; flex-wrap:wrap; gap:10px; margin:6px 0 8px; align-items:center;}
.hero-num{ font-size:12px; color:var(--muted); }

.hero-note{ font-size:12px; color:var(--muted); }

.hero-side{ display:flex; flex-direction:column; gap:12px; }
.trust-card{
  background:var(--bg); border:1px solid var(--line); border-left:3px solid var(--gold);
  padding:14px; border-radius:var(--radius); box-shadow:var(--shadow); font-size:13px;
}
.trust-card h3{ margin:0 0 8px; font-size:15px; color:var(--ink-2); }
.trust-card ul{ margin:0; padding-left:16px; }

.contact-mini{ font-size:12px; color:var(--muted); padding:10px 12px; border:1px dashed var(--line); border-radius:12px; background:#fbfcfe; }

/* NOW STEPS */
.now-wrap{max-width:1180px;margin:0 auto 24px;padding:14px;border:1px solid var(--line);
  border-left:4px solid var(--gold);border-radius:14px;background:var(--bg);}
.now-wrap h2{margin:0 0 8px;color:var(--ink-2);font-size:20px}
.now-wrap ol{margin:0;padding-left:18px;color:#3a4653;font-size:14px}
.now-wrap .mini-cta{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap}

/* PROOF slider — EXACT 160px media like original grid */
.proof-wrap{max-width:1180px;margin:0 auto 30px;}
.proof-wrap h2{font-size:20px;margin:0 0 6px;color:var(--ink-2)}
.proof-wrap .sub{margin:0 0 12px;color:var(--muted);font-size:13px}
.slider{position:relative;border:1px solid var(--line);border-radius:12px;background:#fbfcfe;overflow:hidden}
.slider .track{display:flex;will-change:transform;transition:transform .35s ease}
.slider .frame{min-width:100%;margin:0;display:flex;flex-direction:column}
.slider .ph{height:160px;display:flex;align-items:center;justify-content:center;background:#e9eef4;color:#5e6b77;font-weight:700}
.slider figcaption{padding:10px;color:#3a4653;font-size:13px}
.snav{position:absolute;top:50%;transform:translateY(-50%);background:#ffffffcc;border:1px solid var(--line);border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:22px;color:#2c3a47;cursor:pointer}
.snav.prev{left:10px}.snav.next{right:10px}
.dots{position:absolute;left:0;right:0;bottom:8px;display:flex;gap:6px;justify-content:center}
.dots button{width:8px;height:8px;border-radius:50%;border:1px solid var(--line);background:#fff;opacity:.7;cursor:pointer}
.dots button.active{background:var(--gold);opacity:1}
.mini-cta{display:flex;gap:10px;margin-top:10px;flex-wrap:wrap}

/* PAINS */
.pains{ max-width:1180px; margin:0 auto 34px; }
.pains h2{ font-size:22px; margin:0 0 12px; color:var(--ink-2); }
.pains-grid{ display:grid; gap:12px; grid-template-columns:repeat(4,minmax(0,1fr)); }
.pains .card{ background:var(--panel); border:1px solid var(--line); border-top:3px solid var(--gold);
  padding:12px; border-radius:12px; box-shadow:0 6px 18px rgba(0,0,0,.03); }
.pains .card h3{ margin:2px 0 6px; font-size:14px; }
.pains .card p{ margin:0; color:var(--muted); font-size:13px; }

/* ANTIFRAUD */
.af-wrap{max-width:1180px;margin:0 auto 30px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fff7ea}
.af-wrap h2{margin:0 0 8px;color:#6b521f;font-size:20px}
.checklist{margin:0 0 8px;padding-left:18px;color:#574a2e}
.tip{font-size:13px;color:#6b521f}

/* SCENARIOS */
.scn-wrap{max-width:1180px;margin:0 auto 32px;}
.scn-wrap h2{font-size:20px;margin:0 0 12px;color:var(--ink-2);}
.scn-grid{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));}
.scn{background:#fbfcfe;border:1px solid var(--line);border-radius:12px;padding:12px;}
.scn h3{margin:2px 0 6px;font-size:14px;color:#2b3440;}
.scn p{margin:0;color:#5f6a73;font-size:13px;}

/* STEPS */
.steps{ max-width:1180px; margin:0 auto 34px; }
.steps h2{ font-size:20px; margin:0 0 12px; color:var(--ink-2); }
.steps-grid{ display:grid; gap:10px; grid-template-columns:repeat(5,minmax(0,1fr)); }
.step{ background:var(--bg); border:1px solid var(--line); border-radius:12px; padding:12px;
  box-shadow:0 4px 12px rgba(0,0,0,.03); font-size:12px; }
.step span{ display:inline-flex; width:20px; height:20px; align-items:center; justify-content:center;
  border-radius:50%; background:var(--ink); color:#fff; font-size:11px; font-weight:800; }
.step h3{ margin:6px 0 4px; font-size:13px; color:#2b3440; }
.step p{ margin:0; color:#5f6a73; }

/* INCLUDED */
.included{ max-width:1180px; margin:0 auto 34px; }
.included h2{ font-size:20px; margin:0 0 12px; color:#2b3440; }
.included-grid{ display:grid; gap:20px; grid-template-columns:repeat(2,minmax(0,1fr));
  background:#fbfbfd; border:1px solid var(--line); border-radius:14px; padding:14px; }
.included-grid ul{ margin:0; padding-left:18px; color:#3a4653; font-size:13px; }

/* CONFIDENTIALITY */
.privacy-box{max-width:1180px;margin:0 auto 28px;padding:14px;border:1px solid var(--line);border-left:4px solid var(--gold);
  border-radius:14px;background:#fbfcfe}
.privacy-box h2{margin:0 0 8px;color:#2b3440;font-size:20px}
.privacy-box p{margin:0;color:#3a4653;font-size:13px}

/* PAYMENT */
.pay-box{max-width:1180px;margin:0 auto 28px;padding:14px;border:1px solid var(--line);
  border-radius:14px;background:#fbfcfe}
.pay-box h2{margin:0 0 8px;color:#2b3440;font-size:20px}
.pay-box ul{margin:0;padding-left:18px;color:#3a4653;font-size:13px}

/* PRICES */
.prices{ max-width:1180px; margin:0 auto 34px; }
.prices h2{ font-size:20px; margin:0 0 6px; color:#2b3440; }
.prices .sub{ margin:0 0 12px; color:#5f6a73; font-size:12px; }
.prices-grid{ display:grid; gap:12px; grid-template-columns:repeat(3,minmax(0,1fr)); }
.price-card{ background:#ffffff; border:1px solid var(--line); border-radius:14px; padding:12px;
  box-shadow:0 6px 16px rgba(0,0,0,.03); }
.price-card .label{ font-weight:800; color:#2b3440; margin-bottom:6px; }
.price-card ul{ margin:0; padding-left:16px; color:#3a4653; font-size:13px; }
.price-card .hint{margin-top:8px;font-size:12px;color:#5f6a73;}
.price-card.featured{ border-color:#e6d8b7; box-shadow:0 10px 22px rgba(195,165,107,.15); }
.price-card.featured .label{ color:#b79357; }

/* AFTERCARE */
.ac-wrap{max-width:1180px;margin:0 auto 30px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fbfbfd}
.ac-wrap h2{margin:0 0 8px;color:#2b3440;font-size:20px}
.ac-list{margin:0;padding-left:18px;color:#3a4653;font-size:13px}

/* GEO (SVG map) */
.geo-wrap{max-width:1180px;margin:0 auto 34px;}
.geo-wrap h2{font-size:20px;margin:0 0 12px;color:#2b3440}
.geo-grid{display:grid;gap:12px;grid-template-columns:minmax(0,1.2fr) minmax(280px,1fr)}
.areas{margin:0;padding-left:18px;color:#3a4653;font-size:13px}
.map-wrap{position:relative;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fbfcfe}
.map{width:100%;height:auto;display:block}
.tooltip{position:absolute;left:12px;top:12px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:8px 10px;font-size:12px;color:#2c3a47;box-shadow:0 8px 18px rgba(0,0,0,.06)}

/* REVIEWS */
.reviews{ max-width:1180px; margin:0 auto 34px; }
.reviews h2{ font-size:20px; margin:0 0 8px; color:#2b3440; }
.reviews-grid{ display:grid; gap:12px; grid-template-columns:repeat(3,minmax(0,1fr)); }
.review{ background:#fbfcfe; border:1px solid var(--line); border-left:3px solid var(--gold);
  padding:12px; border-radius:12px; color:#5f6a73; font-size:13px; }
.review span{ display:block; margin-top:6px; color:#2b3440; font-size:12px; }

/* CTA */
.final-cta{ max-width:1180px; margin:0 auto; }
.final-box{ background:#f6f8fb; border:1px solid var(--line); border-left:4px solid var(--gold);
  padding:16px; border-radius:18px; box-shadow:var(--shadow); }
.final-box h2{ margin:0 0 8px; font-size:20px; color:#2b3440; }
.final-box p{ margin:0 0 10px; color:#5f6a73; font-size:13px; }
.final-actions{ display:flex; flex-wrap:wrap; gap:10px; margin-bottom:6px; }
.note{ font-size:11px; color:#5f6a73; }

/* Sticky mobile bar */
.sticky-bar{ position:fixed; left:0; right:0; bottom:0; z-index:9999;
  display:none; gap:8px; padding:10px; background:#ffffffee;
  backdrop-filter: blur(6px); border-top:1px solid var(--line); }
.sbtn{flex:1; display:flex; align-items:center; justify-content:center;
  padding:12px 14px; border-radius:12px; text-decoration:none; font-weight:800; font-size:14px}
.sbtn-call{background:#19242d; color:#fff;}
.sbtn-wa{background:#f5faf6; color:#135c2f; border:1px solid #cfe6d8;}

/* Responsive */
@media (max-width:980px){
  .hero{ grid-template-columns:1fr; }
  .prices-grid,.reviews-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
  .geo-grid{ grid-template-columns:1fr; }
}
@media (max-width:760px){
  .sticky-bar{display:flex;} body{padding-bottom:68px;}
}
@media (max-width:640px){
  .agent-page{ padding:28px 10px 44px; }
  .pains-grid,.steps-grid,.included-grid,.prices-grid,.reviews-grid,.scn-grid{ grid-template-columns:1fr; }
  .hero h1{ font-size:24px; }
}
</style>
</head>
<body>
<section class="agent-page vmk-skin v3">
  <!-- HERO -->
  <div class="hero" role="banner">
    <div class="hero-text">
      <div class="badge" aria-label="Официальная служба с 1997 года">Официальная ритуальная служба • с 1997 года</div>
      <h1>Ритуальный агент приедет за 30–60 минут и возьмёт организацию на себя</h1>
      <p class="hero-sub">
        Спокойно объясним шаги, согласуем понятную смету и поможем с документами. Без навязанных услуг и скрытых доплат.
      </p>
      <ul class="hero-bullets">
        <li>Выезд агента <strong>24/7</strong> по Ярославлю и области</li>
        <li>Документы, морг, транспорт, церемония — «под ключ»</li>
        <li>Пакеты от <strong>18 400 ₽</strong> с прозрачным составом</li>
      </ul>
      <div class="hero-cta">
        <a href="tel:+74852331430" class="btn btn-primary" aria-label="Позвонить по телефону">Позвонить</a>
        <a href="https://wa.me/79036389534" class="btn btn-wa" aria-label="Написать в WhatsApp">WhatsApp</a>
        <span class="hero-num" aria-hidden="true">+7 (4852) 33-14-30 • +7 903 638-95-34</span>
      </div>
      <div class="hero-note" role="note">Звонок/сообщение ни к чему не обязывает. Решение всегда за вами.</div>
    </div>
    <div class="hero-side">
      <div class="trust-card">
        <h3>Почему выбирают нас</h3>
        <ul>
          <li>Официальная компания, договор и чек</li>
          <li>Собственные автомобили и склад атрибутики</li>
          <li>Тактичные агенты, бережная коммуникация</li>
          <li>Фиксированная смета до начала работ</li>
        </ul>
      </div>
      <div class="contact-mini">
        <p><strong>Круглосуточно:</strong> +7 (4852) 33-14-30</p>
        <p><strong>Офис:</strong> Ярославль, ул. Богдановича, 14А</p>
      </div>
    </div>
  </div>

  <!-- WHAT TO DO NOW -->
  <section class="now-steps">
    <div class="now-wrap">
      <h2>Что делать прямо сейчас</h2>
      <ol>
        <li>Позвоните нам или напишите в WhatsApp — ответим спокойно и по делу.</li>
        <li>Назовите адрес и ситуацию — агент приедет в течение 30–60 минут.</li>
        <li>Мы составим понятную смету и возьмём организацию на себя.</li>
      </ol>
      <div class="mini-cta">
        <a href="tel:+74852331430" class="btn btn-primary">Позвонить</a>
        <a href="https://wa.me/79036389534" class="btn btn-wa">WhatsApp</a>
      </div>
    </div>
  </section>

  <!-- VISUAL EVIDENCE: slider 160px -->
  <section class="proof">
    <div class="proof-wrap">
      <h2>Наши агенты, транспорт и офис</h2>
      <p class="sub">Только реальные фото. По запросу пришлём дополнительные подтверждения и документы.</p>

      <div class="slider" data-name="proof">
        <div class="track" aria-live="polite">
          <figure class="frame">
            <div class="ph" aria-hidden="true">ФОТО АГЕНТА</div>
            <figcaption>Тактичные агенты с удостоверением</figcaption>
          </figure>
          <figure class="frame">
            <div class="ph" aria-hidden="true">РИТУАЛЬНЫЙ АВТОМОБИЛЬ</div>
            <figcaption>Собственные ритуальные автомобили</figcaption>
          </figure>
          <figure class="frame">
            <div class="ph" aria-hidden="true">СКЛАД/ОФИС</div>
            <figcaption>Офис и склад атрибутики</figcaption>
          </figure>
        </div>
        <button class="snav prev" aria-label="Назад">‹</button>
        <button class="snav next" aria-label="Вперёд">›</button>
        <div class="dots" role="tablist"></div>
      </div>

      <div class="mini-cta">
        <a href="tel:+74852331430" class="btn btn-primary">Позвонить</a>
        <a href="https://wa.me/79036389534" class="btn btn-wa">WhatsApp</a>
      </div>
    </div>
  </section>

  <!-- PAINS -->
  <section class="pains">
    <h2>В тяжёлый момент — поддержка без лишних трат</h2>
    <div class="pains-grid">
      <div class="card"><h3>Скрытые доплаты</h3><p>Все позиции в смете и договоре. Никаких «после».</p></div>
      <div class="card"><h3>Непонятно, с чего начать</h3><p>Объясним порядок действий и возьмём организацию на себя.</p></div>
      <div class="card"><h3>Опасение «чёрных агентов»</h3><p>Официальная служба, офис, документы, чек.</p></div>
      <div class="card"><h3>Ограниченный бюджет</h3><p>Подберём решение без лишних позиций. Пакеты от 18 400 ₽.</p></div>
    </div>
  </section>

  <!-- ANTI-FRAUD CHECKLIST -->
  <section class="antifraud">
    <div class="af-wrap">
      <h2>Как распознать «чёрных агентов»</h2>
      <ul class="checklist">
        <li>Нет договора и кассового чека — настаивайте на официальных документах.</li>
        <li>Давление и спешка — навязывание товаров/услуг без вашего согласия.</li>
        <li>Не предъявляют удостоверение, нет офиса и проверяемых реквизитов.</li>
      </ul>
      <div class="tip">У нас всё официально: договор, чек, удостоверение, офис. Смета фиксируется до начала работ.</div>
    </div>
  </section>

  <!-- SCENARIOS -->
  <section class="scenarios">
    <div class="scn-wrap">
      <h2>Ваш сценарий</h2>
      <div class="scn-grid">
        <div class="scn">
          <h3>Если смерть дома</h3>
          <p>Позвоните в скорую и полицию. Мы поможем с моргом и оформлением документов.</p>
        </div>
        <div class="scn">
          <h3>Если в больнице</h3>
          <p>Согласуем выдачу, транспортировку, документы и даты прощания.</p>
        </div>
        <div class="scn">
          <h3>Кремирование</h3>
          <p>Объясним порядок, поможем с выбором урны/колумбария и организацией церемонии.</p>
        </div>
      </div>
    </div>
  </section>

  <!-- STEPS -->
  <section class="steps">
    <h2>Как работает ритуальный агент</h2>
    <div class="steps-grid">
      <div class="step"><span>1</span><h3>Звонок / WhatsApp</h3><p>Отвечаем спокойно и по делу.</p></div>
      <div class="step"><span>2</span><h3>Выезд</h3><p>Приезжаем в 30–60 минут, консультируем.</p></div>
      <div class="step"><span>3</span><h3>Смета</h3><p>Фиксируем состав услуг и стоимость.</p></div>
      <div class="step"><span>4</span><h3>Организация</h3><p>Документы, морг, транспорт, прощание.</p></div>
      <div class="step"><span>5</span><h3>Поддержка</h3><p>На связи до завершения процедур.</p></div>
    </div>
  </section>

  <!-- INCLUDED -->
  <section class="included">
    <h2>Что берём на себя</h2>
    <div class="included-grid">
      <ul>
        <li>Выезд в течение часа по городу (по области — по договорённости)</li>
        <li>Консультация по похоронам или кремации</li>
        <li>Сбор и оформление документов, взаимодействие с ЗАГС</li>
        <li>Коммуникация с моргом и кладбищем</li>
      </ul>
      <ul>
        <li>Подбор гроба, венков, креста, текстиля</li>
        <li>Катафалк и транспорт для родных</li>
        <li>Подготовка и проведение прощания</li>
        <li>Контроль сроков и качества на всех этапах</li>
      </ul>
    </div>
  </section>

  <!-- CONFIDENTIALITY -->
  <section class="privacy">
    <div class="privacy-box">
      <h2>Конфиденциальность и тактичность</h2>
      <p>Мы не публикуем фото и личные данные без разрешения семьи. Общаемся бережно, без давления и навязанных решений.</p>
    </div>
  </section>

  <!-- PAYMENT -->
  <section class="payment">
    <div class="pay-box">
      <h2>Оплата и социальные выплаты</h2>
      <ul>
        <li>Наличный и безналичный расчёт, возможна рассрочка</li>
        <li>Поможем оформить социальное пособие на погребение</li>
        <li>Смета фиксируется до начала работ и не меняется без согласия</li>
      </ul>
    </div>
  </section>

  <!-- PRICES -->
  <section class="prices">
    <h2>Пакеты услуг</h2>
    <p class="sub">Примеры ориентировочных составов. Агент подберёт и скорректирует под вашу ситуацию.</p>
    <div class="prices-grid">
      <div class="price-card">
        <div class="label">Эконом — от 18 400 ₽</div>
        <ul>
          <li>Базовый гроб</li>
          <li>Крест, табличка</li>
          <li>Текстильный комплект</li>
          <li>Часть документов</li>
          <li>Катафалк по городу</li>
        </ul>
        <div class="hint">Подходит для базовой организации похорон</div>
      </div>
      <div class="price-card featured">
        <div class="label">Стандарт — от 31 900 ₽</div>
        <ul>
          <li>Улучшенный гроб</li>
          <li>Крест, табличка, венки</li>
          <li>Улучшенный текстиль</li>
          <li>Расширенная помощь с документами</li>
          <li>Катафалк, координация прощания</li>
        </ul>
        <div class="hint">Чаще всего выбирают семьи — оптимальный набор</div>
      </div>
      <div class="price-card">
        <div class="label">Премиум — от 50 000 ₽</div>
        <ul>
          <li>Гроб повышенного класса</li>
          <li>Расширенная атрибутика, флористика</li>
          <li>Полное сопровождение по документам</li>
          <li>Организация «под ключ»</li>
          <li>Возможны воинские почести</li>
        </ul>
        <div class="hint">Расширенная организация с дополнительными атрибутами</div>
      </div>
    </div>
  </section>

  <!-- AFTERCARE -->
  <section class="aftercare">
    <div class="ac-wrap">
      <h2>Помощь после церемонии</h2>
      <ul class="ac-list">
        <li>Организация поминок и транспорта</li>
        <li>Памятники, благоустройство места</li>
        <li>Уход за могилой и сезонные работы</li>
      </ul>
      <div class="mini-cta">
        <a href="tel:+74852331430" class="btn btn-primary">Позвонить</a>
        <a href="https://wa.me/79036389534" class="btn btn-wa">WhatsApp</a>
      </div>
    </div>
  </section>

  <!-- GEOGRAPHY (SVG MAP) -->
  <section class="geo">
    <div class="geo-wrap">
      <h2>Где работаем</h2>
      <div class="geo-grid">
        <ul class="areas">
          <li>Все районы Ярославля: Дзержинский, Красноперекопский, Кировский, Ленинский, Фрунзенский, Заволжский</li>
          <li>Города области: Тутаев, Рыбинск, Переславль-Залесский, Ростов, Гаврилов-Ям и др.</li>
          <li>Выезды по области — по согласованию и времени</li>
        </ul>
        <div class="map-wrap">
          <svg class="map" viewBox="0 0 700 420" role="img" aria-label="Схема районов Ярославля">
            <defs>
              <style>
                .area{fill:#e9eef4;stroke:#aeb9c6;stroke-width:1.5;cursor:pointer;transition:all .2s;}
                .area:hover{fill:#dbe6f2}
                .area.active{fill:#c3d8f2;stroke:#5b6b78}
                .pin{fill:#c3a56b;stroke:#8e784c;stroke-width:1}
                .label{font: 12px sans-serif; fill:#2c3a47;}
              </style>
            </defs>
            <rect class="area" data-title="Дзержинский район"   x="20"  y="20"  width="210" height="120" rx="10"/>
            <rect class="area" data-title="Красноперекопский район" x="250" y="20"  width="210" height="120" rx="10"/>
            <rect class="area" data-title="Кировский район"     x="480" y="20"  width="200" height="120" rx="10"/>
            <rect class="area" data-title="Ленинский район"     x="20"  y="160" width="320" height="110" rx="10"/>
            <rect class="area" data-title="Фрунзенский район"   x="360" y="160" width="320" height="110" rx="10"/>
            <rect class="area" data-title="Заволжский район"    x="20"  y="290" width="660" height="100" rx="10"/>
            <circle class="pin" cx="560" cy="205" r="6"/>
            <text class="label" x="570" y="210">Офис: Богдановича, 14А</text>
          </svg>
          <div class="tooltip" aria-live="polite">Наведите на район</div>
        </div>
      </div>
    </div>
  </section>

  <!-- REVIEWS -->
  <section class="reviews">
    <h2>Отзывы</h2>
    <div class="reviews-grid">
      <div class="review"><p>«Всё прошло спокойно и достойно. Спасибо за тактичную поддержку».</p><span>— Сергей А.</span></div>
      <div class="review"><p>«Понятная смета без доплат, помогли с документами и организацией».</p><span>— Екатерина В.</span></div>
      <div class="review"><p>«Профессионально и бережно. Благодарим за помощь семье».</p><span>— Татьяна Р.</span></div>
    </div>
  </section>

  <!-- CTA -->
  <section class="final-cta">
    <div class="final-box">
      <h2>Нужна помощь ритуального агента сейчас?</h2>
      <p>Позвоните или напишите — всё спокойно объясним и направим к вам специалиста.</p>
      <div class="final-actions">
        <a href="tel:+74852331430" class="btn btn-primary lg">Позвонить</a>
        <a href="https://wa.me/79036389534" class="btn btn-wa lg">WhatsApp</a>
      </div>
      <div class="note">Ярославль и область • Круглосуточно</div>
    </div>
  </section>

  <!-- STICKY MOBILE BAR -->
  <div class="sticky-bar">
    <a href="tel:+74852331430" class="sbtn sbtn-call">Позвонить</a>
    <a href="https://wa.me/79036389534" class="sbtn sbtn-wa">WhatsApp</a>
  </div>
</section>

<script>
// Slider with exact 160px media height
(function(){
  const root = document.querySelector('.slider'); if(!root) return;
  const track = root.querySelector('.track');
  const frames = Array.from(root.querySelectorAll('.frame'));
  const prev = root.querySelector('.snav.prev');
  const next = root.querySelector('.snav.next');
  const dots = root.querySelector('.dots');
  let index = 0, startX = 0, dx = 0;

  function width(){ return root.clientWidth; }
  function apply(){ track.style.transform = 'translateX(' + (-index * width()) + 'px)'; updateDots(); }
  function set(i){ index = (i + frames.length) % frames.length; apply(); }
  function updateDots(){ dots.querySelectorAll('button').forEach((b,bi)=> b.classList.toggle('active', bi===index)); }

  function layout(){
    track.style.width = (frames.length * width()) + 'px';
    frames.forEach(f=> f.style.width = width() + 'px');
    apply();
  }

  frames.forEach((_,i)=>{
    const b = document.createElement('button'); b.setAttribute('role','tab');
    b.addEventListener('click', ()=> set(i)); dots.appendChild(b);
  });

  layout(); set(0);
  prev.addEventListener('click', ()=> set(index-1));
  next.addEventListener('click', ()=> set(index+1));
  window.addEventListener('resize', layout, {passive:true});

  track.addEventListener('touchstart', e=>{ startX = e.touches[0].clientX; dx = 0; }, {passive:true});
  track.addEventListener('touchmove',  e=>{ dx = e.touches[0].clientX - startX; track.style.transform = 'translateX(' + (-index * width() + dx) + 'px)'; }, {passive:true});
  track.addEventListener('touchend',   ()=>{
    if (Math.abs(dx) > width()*0.15){ set(index - Math.sign(dx)); } else { apply(); }
    dx = 0;
  });
})();

// Map hover/active tooltip
(function(){
  const wrap = document.querySelector('.map-wrap'); if(!wrap) return;
  const tip = wrap.querySelector('.tooltip');
  const areas = wrap.querySelectorAll('.area');
  areas.forEach(a=>{
    a.addEventListener('mouseenter', ()=>{ areas.forEach(x=>x.classList.remove('active')); a.classList.add('active'); tip.textContent = a.dataset.title || 'Район'; });
    a.addEventListener('mouseleave', ()=>{ a.classList.remove('active'); tip.textContent = 'Наведите на район'; });
    a.addEventListener('click', ()=>{ tip.textContent = (a.dataset.title||'Район') + ' — выезд по согласованию'; });
  });
})();
</script>
</body>
</html>

Оставьте заявку на сайте

Нас выбирают

С 1997 года на рынке

Благодаря большому опыту мы не подведем Вас в трудную минуту

Офис в центре города

Мы находимся в центре города и добраться до нас не составит труда

Не нарушаем сроки

Благодаря организации рабочего процесса мы гарантируем соблюдение сроков

Доступная цена

Поэтому ценим каждого клиента, который обращается в нашу компанию

Заявка на ритуальные услуги

Оставьте заявку - мы вам перезвоним!

Телефон*
Имя*