
/* Основные стили для тела */
body {
  margin: 0;
  padding: 0;
}


/* Прокаченный стиль для футера */
footer {
  margin-top: 60px;
  text-align: center;
  padding: 10px;
  background-color: #333;
  color: white;
}

.hero-section {
  margin: 0;
  box-sizing: border-box;
  justify-content: center;
  align-items: center;
  display: flex;
  background-color: #383838;
  padding: 100px 0;
  text-align: center;
  color: #ffffff;
  position: relative;
  height: 70vh;
  background-image: url('/images/night.png');
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
}
/* Градиент и размытие для темной темы */
.hero-section.light-theme-gradient::before {
  height: 10%;
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0%;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
  pointer-events: none;
  z-index: 1;
}
/* Градиент и размытие для светлой темы */
.hero-section.dark-theme-gradient::before {
  height: 10%;
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0%;
  background: linear-gradient(to bottom, rgba(18, 18, 18, 0) 0%, rgba(18, 18, 18, 1) 100%);
  pointer-events: none;
  z-index: 1;
}


/* Градиент и размытие для светлой темы */
.footer.dark-theme-gradient::before {
  height: 20%;
  content: "";
  position: absolute;
  top: 0%;
  left: 0;
  right: 0;
  bottom: 0%;
  background: linear-gradient(to bottom, rgba(18, 18, 18, 1) 25%, rgba(18, 18, 18, 0) 60%);
  pointer-events: none;
  z-index: 2;
}
/* Градиент и размытие для темной темы */
.footer.light-theme-gradient::before {
  height: 25%;
  content: "";
  position: absolute;
  top: 0%;
  left: 0;
  right: 0;
  bottom: 0%;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0) 40%);
  pointer-events: none;
  z-index: 2;
}


/* Градиент и размытие для светлой темы */
.timeline.dark-theme-gradient::after {
  height: 25%;
  content: "";
  position: absolute;
  top: 0%;
  left: 0;
  right: 0;
  bottom: 0%;
  background: linear-gradient(to bottom, rgba(18, 18, 18, 1) 20%, rgba(18, 18, 18, 0) 40%);
  pointer-events: none;
  z-index: 1;
}
/* Градиент и размытие для темной темы */
.timeline.light-theme-gradient::after {
  height: 25%;
  content: "";
  position: absolute;
  top: 0%;
  left: 0;
  right: 0;
  bottom: 0%;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 0) 40%);
  pointer-events: none;
  z-index: 1;
}

/* Градиент и размытие для светлой темы */
.timeline.dark-theme-gradient::before {
  height: 25%;
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0%;
  background: linear-gradient(to bottom, rgba(18, 18, 18, 0) 40%, rgba(18, 18, 18, 1) 80%);
  pointer-events: none;
  z-index: 1;
}
/* Градиент и размытие для темной темы */
.timeline.light-theme-gradient::before {
  content: "";
  position: absolute;
  top: 85%;
  left: 0;
  right: 0;
  bottom: -0%;
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 40%, rgb(255, 255, 255) 80%);
  pointer-events: none;
  z-index: 1;
}
.delay {
  width: auto;
  height: 5vh;
}


.hero-section .layer {
  position: absolute;
  top: 60%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 70%;
  height: auto;
  object-fit: cover;
}

  
.hero-section .logo {
    z-index: 12; /* Передний слой */
}

@keyframes fall {
    0% {
        transform: translateY(0);
    }
    100% {
        transform: translateY(100vh); /* Снег падает до нижней части экрана */
    }
}

 
@keyframes rotate {
    0% {
      transform: rotate(0deg); /* Начальная позиция (не вращается) */
    }
    100% {
      transform: rotate(360deg); /* Вращение на 360 градусов */
    }
  }



  /* Основные стили для тела */
body {
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  margin: 0;
  padding: 0;
}


/* Стили для кнопки смены темы (если она есть) */
.theme-switch {
  cursor: pointer;
  padding: 6px 12px;
  background-color: #00000000;
  color: #ffffff;
  border: none;
  border-radius: 5px;
  font-size: 16px;
  margin-left: 20px;
}

/* Стили для темной и светлой темы */
body.light-theme {
  background-color: linear-gradient(180deg, rgb(255, 255, 255), rgb(247, 247, 247) 83%);;
  color: #333;
}

body.dark-theme {
  background-color: rgb(18, 18, 18);
  color: white;
}

/* Прокаченный стиль для футера */
footer {  
  margin-top: 60px;
  text-align: center;
  padding: 10px;
  background-color: #333;
  color: white;
}

/* Стили для контейнера ссылок */
.navbar .links {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap: 20px; /* Расстояние между вкладками */

  margin-top: 10px;

  position: relative;
}
.secret {
  display: none;
}

/* Стили для ссылок-закладок */
.navbar .links a {
  position: relative;
  align-items: center;
  justify-content: center;
  padding: 10px 20px;
  text-decoration: none;
  color: white;
  background-color: #575757;
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
  border-bottom: 2px solid transparent;
  transition: background-color 0.3s, border-bottom 0.3s;
}

/* Эффект при наведении на вкладку */
.navbar .links a:hover {
  background-color: #8f8f8f;
  border-bottom: 2px solid #fff;
}

/* Стили для активной вкладки */
.navbar .links a.active {
  background-color: #818181;
  border-bottom: 2px solid white;
}
/* Стили для иконок */
.navbar .links a i {
  margin-right: 8px; /* Отступ для иконок */
}

/* Navbar styles */
.navbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #333;
  padding: 0px 10px;
}

.links a {
  color: white;
  text-decoration: none;
  font-size: 2vh;
}

.links a:hover {
  color: #f0a500;
}

.active {
  font-weight: bold;
}
/* При добавлении класса 'show' меню становится видимым */
#mobile-menu.show {
  display: none;
}
/* Social links styles */
.social-links, .social-link a, .social-link2  a {
  color: white;
  text-decoration: none;
  margin-right: 10px;
  font-size: 4vb;
}
.social-link3{
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}
.social-link4{
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 7px;
}
.secret {
  display: none;
}
.social-links, .social-link a:hover, .social-link2 a:hover {
  color: rgb(218, 255, 241);
}

.social-links, .social-link, .social-link2{
  gap:20px;
  display: flex;
}
.layer-logo {
  max-width: 60%;
}
.log {
  width: 300px;
}

/* Меню */
.menu {
      display: none;
      flex-direction: column;
      background-color: #d1d1d163;
      padding: 10px;
      position: absolute;
      top: 3%;
      right: 1%;
      z-index: 2;
      border-radius: 8px;
      border: 2px solid #ffffff
}

.menu a {
      color: white;
      font-size: 3vb;
}
.menu.active{
      display: block;
}

/*Styling Hamburger Icon*/
.hamburger div{
  width: 30px;
  height:3px;
  background: #f2f5f7;
  margin: 5px;
  transition: all 0.3s ease;
}

.hamburger{
      display:none;
      position: relative;
      cursor: pointer;
      top: 13px;
      transform: translate(-5%, -50%);
      z-index: 32;
      transition: all 0.7s ease;
}
  
li.fade{
      opacity: 1;
}

/*Animating Hamburger Icon on Click*/
.toggle .line1{
  transform: rotate(-45deg) translate(-5px,6px);
}
.toggle .line2{
  transition: all 0.7s ease;
  width:0;
}
.toggle .line3{
  transform: rotate(45deg) translate(-5px,-6px);
}

.lang-switcher {
  position: relative;
  display: inline-block;
}

.flags {
  display: none;
  content: ''; /* Создаем пустой контент */
  position: absolute;
  top: 40px;
  left: -6px;
  background-color: rgb(54, 54, 54);
  border: 2px solid #ffffff;
  border-radius: 5px;
  background-color: rgba(0, 0, 0, 0); /* Прозрачный черный фон */
  padding: 5px;
  z-index: 1;
}
.flags::before {
  content: ''; /* Создаем пустой контент */
  position: absolute; /* Абсолютное позиционирование относительно родителя */

  overflow: hidden; /* Чтобы элементы не выходили за пределы контейнера */
  top: 0;
  left: 0;
  width: 100%;
  filter: blur(5px); /* Применяем размытие */
  height: 100%;
  background-color: rgba(0, 0, 0, 0.274); /* Прозрачный черный фон */

  z-index: -1; /* Псевдо-элемент должен быть за содержимым */
}

.lang-switcher:hover .flags {
  display: block;
}

.flag, .flagd {
  position: relative; /* Чтобы псевдо-элемент был позиционирован относительно родителя */
  overflow: hidden; /* Чтобы элементы не выходили за пределы контейнера */
  border: 2px solid #ffffff;
  border-radius: 2px;
  width: 45px;
  height: 30px;
  margin: 5px;
  cursor: pointer;
}

.flagd img, .flag img {
  width: 100%;
  height: 100%;
}

.flag:hover, .flagd:hover {
  opacity: 0.8;
}

/* Стили для секции FAQ */
/* Стили для секции FAQ */
.faq {
  padding: 0 20px 20px 20px;
}

/* Стили для секции FAQ */
.faq-item {
  margin: 15px 0;
  padding: 20px;
  background-color: #2c2c2c;
  border-radius: 10px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  transition: background-color 0.3s ease, transform 0.3s ease; /* Плавный сдвиг */
  overflow: hidden;
}
/* Стили для секции FAQ */
.faq-item.light-theme-gradient{
  margin: 15px 0;
  padding: 20px;
  background-color: #e7e7e7;
  border-radius: 10px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  transition: background-color 0.3s ease, transform 0.3s ease; /* Плавный сдвиг */
  overflow: hidden;
}
.faq-item.light-theme-gradient .answer{
  color: #919191;
}
/* Заголовок секции FAQ */
.faq h2 {
  font-size: 3.5vh;
  margin-bottom: 20px;
  text-align: center;
  color: #ffffff;
}

/* Стили для текста вопроса */
.faq-item p {
  font-size: 2vh;
  margin: 0;
  font-weight: 600;
  position: relative;
  padding-right: 20px; /* Отступ справа для эффекта линии */
  transition: transform 0.3s ease; /* Плавное движение текста */
}



/* Эффект сдвига текста при наведении */
.faq-item:hover p {
  transform: translateX(10px); /* Сдвиг текста вправо */
}

/* Стили для текста ответа */
.faq-item .answer {
  display: block; /* По умолчанию скрыт */
  max-height: 0; /* Изначально скрыто */
  font-size: 1rem;
  line-height: 1.5;
  color: #bbb;
  overflow: hidden; /* Скрытие текста, если он выходит за пределы */
  transition: max-height 0.3s ease-out, padding-top 0.3s ease-out; /* Плавное раскрытие */
}

/* Эффект раскрытия ответа */
.faq-item.open .answer {
  max-height: 200px; /* Ограничение на максимальную высоту */
  padding-top: 20px; /* Пространство между вопросом и ответом */
}

/* Анимация для раскрытия */
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

    /* Основной стиль для баннера согласия */
    #consent-banner {
      background: #ffffff;
      color: #333;
      border: 1px solid #ccc;
      padding: 20px;
      position: fixed;
      bottom: 0;
      left: 0;
      right: 0;
      text-align: center;
      z-index: 1000;
      box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
      display: none; /* Изначально скрываем баннер */
    }

    #consent-banner p {
      margin: 0;
      font-size: 16px;
    }

    /* Панель настроек cookies */
    #settings-panel {
      display: none;
      background: #ffffff;
      border-top: 2px solid #ccc;
      padding: 20px;
      position: fixed;
      bottom: 0;
      left: 0;
      right: 0;
      z-index: 1001;
      text-align: center;
      box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
    }

    #settings-panel p {
      margin-bottom: 20px;
      font-size: 16px;
    }

    /* Стиль для кнопок */
    button {
      background-color: #007BFF;
      color: white;
      border: 1px solid #007BFF;
      padding: 12px 20px;
      margin: 10px;
      cursor: pointer;
      border-radius: 5px;
      font-size: 16px;
      transition: background-color 0.3s, border-color 0.3s;
    }

    button:hover {
      background-color: #0056b3;
      border-color: #0056b3;
    }

    button:focus {
      outline: none;
    }

    /* Кнопка "Назад" */
    #back {
      background-color: #f44336;
      border-color: #f44336;
    }

    #back:hover {
      background-color: #e53935;
      border-color: #e53935;
    }

    /* Кнопка "Отключить cookies" */
    #disable-cookies {
      background-color: #ff9800;
      border-color: #ff9800;
    }

    #disable-cookies:hover {
      background-color: #fb8c00;
      border-color: #fb8c00;
    }

/* Исходное состояние (элемент невиден и находится на 50px ниже) */
.hidden {
  opacity: 0;
  transform: translateY(50px);
}

/* Анимация появления */
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(50px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Только для тех элементов, которые должны анимироваться */
.visible {
  animation: fadeInUp 0.8s ease-out forwards; /* Анимация плавного появления */
}
