Задать вопрос директору
Telegram
VK
Звонок

Блок преимуществ для салона красоты

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

Живое демо — блок работает прямо здесь

Код блока

<section class="vbpsk">
  <div class="vbpsk-wrap">
    <div class="vbpsk-head">
      <h2 class="vbpsk-h2">Цифры вместо обещаний</h2>
      <p class="vbpsk-lead">Всё, что можно проверить: записью, чеком или отзывом. «Индивидуальный подход» в этот список не попал.</p>
    </div>

    <div class="vbpsk-grid">
      <article class="vbpsk-item">
        <div class="vbpsk-ring" data-val="94">
          <svg viewBox="0 0 100 100" aria-hidden="true" focusable="false">
            <circle cx="50" cy="50" r="44" fill="none" stroke="currentColor" stroke-width="7" class="vbpsk-ring__bg"/>
            <circle cx="50" cy="50" r="44" fill="none" stroke="currentColor" stroke-width="7" stroke-linecap="round" class="vbpsk-ring__fg"/>
          </svg>
          <b>94%</b>
        </div>
        <h3>Возвращаются повторно</h3>
        <p>Доля клиентов, которые записались снова в течение трёх месяцев. Считаем по журналу записи, не по ощущениям.</p>
      </article>

      <article class="vbpsk-item">
        <div class="vbpsk-ring" data-val="100">
          <svg viewBox="0 0 100 100" aria-hidden="true" focusable="false">
            <circle cx="50" cy="50" r="44" fill="none" stroke="currentColor" stroke-width="7" class="vbpsk-ring__bg"/>
            <circle cx="50" cy="50" r="44" fill="none" stroke="currentColor" stroke-width="7" stroke-linecap="round" class="vbpsk-ring__fg"/>
          </svg>
          <b>21 день</b>
        </div>
        <h3>Держится покрытие</h3>
        <p>Минимальный срок, который мы гарантируем. Скололось раньше — переделываем бесплатно, без разбирательств.</p>
      </article>

      <article class="vbpsk-item">
        <div class="vbpsk-ring" data-val="70">
          <svg viewBox="0 0 100 100" aria-hidden="true" focusable="false">
            <circle cx="50" cy="50" r="44" fill="none" stroke="currentColor" stroke-width="7" class="vbpsk-ring__bg"/>
            <circle cx="50" cy="50" r="44" fill="none" stroke="currentColor" stroke-width="7" stroke-linecap="round" class="vbpsk-ring__fg"/>
          </svg>
          <b>7 лет</b>
        </div>
        <h3>Средний стаж мастера</h3>
        <p>Берём в команду от пяти лет практики. Ученики работают только в паре с наставником и по сниженной цене.</p>
      </article>

      <article class="vbpsk-item">
        <div class="vbpsk-ring" data-val="88">
          <svg viewBox="0 0 100 100" aria-hidden="true" focusable="false">
            <circle cx="50" cy="50" r="44" fill="none" stroke="currentColor" stroke-width="7" class="vbpsk-ring__bg"/>
            <circle cx="50" cy="50" r="44" fill="none" stroke="currentColor" stroke-width="7" stroke-linecap="round" class="vbpsk-ring__fg"/>
          </svg>
          <b>90 мин</b>
        </div>
        <h3>Один клиент — один слот</h3>
        <p>Мастер не ведёт двоих одновременно. Поэтому не бывает «подождите, я досушу соседку» и переносов на ходу.</p>
      </article>
    </div>
  </div>
</section>

<style>
.vbpsk, .vbpsk *, .vbpsk *::before, .vbpsk *::after { box-sizing: border-box; }
.vbpsk {
  --acc: #b9705f; --ink: #33272a; --muted: #7a6a6c; --line: #ece1dd; --soft: #faf3f1;
  --f: var(--t-text-font, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif);
  --fh: var(--t-headline-font, var(--f));
  background: var(--soft); color: var(--ink); font-family: var(--f); padding: clamp(36px, 5vw, 80px) 20px;
}
.vbpsk-wrap { max-width: 1240px; margin: 0 auto; padding: 0 clamp(0px, 2vw, 40px); }
.vbpsk-head { max-width: 44em; margin-bottom: clamp(28px, 3.4vw, 48px); }
.vbpsk-h2 { font-family: var(--fh); font-size: clamp(26px, 3.4vw, 42px); line-height: 1.1; font-weight: 700; letter-spacing: -.02em; margin: 0 0 12px; }
.vbpsk-lead { font-size: 16px; line-height: 1.6; color: var(--muted); margin: 0; }

.vbpsk-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: clamp(20px, 2.6vw, 34px); }
.vbpsk-item { text-align: center; }
.vbpsk-ring { position: relative; width: 132px; height: 132px; margin: 0 auto 18px; }
.vbpsk-ring svg { width: 100%; height: 100%; transform: rotate(-90deg); }
.vbpsk-ring__bg { color: #e6d4ce; }
.vbpsk-ring__fg { color: var(--acc); stroke-dasharray: 276.5; stroke-dashoffset: 276.5; transition: stroke-dashoffset 1.1s cubic-bezier(.22,1,.36,1); }
.vbpsk-ring b { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center;
  font-family: var(--fh); font-size: 24px; font-weight: 700; letter-spacing: -.02em; }
.vbpsk-item h3 { font-family: var(--fh); font-size: 18px; line-height: 1.3; font-weight: 600; margin: 0 0 8px; }
.vbpsk-item p { margin: 0 auto; max-width: 24em; font-size: 15px; line-height: 1.6; color: var(--muted); }

@media (prefers-reduced-motion: reduce) { .vbpsk-ring__fg { transition: none !important; } }
</style>

<script>
(function () {
  var roots = document.querySelectorAll('.vbpsk');
  for (var i = 0; i < roots.length; i++) init(roots[i]);

  function init(root) {
    if (root.__vb) return; root.__vb = 1;
    var rings = root.querySelectorAll('.vbpsk-ring');
    var LEN = 2 * Math.PI * 44;   /* длина окружности радиусом 44 */

    function fill(ring) {
      var val = Math.max(0, Math.min(100, +ring.dataset.val || 0));
      var fg = ring.querySelector('.vbpsk-ring__fg');
      fg.style.strokeDasharray = LEN;
      fg.style.strokeDashoffset = LEN - LEN * val / 100;
    }

    if (!('IntersectionObserver' in window)) { rings.forEach(fill); return; }
    var io = new IntersectionObserver(function (entries) {
      entries.forEach(function (e) {
        if (!e.isIntersecting) return;
        var i = Array.prototype.indexOf.call(rings, e.target);
        setTimeout(function () { fill(e.target); }, i * 120);
        io.unobserve(e.target);
      });
    }, { rootMargin: '0px 0px -10% 0px' });
    rings.forEach(function (r) { io.observe(r); });
    setTimeout(function () { rings.forEach(fill); }, 2500);
  }
})();
</script>

Вставляется целиком в блок T123 «HTML-код». Внутри уже есть стили и скрипт, подключать ничего не нужно.

Как вставить блок в Tilda

  1. Скопируйте кодКнопка «Скопировать код» выше кладёт всё содержимое в буфер обмена.
  2. Добавьте блок T123В редакторе страницы: «Библиотека блоков» → «Другое» → T123 «HTML-код».
  3. Вставьте и сохранитеНажмите «Контент», вставьте код в поле, сохраните и обновите страницу.
  4. ОпубликуйтеВ превью скрипты Tilda работают не всегда — проверяйте на опубликованной странице.

Подробная инструкция с граблями — как вставить вайб-блок в Tilda.

Что менять под себя

Где в кодеЗа что отвечает
data-val у кольцапроцент заполнения дуги
текст в центре бейджасама цифра и подпись
--accцвет дуги и акцентов

Преимущества салона красоты: зачем он нужен

Салонам сложно отличаться словами — «мастера с опытом» пишут все. Работают цифры: стаж, количество клиентов в месяц, срок, который держится покрытие. Блок построен именно под цифру плюс расшифровку.

Бейджи собраны на SVG-кольцах: заполнение задаётся одним атрибутом, поэтому «92%» рисуется, а не пишется. Никаких счётчиков-барабанов, которые крутятся при каждом скролле.

Вопросы по этому блоку

  • Да. Текст в центре кольца — обычная разметка, пишите что угодно: «7 лет», «1 200 клиентов». Атрибут data-val отвечает только за длину дуги, задайте её на глаз от 0 до 100.

  • На широком экране — четыре, на планшете — два, на телефоне — один. Сетка перестраивается сама, править медиазапросы не нужно.

  • Да. Код на этой странице копируется целиком, без регистрации и подписки. Указывать авторство не нужно, использовать можно в коммерческих проектах.

  • Нет. Все классы внутри имеют собственный префикс vbpsk, поэтому не пересекаются ни со стилями Tilda, ни с другими блоками. Скрипт привязан к своему элементу и запускается один раз, даже если блок вставлен дважды.

  • Раскладка перестраивается под узкие экраны, размеры заданы через clamp, поля ввода имеют шрифт 16 пикселей — iOS не будет зумить страницу при фокусе. Отдельной мобильной версии подключать не нужно.

Другие блоки преимуществ

Ещё блоки для салонов красоты

Собрать сайт целиком

Дровосеки делают сайты на Tilda под ключ: структура, тексты, дизайн, вёрстка и вайб-блоки под задачи бизнеса.