/* ===== 04_GLOBAL_EFFECTS_PART_01.html ===== */

  /* v32 The Click Impact — copper micro-burst */

  .bz-click-impact-wave {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 2147482500;
    width: var(--bz-impact-size, 160px);
    height: var(--bz-impact-size, 160px);
    border-radius: 999px;
    background: #A96A4A;
    pointer-events: none;
    opacity: .6;
    transform: translate3d(-50%, -50%, 0) scale(0);
    animation: bz-click-impact-burst .3s cubic-bezier(.16, 1, .3, 1) forwards;
    will-change: transform, opacity;
    mix-blend-mode: multiply;
  }

  @keyframes bz-click-impact-burst {
    0% {
      opacity: .6;
      transform: translate3d(-50%, -50%, 0) scale(0);
    }

    100% {
      opacity: 0;
      transform: translate3d(-50%, -50%, 0) scale(1);
    }
  }

  #borzilov-lp .bz-click-impact-target {
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
  }

  #borzilov-lp .bz-logo-dot.bz-click-dot-press {
    animation: bz-click-dot-press .18s cubic-bezier(.16, 1, .3, 1) both;
    opacity: 1 !important;
  }

  @keyframes bz-click-dot-press {
    0% {
      transform: scale(1);
      filter: brightness(1);
    }

    42% {
      transform: scale(.78);
      filter: brightness(1.22);
    }

    100% {
      transform: scale(1);
      filter: brightness(1);
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .bz-click-impact-wave {
      display: none !important;
      animation: none !important;
    }

    #borzilov-lp .bz-logo-dot.bz-click-dot-press {
      animation: none !important;
      filter: none !important;
    }
  }



  /* v28.4 logo scroll progress — UX Gold Edition (0.94 Completion Match) */

  #borzilov-lp {
    --bz-logo-progress: 0%;
  }

  #borzilov-lp .bz-logo-state {
    overflow: visible !important;
  }

  /*
    Базовый слой логотипа.
    Важно: без padding/margin, иначе медный дубль уезжает вверх.
  */
  #borzilov-lp .bz-logo-progress-base {
    position: relative !important;
    z-index: 1 !important;

    padding: 0 !important;
    margin: 0 !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;

    height: auto !important;
    min-height: 0 !important;

    overflow: visible !important;
    transform: none !important;
    box-sizing: border-box !important;

    color: var(--ink) !important;
  }

  /*
    Медный слой-дубликат.
    Он лежит строго поверх базового слоя.
  */
  #borzilov-lp .bz-logo-progress-fill {
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    z-index: 2 !important;

    color: var(--copper) !important;
    pointer-events: none !important;

    transform: translate3d(0, -50%, 0) !important;

    padding: 0 !important;
    margin: 0 !important;

    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;

    height: auto !important;
    min-height: 0 !important;

    overflow: visible !important;
    box-sizing: border-box !important;

    /*
      Запас сверху/снизу даём через отрицательный inset,
      чтобы не резались д/р/а, но слой не смещался.
    */
    clip-path: inset(-10px calc(100% - var(--bz-logo-progress)) -10px 0) !important;
    -webkit-clip-path: inset(-10px calc(100% - var(--bz-logo-progress)) -10px 0) !important;

    will-change: clip-path;
  }

  /*
    В медном дубликате точку скрываем.
    Физическая точка остаётся одна — оригинальная.
  */
  #borzilov-lp .bz-logo-progress-fill .bz-logo-dot {
    opacity: 0 !important;
    box-shadow: none !important;
  }

  /*
    Пока прогресс НЕ полный — база остаётся тёмной.
  */
  #borzilov-lp:not(.bz-logo-progress-complete) .bz-logo-progress-base {
    color: var(--ink) !important;
  }

  /*
    При достижении UX-финала базовый слой тоже становится медным.
    Это убирает микропроблески антиалиасинга.
  */
  #borzilov-lp.bz-logo-progress-complete .bz-logo-progress-base {
    color: var(--copper) !important;
  }

  #borzilov-lp.bz-logo-progress-complete .bz-logo-progress-fill {
    clip-path: inset(-10px 0 -10px 0) !important;
    -webkit-clip-path: inset(-10px 0 -10px 0) !important;
  }

  /*
    Когда пошёл скролл — обычное дыхание точки гасим,
    чтобы оно не спорило с progress-логикой.
  */
  #borzilov-lp.bz-logo-progress-active:not(.bz-logo-final-burst) .bz-logo-dot::before,
  #borzilov-lp.bz-logo-progress-active:not(.bz-logo-final-burst) .bz-logo-dot::after {
    animation: none !important;
    opacity: 0 !important;
  }

  /*
    Финальный тройной импульс точки — срабатывает на UX-финале.
  */
  #borzilov-lp.bz-logo-final-burst .bz-logo-dot::before {
    width: 88px !important;
    height: 88px !important;
    border: 1px solid rgba(169, 106, 74, .62) !important;
    animation: bz-logo-final-triple-burst 1.35s ease-out both !important;
  }

  #borzilov-lp.bz-logo-final-burst .bz-logo-dot::after {
    width: 132px !important;
    height: 132px !important;
    border: 1px solid rgba(169, 106, 74, .34) !important;
    animation: bz-logo-final-triple-burst-soft 1.42s ease-out .05s both !important;
  }

  @keyframes bz-logo-final-triple-burst {
    0%   { opacity: .78; transform: translate3d(-50%, -50%, 0) scale(.10); }
    15%  { opacity: 0;   transform: translate3d(-50%, -50%, 0) scale(1); }

    22%  { opacity: .68; transform: translate3d(-50%, -50%, 0) scale(.10); }
    38%  { opacity: 0;   transform: translate3d(-50%, -50%, 0) scale(.95); }

    45%  { opacity: .58; transform: translate3d(-50%, -50%, 0) scale(.10); }
    63%  { opacity: 0;   transform: translate3d(-50%, -50%, 0) scale(.88); }

    100% { opacity: 0;   transform: translate3d(-50%, -50%, 0) scale(.88); }
  }

  @keyframes bz-logo-final-triple-burst-soft {
    0%   { opacity: .36; transform: translate3d(-50%, -50%, 0) scale(.08); }
    18%  { opacity: 0;   transform: translate3d(-50%, -50%, 0) scale(1); }

    25%  { opacity: .28; transform: translate3d(-50%, -50%, 0) scale(.08); }
    43%  { opacity: 0;   transform: translate3d(-50%, -50%, 0) scale(.96); }

    50%  { opacity: .22; transform: translate3d(-50%, -50%, 0) scale(.08); }
    70%  { opacity: 0;   transform: translate3d(-50%, -50%, 0) scale(.90); }

    100% { opacity: 0;   transform: translate3d(-50%, -50%, 0) scale(.90); }
  }

  @media (prefers-reduced-motion: reduce) {
    #borzilov-lp .bz-logo-progress-fill {
      clip-path: none !important;
      -webkit-clip-path: none !important;
      opacity: 0 !important;
    }

    #borzilov-lp.bz-logo-final-burst .bz-logo-dot::before,
    #borzilov-lp.bz-logo-final-burst .bz-logo-dot::after {
      animation: none !important;
      opacity: 0 !important;
    }
  }



  /* v30 production grain — subtle matte texture */

  /* отключаем старый тестовый grain из большого HTML-блока */
  #borzilov-lp::before {
    content: none !important;
    display: none !important;
  }

  #bz-grain-layer {
    position: fixed;
    inset: 0;
    z-index: 2147483000;
    pointer-events: none;
    opacity: .045;
    mix-blend-mode: multiply;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.62' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E");
    background-size: 180px 180px;
  }

  @media (max-width: 760px) {
    #bz-grain-layer {
      opacity: .035;
      background-size: 160px 160px;
    }
  }



  /* v1.2 Premium Copper Gravity Aura Cursor — Matte Veil Edition */
  
  /* Полностью отключаем кастомный курсор на мобилках и тач-скринах */
  @media (pointer: coarse) {
    .bz-cursor-aura { 
      display: none !important; 
    }
  }

  /* Базовое состояние благородной воздушной ауры */
  .bz-cursor-aura {
    position: fixed;
    top: 0; 
    left: 0;
    width: 40px;
    height: 40px;
    border: 1px solid rgba(169, 106, 74, 0.42); /* Контурная фирменная медь */
    
    /* ТОТ САМЫЙ СЕКС: Тончайшая матовая медная вуаль внутрь кольца */
    background-color: rgba(169, 106, 74, 0.03); 
    
    border-radius: 50%;
    pointer-events: none;
    z-index: 100000; /* Гарантированно поверх всего контента */
    transform: translate3d(-50%, -50%, 0);
    will-change: transform, width, height, background-color, border-color;
    
    /* Упругий премиальный тайминг физики сжатия */
    transition: 
      width 0.28s cubic-bezier(0.215, 0.610, 0.355, 1),
      height 0.28s cubic-bezier(0.215, 0.610, 0.355, 1),
      background-color 0.28s cubic-bezier(0.215, 0.610, 0.355, 1),
      border-color 0.28s cubic-bezier(0.215, 0.610, 0.355, 1);
  }

  /* Состояние ХОВЕРА: кольцо упруго схлопывается в плотную медную мушку на кнопках */
  .bz-cursor-aura.bz-state-hover {
    width: 8px !important;
    height: 8px !important;
    background-color: #A96A4A !important; /* Насыщенная медь */
    border-color: #A96A4A !important;
  }


/* ===== 04_GLOBAL_EFFECTS_PART_02.html ===== */

  /* v40.1 DESKTOP HEADER — Luxury Matte Veil & One-Line Geometry */

  @media (min-width: 981px) {
    /*
      1. УЛЬТИМАТИВНЫЙ МАТОВЫЙ НАЛИВ.
      Полностью вычищены серые тени и статичная грязь. 
      Шапка идеально однородна по всей ширине.
    */
    #borzilov-lp .bz-nav-wrap {
      position: fixed !important;
      top: 0 !important;
      left: 0 !important;
      right: 0 !important;
      width: 100vw !important;
      z-index: 2147482000 !important;

      /* Никаких теней и градиентов, которые пачкали правый край */
      box-shadow: none !important;
      background-image: none !important;

      /* Чистый фирменный алебастр в 82% плотности */
      background: rgba(246, 242, 234, 0.82) !important;
      
      /* Идеальное матовое размытие контента, заезжающего ПОД шапку */
      backdrop-filter: blur(12px) !important;
      -webkit-backdrop-filter: blur(12px) !important;
      
      /* Еле заметный нижний кант в цвет контура для деликатного отделения при скролле */
      border-bottom: 1px solid rgba(35, 57, 93, 0.06) !important;
      
      transition: background 0.3s ease, backdrop-filter 0.3s ease;
    }

    /* Оптимальная высота десктопной шапки — 76px */
    #borzilov-lp .bz-nav {
      min-height: 76px !important;
      height: 76px !important;
      gap: 28px !important;
    }

    /* Компенсация высоты для hero-блока */
    #borzilov-lp main {
      padding-top: 76px !important;
    }

    /*
      2. ГЕОМЕТРИЯ ЛОГОТИПА (В одну строку на ПК)
    */
    #borzilov-lp .bz-logo {
      width: clamp(205px, 16vw, 255px) !important;
      flex: 0 0 clamp(205px, 16vw, 255px) !important;
      min-height: 28px !important;
      max-width: none !important;
      white-space: nowrap !important;
      transform: none !important;
    }

    #borzilov-lp .bz-logo-state-full {
      opacity: 1 !important;
      transform: translate3d(0, -50%, 0) !important;
      pointer-events: auto !important;
    }

    #borzilov-lp .bz-logo-state-compact {
      opacity: 0 !important;
      transform: translate3d(0, calc(-50% + 5px), 0) !important;
      pointer-events: none !important;
    }

    #borzilov-lp .bz-logo-state-full .bz-logo-text {
      display: inline-flex !important;
      flex-direction: row !important;
      align-items: center !important;
      justify-content: flex-start !important;
      font-size: 20px !important;
      line-height: 1 !important;
      font-weight: 850 !important;
      letter-spacing: -0.055em !important;
      white-space: nowrap !important;
      text-align: left !important;
    }

    #borzilov-lp .bz-logo-state-full .bz-logo-line {
      display: inline-flex !important;
      align-items: center !important;
      white-space: nowrap !important;
    }

    #borzilov-lp .bz-logo-state-full .bz-logo-line:first-child {
      margin-right: 5px !important;
    }

    /*
      3. ОТОБРАЖЕНИЕ ТОЧКИ
    */
    #borzilov-lp .bz-logo-dot,
    #borzilov-lp .bz-logo-dot-anchor,
    #borzilov-lp .bz-logo-state-full .bz-logo-dot {
      display: inline-block !important;
      opacity: 1 !important;
      visibility: visible !important;
      transform: none !important;
      width: 7px !important;
      height: 7px !important;
      margin-left: 7px !important;
      background: var(--copper) !important;
      box-shadow: 0 0 0 4px rgba(169, 106, 74, .12) !important;
    }

    #borzilov-lp.bz-guide-active .bz-logo-dot-anchor {
      opacity: 1 !important;
      transform: none !important;
    }

    #borzilov-lp .bz-guide-dot {
      display: none !important;
      opacity: 0 !important;
    }

    #borzilov-lp .bz-logo-progress-fill .bz-logo-dot {
      display: inline-block !important;
      opacity: 1 !important;
      visibility: visible !important;
      background: var(--copper) !important;
      box-shadow: 0 0 0 4px rgba(169, 106, 74, .12) !important;
    }

    /*
      4. СТРУКТУРНОЕ МЕНЮ БЕЗ НАЕЗДОВ
    */
    #borzilov-lp .bz-menu {
      display: flex !important;
      align-items: center !important;
      justify-content: flex-end !important;
      gap: 24px !important;
      flex-wrap: nowrap !important;
      height: 76px !important;
      min-width: 0 !important;
    }

    #borzilov-lp .bz-menu > a:not(.bz-start-tag) {
      position: relative !important;
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      opacity: 1 !important;
      transform: none !important;
      pointer-events: auto !important;
      white-space: nowrap !important;
      width: auto !important;
      min-width: auto !important;
      max-width: none !important;
    }

    /* Полностью убираем мобильный тег даты на десктопе */
    #borzilov-lp .bz-menu a.bz-start-tag,
    #borzilov-lp.bz-exit-intent-on .bz-menu a.bz-start-tag {
      display: none !important;
      opacity: 0 !important;
      pointer-events: none !important;
      width: 0 !important;
      min-width: 0 !important;
      max-width: 0 !important;
      height: 0 !important;
      padding: 0 !important;
      margin: 0 !important;
      border: 0 !important;
      overflow: hidden !important;
    }

    /* Монументальная кнопка "Условия участия" */
    #borzilov-lp .bz-menu .bz-nav-btn,
    #borzilov-lp.bz-exit-intent-on .bz-menu .bz-nav-btn {
      display: inline-flex !important;
      opacity: 1 !important;
      transform: none !important;
      pointer-events: auto !important;
      min-height: 46px !important;
      height: 46px !important;
      padding: 0 24px !important;
      width: auto !important;
      min-width: auto !important;
      max-width: none !important;
      border-width: 1px !important;
      overflow: visible !important;
    }

    /* Корректный скролл-маргин под высоту шапки */
    #borzilov-lp section[id],
    #borzilov-lp [id^="bz-"] {
      scroll-margin-top: 92px !important;
    }

    #borzilov-lp {
      overflow-x: clip !important;
      overflow-y: visible !important;
    }
  }

  /*
    Адаптив под узкие экраны ноутбуков
  */
  @media (min-width: 981px) and (max-width: 1180px) {
    #borzilov-lp .bz-logo {
      width: 205px !important;
      flex-basis: 205px !important;
    }

    #borzilov-lp .bz-logo-state-full .bz-logo-text {
      font-size: 18px !important;
    }

    #borzilov-lp .bz-menu {
      gap: 16px !important;
      font-size: 13px !important;
    }

    #borzilov-lp .bz-menu .bz-nav-btn {
      padding: 0 18px !important;
      font-size: 13px !important;
    }
  }



  /* v29.1 disable elastic / lag / stagger on desktop only */

  @media (min-width: 761px) {
    /*
      1. Полностью гасим elastic/inertia на ПК.
      JS может продолжать считать переменные, но CSS принудительно ставит ноль.
    */
    #borzilov-lp .bz-elastic-card {
      --bz-elastic-skew: 0deg !important;
      --bz-elastic-y: 0px !important;
      --bz-elastic-scale-y: 1 !important;

      transform: none !important;
      will-change: auto !important;
    }

    /*
      2. Возвращаем обычный аккуратный fade-in для элементов,
      которые ещё не проявились.
    */
    #borzilov-lp .bz-elastic-card.bz-fade:not(.bz-visible),
    #borzilov-lp .bz-fade.bz-stagger-ready:not(.bz-visible) {
      opacity: 0 !important;
      transform: translate3d(0, 14px, 0) !important;
      transition:
        opacity .46s ease,
        transform .46s ease !important;
      transition-delay: 0ms !important;
      will-change: opacity, transform !important;
    }

    /*
      3. После появления — статично, без догоняния и желе.
    */
    #borzilov-lp .bz-elastic-card.bz-fade.bz-visible,
    #borzilov-lp .bz-fade.bz-stagger-ready.bz-visible {
      opacity: 1 !important;
      transform: translate3d(0, 0, 0) !important;
      transition:
        opacity .46s ease,
        transform .46s ease !important;
      transition-delay: 0ms !important;
      will-change: auto !important;
    }

    /*
      4. На ПК убираем каскадную задержку,
      чтобы карточки не "догоняли" друг друга криво.
    */
    #borzilov-lp .bz-fade.bz-stagger-ready {
      --bz-stagger-delay: 0ms !important;
      transition-delay: 0ms !important;
    }
  }
