/* Сброс стилей по умолчанию */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* ============================================
   ЗАСТАВКА ОЖИДАНИЯ ЗАГРУЗКИ
   ============================================
   Мерцающий круг из темно-серебряных точек
   ============================================ */

.loading-screen {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #f5f0e5;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
  opacity: 1;
  visibility: visible;
  transition: opacity 0.5s ease-in-out, visibility 0.5s ease-in-out;
}

.loading-screen.hidden {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.loading-circle {
  position: relative;
  width: 120px;
  height: 120px;
}

.loading-dot {
  position: absolute;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: linear-gradient(135deg, 
    rgba(100, 100, 110, 0.9) 0%,
    rgba(140, 140, 150, 0.9) 50%,
    rgba(100, 100, 110, 0.9) 100%
  );
  box-shadow: 
    0 0 10px rgba(140, 140, 150, 0.6),
    inset 0 0 5px rgba(255, 255, 255, 0.3);
  top: 50%;
  left: 50%;
  margin-left: -6px;
  margin-top: -6px;
  animation: loadingPulse 1.5s ease-in-out infinite;
}

/* Расположение точек по кругу */
.loading-dot:nth-child(1) {
  transform: rotate(0deg) translateY(-50px);
  animation-delay: 0s;
}

.loading-dot:nth-child(2) {
  transform: rotate(30deg) translateY(-50px);
  animation-delay: 0.125s;
}

.loading-dot:nth-child(3) {
  transform: rotate(60deg) translateY(-50px);
  animation-delay: 0.25s;
}

.loading-dot:nth-child(4) {
  transform: rotate(90deg) translateY(-50px);
  animation-delay: 0.375s;
}

.loading-dot:nth-child(5) {
  transform: rotate(120deg) translateY(-50px);
  animation-delay: 0.5s;
}

.loading-dot:nth-child(6) {
  transform: rotate(150deg) translateY(-50px);
  animation-delay: 0.625s;
}

.loading-dot:nth-child(7) {
  transform: rotate(180deg) translateY(-50px);
  animation-delay: 0.75s;
}

.loading-dot:nth-child(8) {
  transform: rotate(210deg) translateY(-50px);
  animation-delay: 0.875s;
}

.loading-dot:nth-child(9) {
  transform: rotate(240deg) translateY(-50px);
  animation-delay: 1s;
}

.loading-dot:nth-child(10) {
  transform: rotate(270deg) translateY(-50px);
  animation-delay: 1.125s;
}

.loading-dot:nth-child(11) {
  transform: rotate(300deg) translateY(-50px);
  animation-delay: 1.25s;
}

.loading-dot:nth-child(12) {
  transform: rotate(330deg) translateY(-50px);
  animation-delay: 1.375s;
}

/* Анимация мерцания точек */
@keyframes loadingPulse {
  0%, 100% {
    opacity: 0.3;
    transform: scale(0.8);
    box-shadow: 
      0 0 5px rgba(140, 140, 150, 0.4),
      inset 0 0 3px rgba(255, 255, 255, 0.2);
  }
  50% {
    opacity: 1;
    transform: scale(1.2);
    box-shadow: 
      0 0 15px rgba(140, 140, 150, 0.8),
      inset 0 0 8px rgba(255, 255, 255, 0.4);
  }
}

/* @font-face для Uni Sans */
@font-face {
  font-family: 'Uni Sans';
  src: url('/fonts/UniSans.ttf?v=3') format('truetype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

/* @font-face для Rubik Beastly */
@font-face {
  font-family: 'Rubik Beastly';
  src: url('/fonts/RubikBeastly-Regular.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

/* Основные стили body - фон из изображения */
body {
  margin: 0;
  padding: 40px;
  /* Стандартный шрифт */
  font-family: "Rubik", "Comfortaa", "Cormorant Garamond", sans-serif;
  /* font-size: 22px; */
  /* font-weight: 400; */
  /* Фон из изображения creative-background-with-white-lines.jpg (новый для тестирования) */
  /* ⚠️ ВРЕМЕННО: Для отката восстановить из styles.css.backup_before_uni_sans */
  background-color: #e6e6e6;  /* Фоновый цвет на случай, если изображение не загрузится */
  background-image: url('/creative-background-with-white-lines.jpg');
  background-size: cover;  /* Покрывает весь экран */
  background-position: center;  /* Центрирование */
  background-repeat: no-repeat;  /* Без повторения */
  background-attachment: fixed;  /* Фиксированный фон при прокрутке (только на десктопе) */
  /* Скрываем body до загрузки всех ресурсов */
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
}

/* Показываем body после загрузки всех ресурсов */
body.loaded {
  opacity: 1;
  visibility: visible;
  /* Оптимизация загрузки изображения */
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  color: #000;
  line-height: 1.8;
  min-height: 100vh;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  /* Центрирование контента по вертикали и горизонтали */
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  overflow-x: hidden;
}

/* Контейнер для основного контента - центрирование */
.content {
  max-width: 800px;
  width: 100%;
  text-align: center;
  padding: 60px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-top: -5%;
  /* Скрываем контент до полной загрузки всех ресурсов */
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
}

/* Показываем контент после загрузки всех ресурсов */
.content.loaded {
  opacity: 1;
  visibility: visible;
}

/* Основной текст страницы - обновленные стили для всех разрешений */
.main-text {
  /* font-family: "Cormorant Garamond", sans-serif; */
  font-size: 35px;
  font-weight: 800;
  line-height: 1.2;
  margin-bottom: 1%;
  color: #000000;
  text-align: center;
  text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.5), 0 0 5px rgba(255, 255, 255, 0.3);
  /* Правильный перенос слов - слова переносятся целиком, не по буквам */
  word-break: normal;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

/* Стили для слов внутри текста - wave анимация */
.main-text span {
  display: inline-block;
  /* Слова переносятся целиком, не разрываются */
  white-space: nowrap;
}

/* ============================================
   НАСТРОЙКИ АНИМАЦИИ ТЕКСТА (WAVE)
   ============================================
   ⚙️ НАСТРОЙКА: Меняйте параметры здесь для изменения эффекта появления букв
   - Длительность анимации меняется в .main-text span animation: wave 1.2s ...
   - Задержки между буквами управляются через JavaScript в script.js
   ============================================ */

/* Анимация wave для букв на десктопе */
@media (min-width: 769px) {
  .main-text span {
    opacity: 0;
    /* ⚙️ НАСТРОЙКА: Длительность анимации одной буквы - меняйте 1.2s (в секундах) */
    /* ⚠️ ВАЖНО: Это значение должно совпадать с CONFIG.waveDuration в script.js */
    animation: wave 1.2s ease-out forwards;
  }
}

/* ⚙️ НАСТРОЙКА АНИМАЦИИ: Буквы высыпаются */
@keyframes wave {
  0% {
    opacity: 0;
    /* ⚙️ НАСТРОЙКА: Откуда падают буквы - меняйте translateY(-40px) (больше = выше старт) */
    /* ⚙️ НАСТРОЙКА: Угол падения - меняйте rotateX(90deg) (0deg = без поворота, 90deg = вертикально) */
    transform: translateY(-40px) rotateX(90deg);
  }
  60% {
    /* ⚙️ НАСТРОЙКА: Эффект "отскока" - меняйте translateY(5px) (больше = сильнее отскок) */
    transform: translateY(5px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Кнопка с автоматическим нажатием/отжатием (только на десктопе) */
.btn {
  padding: 14px 32px;
  font-size: 25px;
  display: block;
  text-align: center;
  width: 100%;
  max-width: 600px;
  margin: 20px auto;
  margin-top: 5% !important;
  margin-bottom: 9%;
  font-weight: 800 !important;
  /* Базовый цвет кнопки - бордовый */
  background-color: #8B0000;
  color: #fff;
  text-decoration: none;
  /* Шрифт для кнопки */
  font-family: "Rubik", "Comfortaa", "Cormorant Garamond", sans-serif;
  border: none;
  border-radius: 999px; /* по умолчанию — мягкая «капсула» */
  cursor: pointer;
  position: relative;
  overflow: visible;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  /* Анимация появления кнопки - скрыта до завершения анимации текста */
  opacity: 0;
  /* Черная контрастная тень направленная в сторону кнопки */
  box-shadow: 
    0 10px 30px rgba(0, 0, 0, 0.4),
    0 5px 15px rgba(0, 0, 0, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.1);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

/* ============================================
   НАСТРОЙКИ ПОЯВЛЕНИЯ КНОПКИ
   ============================================
   ⚠️ ВАЖНО: Задержки анимации управляются через JavaScript!
   Меняйте их в файле script.js в объекте CONFIG
   ============================================ */

/* ============================================
   ⚙️ НАСТРОЙКИ ПОЯВЛЕНИЯ КНОПКИ
   ============================================
   ⚠️ ВАЖНО: Задержки появления кнопки (animation-delay) 
   управляются через JavaScript в script.js в объекте CONFIG
   
   Здесь можно менять:
   - Длительность анимации появления (buttonFlyIn 0.8s - меняйте 0.8s)
   - Длительность автоматического нажатия (buttonPress 2s - меняйте 2s)
   ============================================ */

/* Анимация только на десктопе - появляется после текста */
@media (min-width: 769px) {
  .btn {
    /* Делаем кнопку круглой «красной кнопкой» на десктопе */
    width: 260px;
    height: 260px;
    max-width: none;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    margin-top: 5% !important;
    margin-bottom: 9%;

    /* Глянцевый красный градиент и ободок */
    background-image:
      radial-gradient(circle at 30% 25%, #ffffff 0, #ffd6d6 18%, #ff3b3b 52%, #b10000 100%);
    border: 8px solid #f7f3ee;
    box-shadow:
      0 18px 40px rgba(0, 0, 0, 0.55),
      0 0 0 6px rgba(255, 255, 255, 0.9) inset;

    /* Анимации появления и автонжатия остаются прежними */
    animation: buttonFlyIn 0.8s ease-out forwards, buttonPress 2s ease-in-out infinite;
    animation-delay: 0s, 0s;
  }

  /* ============================================
     АВТОМАТИЧЕСКОЕ НАЖАТИЕ/ОТЖАТИЕ КНОПКИ
     ============================================
     ⚙️ НАСТРОЙКА: Меняйте параметры здесь для изменения эффекта нажатия
     - translateY() - насколько кнопка опускается при нажатии (3px = вниз на 3px)
     - scale() - насколько кнопка уменьшается (0.98 = 98% размера)
     - Скорость анимации меняется в .btn animation: ... buttonPress 2s ... (2s = 2 секунды)
     ============================================ */
  @keyframes buttonPress {
    0%, 100% {
      transform: translateY(0) scale(1);
      box-shadow: 
        0 10px 30px rgba(0, 0, 0, 0.4),
        0 5px 15px rgba(0, 0, 0, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.1);
    }
    50% {
      /* ⚙️ НАСТРОЙКА: Глубина нажатия - меняйте translateY (больше = глубже нажатие) */
      transform: translateY(3px) scale(0.98);
      /* ⚙️ НАСТРОЙКА: Размер при нажатии - меняйте scale (меньше = сильнее сжатие) */
      box-shadow: 
        0 5px 15px rgba(0, 0, 0, 0.3),
        0 2px 8px rgba(0, 0, 0, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.1);
    }
  }

  /* При наведении останавливаем автоматическую анимацию и выдвигаем кнопку */
  .btn:hover {
    /* Останавливаем анимацию buttonPress, но сохраняем текущее состояние для продолжения после отведения */
    /* Используем animation-play-state: paused для сохранения состояния анимации */
    animation-play-state: paused !important;
    /* Применяем transform через transition, чтобы не конфликтовать с анимацией */
    /* При отведении курсора анимация продолжится с того момента, где остановилась */
    transform: translateY(-5px) scale(1.02);
    box-shadow: 
      0 15px 35px rgba(0, 0, 0, 0.5),
      0 8px 20px rgba(0, 0, 0, 0.4),
      inset 0 1px 0 rgba(255, 255, 255, 0.1);
    /* ⚙️ НАСТРОЙКА: Цвет кнопки при наведении - немного светлее бордового */
    background-color: #A52A2A;
    transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
  }

  /* При hover стрелки исчезают */
  .btn:hover::before {
    /* Останавливаем анимацию и скрываем стрелку */
    animation-play-state: paused !important;
    opacity: 0 !important;
    transition: opacity 0.3s ease;
  }
  
  .btn:hover::after {
    animation-play-state: paused !important;
    opacity: 0 !important;
    transition: opacity 0.3s ease;
  }
  
  .btn:hover .btn-arrow-top-right {
    animation-play-state: paused !important;
    opacity: 0 !important;
    transition: opacity 0.3s ease;
  }
  
  .btn:hover .btn-arrow-bottom-left {
    animation-play-state: paused !important;
    opacity: 0 !important;
    transition: opacity 0.3s ease;
  }

  /* При нажатии зажимаем кнопку */
  .btn:active {
    /* Останавливаем анимации, но сохраняем для продолжения после отведения */
    animation-play-state: paused !important;
    /* Нажимаем кнопку */
    transform: translateY(2px) scale(0.97);
    box-shadow: 
      0 5px 15px rgba(0, 0, 0, 0.3),
      0 2px 8px rgba(0, 0, 0, 0.2),
      inset 0 2px 4px rgba(0, 0, 0, 0.2);
    transition: transform 0.1s ease, box-shadow 0.1s ease;
    /* ⚙️ НАСТРОЙКА: Цвет кнопки при нажатии - темнее бордового */
    background-color: #6B0000;
  }

  /* При active стрелки также исчезают */
  .btn:active::before {
    animation-play-state: paused !important;
    opacity: 0 !important;
  }
  
  .btn:active::after {
    animation-play-state: paused !important;
    opacity: 0 !important;
  }
  
  .btn:active .btn-arrow-top-right {
    animation-play-state: paused !important;
    opacity: 0 !important;
  }
  
  .btn:active .btn-arrow-bottom-left {
    animation-play-state: paused !important;
    opacity: 0 !important;
  }
}

/* ============================================
   АНИМАЦИЯ ПОЯВЛЕНИЯ КНОПКИ
   ============================================
   ⚙️ НАСТРОЙКА: Меняйте параметры здесь для изменения эффекта появления
   - translateY() - откуда прилетает кнопка (50px = снизу)
   - scale() - начальный размер (0.9 = 90% размера)
   - Длительность анимации меняется в .btn animation: buttonFlyIn 0.8s ...
   ============================================ */
@keyframes buttonFlyIn {
  0% {
    opacity: 0;
    /* ⚙️ НАСТРОЙКА: Откуда прилетает кнопка - меняйте translateY (положительное = снизу, отрицательное = сверху) */
    transform: translateY(50px) scale(0.9);
  }
  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

/* ============================================
   НОВАЯ КНОПКА С ЭФФЕКТОМ УТОПЛЕНИЯ
   ============================================
   Круглая кнопка с символом включения (круг с вертикальной черточкой)
   на серебряном фоне контейнера
   ============================================ */

/* Контейнер для круглого фона (больше кнопки) - серебряный металлический */
.round-container {
  margin: 2em auto;
  display: inline-block;
  position: relative;
  width: 250px;
  height: 250px;
  border-radius: 150px;
  /* Серебряный металлический градиент */
  background: linear-gradient(to bottom, 
    rgb(140, 140, 150) 0%,              /* Темно-серебряный сверху */
    rgb(180, 180, 190) 30%,              /* Средний серебряный */
    rgb(220, 220, 230) 60%,              /* Светло-серебряный */
    rgb(240, 240, 250) 85%,              /* Очень светло-серебряный */
    rgb(250, 250, 255) 100%);            /* Почти белый серебряный снизу */
  /* Анимация появления - скрыта до завершения анимации текста */
  opacity: 0;
  /* Применяем анимацию появления */
  animation: buttonFlyIn 0.8s ease-out forwards;
  animation-delay: 0s;
}

/* Кнопка внутри контейнера */
/* Комбинация: картинка кнопки (photo_5276.png) + глянцевые CSS-эффекты поверх */
.round-content {
  display: block;
  cursor: pointer;
  backface-visibility: hidden;
  /* Плавная анимация для всех свойств - тень нарастает и убывает плавно */
  transition: transform 400ms ease-in-out, box-shadow 400ms ease-in-out, background 400ms ease-in-out;
  
  /* Комбинация: картинка кнопки + глянцевые CSS-эффекты */
  /* Многослойный background: картинка + глянцевые градиенты поверх */
  /* background-image: radial-gradient(ellipse at 50% 25%, rgba(255, 255, 255, 0.54) 0%, rgba(255, 255, 255, 0.36) 20%, rgba(255, 255, 255, 0.18) 35%, rgba(255, 255, 255, 0) 50%, transparent 100%), linear-gradient(to bottom, rgba(255, 255, 255, 0.30) 0%, rgba(255, 255, 255, 0.12) 25%, rgba(255, 255, 255, 0) 40%, transparent 100%), url(/photo_5276.png); */
  background-size: cover;  /* Покрывает всю кнопку */
  background-position: center;  /* Центрирование */
  background-repeat: no-repeat;  /* Без повторения */
  /* Оптимизация загрузки изображения */
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  /* Fallback градиент на случай, если изображение не загрузится */
  background-color: rgb(237 46 46);
  border: none;
  
  /* Глянцевый эффект через тени (уменьшен на 15% + еще 30%) */
  box-shadow:
    0 4px 10px rgba(0,0,0,0.3),
    inset 0 3px 6px rgba(255,255,255,0.30),  /* Блик сверху (уменьшен на 15% + еще 30%) */
    inset 0 -3px 6px rgba(0,0,0,0.5),  /* Тень снизу (без изменений) */
    inset 0 0 20px rgba(255,255,255,0.12);  /* Общий глянцевый отблеск (уменьшен на 15% + еще 30%) */
  
  position: absolute;
  text-align: center;
  color: transparent;  /* Прозрачный текст, символ будет через псевдоэлемент */
  margin: 25px;
  width: 200px;
  height: 200px;
  border-radius: 100px;
  text-decoration: none;
  overflow: visible;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}

/* Прозрачный значок Telegram на кнопке */
.round-content::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 60px;
  height: 80px;
  background-image: url(/telegram-icon.png);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  opacity: 0.9;
  pointer-events: none;
  transition: opacity 400ms ease-in-out, transform 400ms ease-in-out;
}

/* Убираем второй псевдоэлемент (был для вертикальной черточки) */
.round-content::after {
  content: '';
  display: none;
}

/* Эффект при наведении - усиленный глянцевый эффект */
.round-content:hover {
  /* Кнопка поднимается и поворачивается при наведении */
  transform: translateY(-2px) rotate(-5deg);
  
  /* Глянцевый эффект при наведении (уменьшен на 15% + еще 30%) */
  box-shadow: 
    0 6px 14px rgba(0,0,0,0.3),
    inset 0 4px 8px rgba(255,255,255,0.36),  /* Блик при наведении (уменьшен на 15% + еще 30%) */
    inset 0 -4px 8px rgba(0,0,0,0.5),  /* Тень (без изменений) */
    inset 0 0 25px rgba(255,255,255,0.18);  /* Глянцевый отблеск (уменьшен на 15% + еще 30%) */
}

/* Эффект иконки Telegram при наведении */
.round-content:hover::before {
  opacity: 1;  /* Иконка становится полностью непрозрачной */
  transform: translate(-50%, -50%) scale(1.1);  /* Немного увеличивается */
}

/* Эффект нажатия */
.round-content:active {
  transform: translateY(0) rotate(-5deg);
}

/* Эффект нажатия отключен - :active не используется */

/* Адаптивность для мобильных устройств */
@media (max-width: 768px) {
  /* Оптимизация фона для мобильных */
  body {
    /* На мобильных убираем fixed attachment для лучшей производительности */
    background-attachment: scroll;
    /* Улучшаем загрузку фона на мобильных */
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    /* Убеждаемся, что фон загружается (новый фон для тестирования) */
    background-image: url('/creative-background-with-white-lines.jpg');
  }
  
  /* Фон для вертикальной ориентации (portrait) - только для мобильных до 480px */
  @media (orientation: portrait) and (max-width: 480px) {
    body {
      background-image: url('/0124_100_50.jpg');
    }
  }
  
  /* Фон для горизонтальной ориентации (landscape) - только для мобильных до 480px */
  @media (orientation: landscape) and (max-width: 480px) {
    body {
      background-image: url('/creative-background-with-white-lines.jpg');
    }
  }
  
  .round-container {
    width: 200px;
    height: 200px;
    border-radius: 120px;
  }
  
  .round-content {
    width: 150px;
    height: 150px;
    margin: 25px;
    border-radius: 75px;
    /* Оптимизация изображения кнопки для мобильных */
    /* background-image: url('/photo_5276.png'); */
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-color: rgb(237 46 46);
  }
  
  .round-content::before {
    width: 40px;
    height: 40px;
    /* border убран - был квадратный контур */
  }
  
  .round-content::after {
    width: 5px;
    height: 16px;
    transform: translate(-50%, -50%) translateY(-16px);
  }
}

/* ============================================
   НАСТРОЙКИ СТРЕЛОЧЕК ПО УГЛАМ КНОПКИ
   ============================================
   Здесь можно менять:
   - Позицию стрелочек (top, left, right, bottom)
   - Размер стрелочек (font-size)
   - Цвет стрелочек (color)
   - Направление стрелочек (transform: rotate())
   - Скорость анимации (animation duration)
   ============================================ */

/* ============================================
   ⚙️ НАСТРОЙКИ СТРЕЛОЧЕК ПО УГЛАМ КНОПКИ
   ============================================
   Все настройки стрелочек находятся здесь.
   Меняйте значения прямо в этом блоке.
   ============================================ */

/* Анимированные стрелочки по углам кнопки (только на десктопе) */
@media (min-width: 769px) {
  .btn::before,
  .btn::after {
    content: '→';
    position: absolute;
    /* ⚙️ НАСТРОЙКА: Размер стрелочки - меняйте font-size */
    font-size: 30px;
    /* ⚙️ НАСТРОЙКА: Цвет стрелочки - бордовый для happylaw */
    color: #8B0000;
    opacity: 0.9;
    /* Убрали transition, так как стрелки полностью управляются через анимации */
    /* ⚙️ НАСТРОЙКА: Жирность стрелочки - меняйте font-weight */
    font-weight: 800;
    /* Оптимизация для синхронизации анимаций */
    will-change: transform, opacity;
    transform-origin: center center;
  }

  /* Стрелочка в левом верхнем углу */
  .btn::before {
    /* ⚙️ НАСТРОЙКА: Позиция стрелочки - меняйте top и left */
    top: -50px;
    left: -30px;
    /* ⚙️ НАСТРОЙКА: Направление стрелочки управляется через анимацию в @keyframes arrowMoveTopLeft */
    /* ⚙️ НАСТРОЙКА: Анимация - меняйте 2s (скорость) или параметры в @keyframes arrowMoveTopLeft ниже */
    /* ⚙️ ВАЖНО: animation-delay: 0s для синхронизации всех стрелок */
    animation: arrowMoveTopLeft 2s ease-in-out infinite;
    animation-delay: 0s;
  }

  /* Стрелочка в правом нижнем углу */
  .btn::after {
    /* ⚙️ НАСТРОЙКА: Позиция стрелочки - меняйте bottom и right */
    bottom: -45px;
    right: -35px;
    /* ⚙️ НАСТРОЙКА: Направление стрелочки управляется через анимацию в @keyframes arrowMoveBottomRight */
    /* ⚙️ НАСТРОЙКА: Анимация - меняйте 2s (скорость) или параметры в @keyframes arrowMoveBottomRight ниже */
    /* ⚙️ ВАЖНО: animation-delay: 0s для синхронизации всех стрелок */
    animation: arrowMoveBottomRight 2s ease-in-out infinite;
    animation-delay: 0s;
  }

  /* Дополнительные стрелочки через span */
  .btn-arrow-top-right,
  .btn-arrow-bottom-left {
    position: absolute;
    /* ⚙️ НАСТРОЙКА: Размер стрелочки - меняйте font-size */
    font-size: 30px;
    /* ⚙️ НАСТРОЙКА: Цвет стрелочки - бордовый для happylaw */
    color: #8B0000;
    opacity: 0.9;
    /* Убрали transition, так как стрелки полностью управляются через анимации */
    /* ⚙️ НАСТРОЙКА: Жирность стрелочки - меняйте font-weight */
    font-weight: 800;
    /* Оптимизация для синхронизации анимаций */
    will-change: transform, opacity;
    transform-origin: center center;
  }

  /* Стрелочка в правом верхнем углу */
  .btn-arrow-top-right {
    /* ⚙️ НАСТРОЙКА: Позиция стрелочки - меняйте top и right */
    top: -50px;
    right: -30px;
    /* ⚙️ НАСТРОЙКА: Направление стрелочки управляется через анимацию в @keyframes arrowMoveTopRight */
    /* ⚙️ НАСТРОЙКА: Анимация - меняйте 2s (скорость) или параметры в @keyframes arrowMoveTopRight ниже */
    /* ⚙️ ВАЖНО: animation-delay: 0s для синхронизации всех стрелок */
    animation: arrowMoveTopRight 2s ease-in-out infinite;
    animation-delay: 0s;
  }

  /* Стрелочка в левом нижнем углу */
  .btn-arrow-bottom-left {
    /* ⚙️ НАСТРОЙКА: Позиция стрелочки - меняйте bottom и left */
    bottom: -60px;
    left: -80px;
    /* ⚙️ НАСТРОЙКА: Направление стрелочки управляется через анимацию в @keyframes arrowMoveBottomLeft */
    /* ⚙️ НАСТРОЙКА: Анимация - меняйте 2s (скорость) или параметры в @keyframes arrowMoveBottomLeft ниже */
    /* ⚙️ ВАЖНО: animation-delay: 0s для синхронизации всех стрелок */
    animation: arrowMoveBottomLeft 2s ease-in-out infinite;
    animation-delay: 0s;
  }
}

/* ============================================
   АНИМАЦИИ СТРЕЛОЧЕК
   ============================================
   Здесь можно менять:
   - Расстояние движения (translate значения)
   - Прозрачность (opacity)
   - Скорость анимации (изменяется в animation: ... 2s ...)
   ============================================ */

/* ============================================
   ⚙️ СИНХРОНИЗИРОВАННЫЕ АНИМАЦИИ СТРЕЛОЧЕК
   ============================================
   Все стрелочки анимируются одновременно:
   - 0%, 100% - стрелочки отодвигаются от кнопки (opacity: 0.7)
   - 50% - стрелочки приближаются к кнопке (opacity: 1)
   
   ⚙️ НАСТРОЙКА: Меняйте значения translate() для изменения расстояния движения
   ⚙️ НАСТРОЙКА: Меняйте значения rotate() для изменения направления
   ⚙️ НАСТРОЙКА: Меняйте opacity для изменения прозрачности
   ============================================ */

/* ⚙️ НАСТРОЙКА АНИМАЦИИ: Стрелочка в левом верхнем углу */
@keyframes arrowMoveTopLeft {
  0%, 100% {
    /* ⚙️ НАСТРОЙКА: Позиция отодвигания - меняйте translate() */
    transform: rotate(30deg) translate(-45px, -5px);
    /* ⚙️ НАСТРОЙКА: Прозрачность при отодвигании - меняйте opacity */
    opacity: 0.7;
  }
  50% {
    /* ⚙️ НАСТРОЙКА: Позиция приближения - меняйте translate() */
    transform: rotate(50deg) translate(5px, 5px);
    /* ⚙️ НАСТРОЙКА: Прозрачность при приближении - меняйте opacity */
    opacity: 1;
  }
}

/* ⚙️ НАСТРОЙКА АНИМАЦИИ: Стрелочка в правом нижнем углу */
@keyframes arrowMoveBottomRight {
  0%, 100% {
    /* ⚙️ НАСТРОЙКА: Позиция отодвигания - меняйте translate() */
    transform: rotate(-135deg) translate(-35px, -5px);
    /* ⚙️ НАСТРОЙКА: Прозрачность при отодвигании - меняйте opacity */
    opacity: 0.7;
  }
  50% {
    /* ⚙️ НАСТРОЙКА: Позиция приближения - меняйте translate() */
    transform: rotate(-150deg) translate(5px, 5px);
    /* ⚙️ НАСТРОЙКА: Прозрачность при приближении - меняйте opacity */
    opacity: 1;
  }
}

/* ⚙️ НАСТРОЙКА АНИМАЦИИ: Стрелочка в правом верхнем углу */
@keyframes arrowMoveTopRight {
  0%, 100% {
    /* ⚙️ НАСТРОЙКА: Позиция отодвигания - меняйте translate() */
    transform: rotate(130deg) translate(5px, -5px);
    /* ⚙️ НАСТРОЙКА: Прозрачность при отодвигании - меняйте opacity */
    opacity: 0.7;
  }
  50% {
    /* ⚙️ НАСТРОЙКА: Позиция приближения - меняйте translate() */
    transform: rotate(150deg) translate(-30px, 5px);
    /* ⚙️ НАСТРОЙКА: Прозрачность при приближении - меняйте opacity */
    opacity: 1;
  }
}

/* ⚙️ НАСТРОЙКА АНИМАЦИИ: Стрелочка в левом нижнем углу */
@keyframes arrowMoveBottomLeft {
  0%, 100% {
    /* ⚙️ НАСТРОЙКА: Позиция отодвигания - меняйте translate() */
    transform: rotate(-30deg) translate(45px, -5px);
    /* ⚙️ НАСТРОЙКА: Прозрачность при отодвигании - меняйте opacity */
    opacity: 0.7;
  }
  50% {
    /* ⚙️ НАСТРОЙКА: Позиция приближения - меняйте translate() */
    transform: rotate(-40deg) translate(-5px, 5px);
    /* ⚙️ НАСТРОЙКА: Прозрачность при приближении - меняйте opacity */
    opacity: 1;
  }
}


/* Адаптивность для планшетов - с анимациями */
@media (max-width: 768px) and (min-width: 481px) {
  body {
    padding: 30px 20px;
    /* font-size: 20px; */
    /* Фон для планшетов - новый фон */
    background-image: url('/creative-background-with-white-lines.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: scroll;
  }

  .content {
    padding: 40px 0;
  }

  .main-text {
    /* font-family: "Cormorant Garamond", sans-serif; */
    font-size: 30px;
    font-weight: 800;
    line-height: 1.2;
    margin-bottom: 2%;
    color: #000000;
    text-align: center;
    text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.5), 0 0 5px rgba(255, 255, 255, 0.3);
  }

  /* Анимация текста на планшетах - упрощенная версия */
  .main-text span {
    opacity: 0;
    animation: waveTablet 0.9s ease-out forwards;
  }

  /* Упрощенная анимация wave для планшетов */
  @keyframes waveTablet {
    0% {
      opacity: 0;
      transform: translateY(-30px);
    }
    100% {
      opacity: 1;
      transform: translateY(0);
    }
  }

  .btn {
    padding: 14px 32px;
    font-size: 22px;
    max-width: 400px;
    /* Важно: opacity управляется через JavaScript, не переопределяем здесь */
    /* Упрощенная анимация появления для планшетов */
    /* animation будет установлена через JavaScript */
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.35);
    position: relative;
    overflow: visible;
  }
  
  /* Иконка Telegram для планшетов */
  .round-content::before {
    width: 40px;
    height: 40px;
    /* border убран - был квадратный контур */
  }
  
  /* Правильный перенос слов для планшетов */
  .main-text {
    word-break: normal;
    word-wrap: break-word;
    overflow-wrap: break-word;
  }

  /* Упрощенная анимация появления кнопки на планшетах */
  @keyframes buttonFlyInTablet {
    0% {
      opacity: 0;
      transform: translateY(40px) scale(0.92);
    }
    100% {
      opacity: 1;
      transform: translateY(0) scale(1);
    }
  }

  /* Упрощенная анимация нажатия кнопки на планшетах */
  @keyframes buttonPressTablet {
    0%, 100% {
      transform: translateY(0) scale(1);
      box-shadow: 0 8px 20px rgba(0, 0, 0, 0.35);
    }
    50% {
      transform: translateY(2px) scale(0.98);
      box-shadow: 0 5px 12px rgba(0, 0, 0, 0.3);
    }
  }

  /* Включаем стрелочки на планшетах - упрощенные анимации */
  .btn::before,
  .btn::after {
    content: '→';
    position: absolute;
    font-size: 24px;
    color: #8B0000;
    opacity: 0.8;
    font-weight: 800;
    will-change: transform, opacity;
    transform-origin: center center;
  }

  .btn::before {
    top: -40px;
    left: -25px;
    animation: arrowMoveTopLeftTablet 2.2s ease-in-out infinite;
    animation-delay: 0s;
  }

  .btn::after {
    bottom: -40px;
    right: -30px;
    animation: arrowMoveBottomRightTablet 2.2s ease-in-out infinite;
    animation-delay: 0s;
  }

  .btn-arrow-top-right,
  .btn-arrow-bottom-left {
    position: absolute;
    font-size: 24px;
    color: #8B0000;
    opacity: 0.8;
    font-weight: 800;
    will-change: transform, opacity;
    transform-origin: center center;
  }

  .btn-arrow-top-right {
    top: -40px;
    right: -25px;
    animation: arrowMoveTopRightTablet 2.2s ease-in-out infinite;
    animation-delay: 0s;
  }

  .btn-arrow-bottom-left {
    bottom: -50px;
    left: -60px;
    animation: arrowMoveBottomLeftTablet 2.2s ease-in-out infinite;
    animation-delay: 0s;
  }

  /* Упрощенные анимации стрелочек для планшетов */
  @keyframes arrowMoveTopLeftTablet {
    0%, 100% {
      transform: rotate(30deg) translate(-35px, -5px);
      opacity: 0.6;
    }
    50% {
      transform: rotate(50deg) translate(3px, 3px);
      opacity: 0.9;
    }
  }

  @keyframes arrowMoveBottomRightTablet {
    0%, 100% {
      transform: rotate(-135deg) translate(-30px, -5px);
      opacity: 0.6;
    }
    50% {
      transform: rotate(-150deg) translate(3px, 3px);
      opacity: 0.9;
    }
  }

  @keyframes arrowMoveTopRightTablet {
    0%, 100% {
      transform: rotate(130deg) translate(3px, -5px);
      opacity: 0.6;
    }
    50% {
      transform: rotate(150deg) translate(-25px, 3px);
      opacity: 0.9;
    }
  }

  @keyframes arrowMoveBottomLeftTablet {
    0%, 100% {
      transform: rotate(-30deg) translate(35px, -5px);
      opacity: 0.6;
    }
    50% {
      transform: rotate(-40deg) translate(-3px, 3px);
      opacity: 0.9;
    }
  }

  /* При hover стрелки исчезают на планшетах */
  .btn:hover::before,
  .btn:hover::after,
  .btn:hover .btn-arrow-top-right,
  .btn:hover .btn-arrow-bottom-left {
    animation-play-state: paused !important;
    opacity: 0 !important;
    transition: opacity 0.3s ease;
  }

  /* Упрощенный hover для планшетов */
  .btn:hover {
    transform: scale(1.02);
    background-color: #A52A2A;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.4);
    transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
  }

  /* Упрощенное нажатие для планшетов */
  .btn:active {
    transform: scale(0.97);
    background-color: #6B0000;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
    transition: transform 0.1s ease, box-shadow 0.1s ease;
  }
}


/* Адаптивность для мобильных устройств - упрощенные анимации */
@media (max-width: 480px) {
  body {
    padding: 20px 15px;
    /* font-size: 18px; */
    line-height: 1.6;
    /* На маленьких экранах фон должен точно загружаться (новый фон для тестирования) */
    background-image: url('/creative-background-with-white-lines.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-attachment: scroll;
  }

  .content {
    padding: 30px 0;
  }

  .main-text {
    /* font-family: "Cormorant Garamond", sans-serif; */
    font-size: 30px;
    font-weight: 800;
    line-height: 1.2;
    margin-bottom: 2%;
    color: #000000;
    text-align: center;
    text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.5), 0 0 5px rgba(255, 255, 255, 0.3);
  }

  /* Анимация текста на мобильных - упрощенная версия */
  .main-text span {
    opacity: 0;
    animation: waveMobile 0.8s ease-out forwards;
  }

  /* Упрощенная анимация wave для мобильных */
  @keyframes waveMobile {
    0% {
      opacity: 0;
      transform: translateY(-20px);
    }
    100% {
      opacity: 1;
      transform: translateY(0);
    }
  }

  /* Кнопка для мобильных - с упрощенными анимациями */
  .btn {
    padding: 14px 24px;
    font-size: 20px;
    width: 100%;
    max-width: 100%;
    margin: 20px 0;
    margin-top: 5% !important;
    opacity: 0;
    /* Упрощенная анимация появления */
    animation: buttonFlyInMobile 0.6s ease-out forwards, buttonPressMobile 2.5s ease-in-out infinite;
    animation-delay: 0s, 1.5s;
    /* Простая черная тень для мобильных */
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.3);
  }

  /* Упрощенная анимация появления кнопки на мобильных */
  @keyframes buttonFlyInMobile {
    0% {
      opacity: 0;
      transform: translateY(30px) scale(0.95);
    }
    100% {
      opacity: 1;
      transform: translateY(0) scale(1);
    }
  }

  /* Упрощенная анимация нажатия кнопки на мобильных */
  @keyframes buttonPressMobile {
    0%, 100% {
      transform: translateY(0) scale(1);
      box-shadow: 0 6px 15px rgba(0, 0, 0, 0.3);
    }
    50% {
      transform: translateY(2px) scale(0.98);
      box-shadow: 0 4px 10px rgba(0, 0, 0, 0.25);
    }
  }

  /* Иконка Telegram для маленьких мобильных */
  .round-content::before {
    width: 40px;
    height: 40px;
    /* border убран - был квадратный контур */
  }
  
  /* Правильный перенос слов для маленьких мобильных */
  .main-text {
    word-break: normal;
    word-wrap: break-word;
    overflow-wrap: break-word;
  }
  
  /* Убираем стрелочки на мобильных */
  .btn::before,
  .btn::after,
  .btn-arrow-top-right,
  .btn-arrow-bottom-left {
    display: none; /* ВРЕМЕННО: стрелочки скрыты на мобильных (и сейчас мы прячем их и на десктопе через display:none ниже, чтобы их легко вернуть позже) */
  }

  /* Упрощенный hover для мобильных */
  .btn:hover {
    transform: scale(1.02);
    background-color: #A52A2A;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.35);
    transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
  }

  /* Упрощенное нажатие для мобильных */
  .btn:active {
    transform: scale(0.96);
    background-color: #6B0000;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.25);
    transition: transform 0.1s ease, box-shadow 0.1s ease;
  }
}

/* Отключение анимаций для пользователей с предпочтением reduced motion */
@media (prefers-reduced-motion: reduce) {
  .main-text,
  .btn {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
  
  .btn::before,
  .btn::after,
  .btn-arrow-top-right,
  .btn-arrow-bottom-left {
    animation: none !important;
  }

  .btn:hover,
  .btn:active {
    transform: none !important;
  }
}
