/* Reset some default styles */
:root {
  --font-gilroy: 'Gilroy', sans-serif; /* Переменная для Gilroy */
  --font-berlingske: 'Berlingske Serif', serif; /* Переменная для Berlingske Serif */
  --color-title: #fa8b28;
  --color-btn: #ea422c;
  --color-template: #1E5094;
  --color-light-items: white;
  --color-desc-darck: #021c41;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html body {
  font-family: var(--font-gilroy);
  margin: 0;
  padding: 0;
  /* background-image: url('/images/header.jpg'); */
  background-size: 100%;
  background-repeat: repeat-y; /* Повторение по вертикали */
  background-position: top center; /* Позиционирование фона */
  min-height: 750px; /* Минимальная высота фона */
}

/* Псевдоэлемент для фона на всю ширину и высоту экрана */
html body::before {
  content: ""; /* Обязательно для псевдоэлемента */
  position: fixed; /* Фиксированное позиционирование для глобального контекста */
  top: 0;
  left: 0;
  width: 100vw; /* Ширина равна ширине экрана */
  height: 100%; /* Высота равна высоте экрана */
  /* background-image: url(/images/header.jpg); Ваше фоновое изображение */
  background-color: #030b28;
  background-size: cover; /* Масштабируем изображение, чтобы оно покрывало весь экран */
  background-position: center; /* Центрируем изображение */
  background-repeat: no-repeat; /* Запрещаем повторение */
  z-index: -1; /* Отправляем фон на задний план */
  opacity: 1; /* Настройте прозрачность, если нужно */
  margin: 0;
}

/* Кастомные стили для контейнера */
.container-fullhd {
  max-width: 1900px;
  width: 100%;
  /* padding-right: var(--bs-gutter-x, 0.75rem);
  padding-left: var(--bs-gutter-x, 0.75rem); */
  padding: 0;
  margin-right: auto;
  margin-left: auto;
  /* background-image: url(/images/back-l-r.png); */
}

.container-fullhd.bg-white{
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  width: 50px; /* Ширина боковых фонов */
  background-color: #01061c; /* Цвет боковых фонов */
  z-index: -1; /* Отправляем псевдоэлементы под основной контент */
}

.containe-qhd {
  max-width: 2560px;
  width: 100%;
  padding-right: var(--bs-gutter-x, 0.75rem);
  padding-left: var(--bs-gutter-x, 0.75rem);
  margin-right: auto;
  margin-left: auto;
}

.color-desc-darck {
  color: var(--color-desc-darck)!important;
}

.mobile {
  display: none;
}

/* Header and Banner Wrapper */
.header-banner-wrapper {
  position: relative;
  background-image: url(/images/header.jpg);
  background-size: cover;
  background-position: center;
  color: #fff;
  /* z-index: 1; */
}

/* Header Styling */
.header {
  background-color: transparent;
  padding: 16px 0px; /* Отступы сверху и снизу */
}

.logo {

}

.logo-mobile {
  display: none;
}

.event-info-date {
  margin-right: 0px;
}

.event-info {
  display: flex;
  flex-direction: column;
  gap: 5px; /* Отступ между строками */
  align-items: center;
}

.event-title {
  font-size: 22px;
  font-weight: bold;
  color: #ffffff; /* Цвет текста */
  white-space: nowrap;
}

.event-info-time .event-subtitle {
  width: 85px; 
  padding-left: 3px;
}

.event-subtitle {
  font-size: 18px;
  color: #c3c3c3; /* Цвет подзаголовка */
}

.contact-info {
  display: flex;
  align-items: center;
}

.contact-info i {
  font-size: 40px;
  color: var(--color-title);;
  margin-right: 10px;
}

.contact-number {
  font-size: 22px;
  font-weight: bold;
  color: white;
  text-decoration: none!important;
}

.link-number{
  text-decoration: none!important;
}

.contact-subtext {
  display: block;
  font-size: 18px;
  color: #c3c3c3;
}

.call-button {
  font-size: 26px!important;
  padding: 10px 20px;
  background-color: #ffffff00!important;
  color: #fff;
  border: none;
  border-radius: 5px;
  border-color: #fefefe!important;
  cursor: pointer;
  padding: 10px!important;
}



.call-button:hover {
  background-color:  var(--color-title)!important;
}

.vertical-line {
  width: 1px!important;
  height: 40px;
  background-color: #ccc; /* Цвет вертикальной линии */
  margin-left: 20px; /* Отступ слева */
  padding: 0px!important;
}

#openModalMobile {
  cursor: pointer; /* Меняем курсор на указатель */
  color: #ffffff; /* Цвет текста, как у кнопки */
  text-decoration: underline; /* Подчеркивание для интерактивности */
}

#openModalMobile:hover {
  color: #0056b3; /* Цвет при наведении */
}

@media (min-width: 768px) and (max-width: 1400px) {
  .main-banner{
    padding: 0;
  }
}

/* Main Banner Styling */
.main-banner {
  background-size: cover;
  background-position: center;
  padding: 0;
  color: #fff;
}

.banner-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 1200px;
  margin: 0 auto;
}

/* Текст слева */
.banner-left {
  width: 50%; /* Занимает половину баннера */
}

.banner-features.list-unstyled{
  position: relative;
  left: 60px;
  top: 40px;
  margin-top: 0;
  margin-bottom: 40px;
}

.banner-features li i {
  color: #ffcc00; /* Цвет иконки */
  margin-right: 10px;
}

.banner-features li .bold-list {
  font-weight: 700;
  color: white;
}

/* Люди справа */
.banner-right {
  width: 50%;
  position: relative;
  height: 500px; /* Высота контейнера для людей */
}

.people {
  position: relative;
  width: 100%;
  height: 100%;
  margin-top: 45px;
}

.people > .img-fluid {
  position: relative;
  bottom: 42px;
  right: 130px;
}

/* Стили для изображения people.png */
.people img {
  max-width: 100%; /* Ограничиваем ширину изображения */
  height: auto; /* Автоматическая высота для сохранения пропорций */
  display: block; /* Убираем лишние отступы */
  margin: 0 auto; /* Центрируем изображение */
}

/* Анимация для выдвижения картинки снизу вверх */
@keyframes slideUp {
  0% {
    transform: translateY(100%);
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    opacity: 1;
  }
}

/* Применение анимации к элементу */
.animate-up {
  animation: slideUp 1s ease-out forwards;
  animation-delay: 0.5s; /* Задержка перед началом анимации */
}

/* Дополнительные стили для плавного появления */
.people img {
  opacity: 0; /* Начальная прозрачность */
  transition: opacity 0.5s ease-in-out;
}

.animate-up img {
  opacity: 1; /* Появление изображения после анимации */
}

/* Адаптация для устройств */
@media (max-width: 1767px) {

  .people > .img-fluid {
    bottom: initial;
    right: initial;
  }

  .banner-features.list-unstyled {
    top: 0;
    margin-top: 0px; /* Отступ сверху */
  }
}

@media (max-width: 767.98px) {
  .people > .img-fluid {
    bottom: initial;
    right: initial;
  }
}

/* Registration Form Section Styling */
.registration-form-section {
  position: relative;
  display: flex;
  justify-content: center;
  margin-top: -100px;
  z-index: 500;
}

.registration-form-container {
  background-image: url('/images/form-background.png');
  background-size: cover;
  background-position: center;
  padding: 40px 30px;
  border-radius: 15px;
  box-shadow: 0 4px 6px rgba(0,0,0,0.1);
  max-width: 800px;
  width: 100%;
  color: #fff;
  text-align: center;
  max-width: 1200px;
}

.registration-form-container h2 {
  font-size: 35px;
  margin-bottom: 5px!important;
}

.registration-form-container p {
  font-size: 30px;
  margin-bottom: 0px;
  color: #f0f0f0cc;
}

#registrationForm {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.register-text-orange {
  color: var(--color-title);
}

.form-fields {
  display: flex;
  gap: 15px;
  width: 100%;
  margin-bottom: 15px;
}

.form-fields input {
  padding: 20px 15px;
  border: none;
  border-radius: 5px;
  flex: 1;
  font-size: 30px;
}

.register-button {
  padding: 10px 20px;
  margin-bottom: 15px;
  background-color:  var(--color-btn)!important;
  color: #fff;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  font-size: 20px;
  flex-shrink: 0;
  background-image: linear-gradient(45deg, #1E5094, #ea422c, #1E5094); /*  Пример */
  background-size: 500% auto;
  animation: gradientShift 6s linear infinite;
}

.register-button:hover {
  /* background-color: #c22d19!important; */
  border-color: transparent !important;
}

@keyframes gradientShift {
  0% {
    background-position: 0% center;
  }
  100% {
    background-position: 100% center;
  }
}

.form-consent {
  display: flex;
  align-items: center;
  font-size: 20px;
}

.form-consent input {
  margin-right: 10px;
}

@media (max-width: 767.98px) {
  .form-fields {
    flex-direction: column;
    gap: 10px;
  }

  .register-button {
    width: 100%;
  }
  .registration-form-container{
    display: none;
  }
}

/* Modal Styling */
.modal {
  display: none;
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0,0,0,0.5);
}

.modal-content {
  background-color: #fefefe;
  margin: 10% auto;
  padding: 20px;
  border: 1px solid #888;
  width: 90%;
  max-width: 400px;
  border-radius: 10px;
  position: relative;
}

.close-button {
  color: #aaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
  position: absolute;
  right: 20px;
  top: 10px;
  cursor: pointer;
}

.close-button:hover,
.close-button:focus {
  color: #000;
  text-decoration: none;
}

.modal-content h2 {
  margin-bottom: 20px;
  text-align: center;
}

.modal-content form label {
  display: block;
  margin-bottom: 5px;
  font-weight: bold;
}

.modal-content form input[type="text"],
.modal-content form input[type="tel"] {
  width: 100%;
  padding: 10px;
  margin-bottom: 15px;
  border: 1px solid #ccc;
  border-radius: 5px;
}

.checkbox-container {
  display: flex;
  align-items: center;
  margin-bottom: 15px;
}

.checkbox-container input {
  margin-right: 10px;
}

.modal-content form button {
  width: 100%;
  padding: 10px;
  background-color: #28a745;
  border: none;
  color: #fff;
  font-size: 16px;
  border-radius: 5px;
  cursor: pointer;
}

.modal-content form button:hover {
  background-color: #218838;
}

/* Navigation Menu Styling */
.nav-menu {
  padding: 10px 0; /* Отступы сверху и снизу */
  margin-bottom: 80px;
}

.nav-menu .header-content {
  background-color: rgba(255, 255, 255, 0.092); /* Слегка прозрачный белый фон */
  backdrop-filter: blur(5px); /* Легкое размытие фона для красоты */
  border-radius: 10px; /* Закругленные углы для красоты */
  padding: 10px 20px; /* Отступы внутри контейнера */
  max-width: 1200px; /* Такая же ширина, как у хедера и баннера */
  margin: 0 auto; /* Выравнивание по центру */
}

.nav-menu ul {
  list-style: none;
  display: flex;
  justify-content: center;
  margin: 0;
  padding: 0;
  background: #ffffff1c!important;
}

.nav-menu li {
  margin: 0 20px;
}

.nav-menu a {
  text-decoration: none;
  color: #f2e9e9c1!important; /* Непрозрачный цвет текста */
  font-size: 14px;
  font-weight: 300;
  padding: 10px 15px;
  transition: color 0.3s ease;
  font-size: 26px;
}

.nav-menu a:hover {
  color: #007BFF; /* Цвет при наведении (например, синий) */
}

@media (max-width: 1900px) {
  .nav-menu a {
    font-size: 20px;
  }
  .nav-menu li {
    margin: 0 10px;
  }
}


@media (max-width: 1440px) {
  .nav-menu a {
    font-size: 15px;
  }
}

@media (max-width: 1200px) {
  .nav-menu li {
    margin: 0px;
  }
}

@media (max-width: 992px) {
  .nav-menu a {
    padding: 10px 4px;
  }
}

/* Responsive Styling for Navigation Menu */
@media (max-width: 767.98px) {
  .nav-menu{
    display: none;
  }
}

/* Текст на баннере */
.text-banner {
  position: relative;
  bottom: 95px;
  left: 40px;
  padding: 45px;
}

.banner-subtitle {
  position: relative;
  left: 65px;
  font-weight: 300; /* Обычный */
  font-size: 34px;
  margin: 0px;
  color: var(--color-light-items);
  margin-bottom: 1.5rem;
}

.circles {
  display: flex;
  gap: 20px; /* Расстояние между кружочками */
  align-items: center;
}

.circle {
  width: 12px; /* Размер кружочка */
  height: 12px; /* Размер кружочка */
  border-radius: 50%; /* Делаем круг */
}

/* Первый кружочек: полая с неяркой обводкой */
.circle-1 {
  border: 1px solid #ccc; /* Неяркая обводка */
  background-color: transparent; /* Прозрачный фон */
}

/* Второй кружочек: полая с яркой обводкой */
.circle-2 {
  border: 2px solid #ccc; /* Яркая обводка */
  background-color: transparent; /* Прозрачный фон */
}

/* Третий кружочек: закрашенный */
.circle-3 {
  background-color: #ccc; /* Закрашенный фон */
  border: none; /* Убираем обводку */
}

.banner-subtitle strong {
  color: #ffffff; /* Оранжевый цвет для выделенного текста */
  font-weight: 700; /* Жирный */
}

/* Базовые стили для текста */
.banner-title {
  font-size: 124px; /* Большой размер для десктопов */
  font-family: var(--font-berlingske);
  line-height: 1.2;
  margin-bottom: 1rem;
}

.banner-title .banners-text-orange{
  font-size: 80px;
}

.banner-features li {
  font-weight: 300; /* Обычный */
  font-size: 24px;
  display: flex;
  align-items: center;
  margin-bottom: 10px;
  color: #ffffffe7; /* Белый цвет текста */
  padding: 2px;
}

@media (max-width: 1900px) {
  .banner-title .banners-text-orange {
    font-size: 5rem;
  }
}

@media (max-width: 1473px) {
  .banner-title .banners-text-orange {
    font-size: 4rem;
  }
  
  .banner-title {
    font-size: 6rem;
  }
  
  .banner-subtitle {
    left: initial;
    margin-bottom: initial;
  }
  .text-banner {
    padding-bottom: 0px;
  }
}

@media (max-width: 1200px) {
  .banner-title {
    font-size: 5rem;
  }
  .text-banner {
    padding-bottom: 0px;
  }
  .banner-features.list-unstyled {
    left: 0;
  }

  .banner-subtitle, .banner-features li {
    font-size: 20px;
  }
}

@media (max-width: 992px) {
  .banner-title {
    font-size: 4rem;
  }
  .banner-subtitle, .banner-features li {
    font-size: 16px;
  }
}

.banners-text-orange {
  color: var(--color-title); /* Оранжевый цвет */
  display: block; /* Каждое слово на новой строке */
}

.banners-text-white {
  color: var(--color-light-items); /* Белый цвет */
  display: block; /* Каждое слово на новой строке */
}


.banner-subtitle strong {
  font-weight: 700;
}


/* Адаптация для мобильных устройств */
@media (max-width: 767.98px) {
  .banner-title .banners-text-orange {
    font-size: 3rem;
  }

  .banner-subtitle {
    font-size: 1rem; 
  }

  .banner-subtitle.mobile {
    display: block;
    padding-bottom: 20px;
  }

  .banner-subtitle.desktop {
    display: none;
  }
}

@media (max-width: 576px) { 
  .banner-title .banners-text-orange {
    font-size: 2rem;
  }
}

.banner-features li .feature-icon {
  width: 30px; /* Ширина иконки */
  height: 30px; /* Высота иконки */
  margin-right: 10px; /* Отступ справа */
  opacity: 70;
}
/* Стили для кнопки в мобильной версии */
#registerMobile {
  background-color:  var(--color-title); /* Цвет кнопки */
  color: #fff; /* Цвет текста */
  border: none;
  border-radius: 2px;
  padding: 20px 20px;
  font-size: 16px;
  cursor: pointer;
  transition: background-color 0.3s ease;
  margin: 0!important;
}

#registerMobile:hover {
  background-color:  var(--color-title); /* Цвет кнопки при наведении */
}

@media (max-width: 1440px) {
  .circles{
    gap: 10px;
  }
}

@media (max-width: 992px) {
  .circle {
    width: 10px;
    height: 10px;
  }
}

/* Мобильная версия баннера */
@media (max-width: 767.98px) {
  .main-banner {
    padding: 0;
  }

  .text-banner {
    position:initial;
    padding: 0;
  }

  #registerMobile {
    position: relative;
    z-index: 20;
    width: 100%!important; /* Кнопка на всю ширину */
    margin-top: 20px; /* Отступ сверху */
  }

  .banner-title {
    font-size: 50px;
    text-align: center;
  }

  .circles {
    display: none;
  }

  .banner-subtitle {
    font-size: 16px; /* Уменьшаем размер подзаголовка */
    text-align: center; /* Центрируем текст */
    margin-left: 0; /* Убираем отступ слева */
  }

  .banner-features.list-unstyled {
    margin-top: 40px;
  }

  .banner-features {
    margin-left: 0; /* Убираем отступ слева */
    text-align: center; /* Центрируем текст */
  }

  .banner-features li {
    justify-content: center; /* Центрируем элементы списка */
  }

  .people {
    height: 300px; /* Уменьшаем высоту контейнера для мобильных */
    margin-bottom: 0px; /* Добавляем отступ снизу */
    margin-top: 0px;
  }

  .person1,
  .person2,
  .person3 {
    width: 150px; /* Уменьшаем размер картинок для мобильных */
  }

  .index-img-banner {
    position: relative;
    z-index: 1;
  }

  .index-list-banner, .index-btn-banner {
    position: relative;
    z-index: 2;
  }
}

/* Стили для секции тизеров */
.white-section {
  position: relative;
  z-index: 2; /* Устанавливаем z-index ниже, чем у формы регистрации */
  margin-top: -100px;  /*Поднимаем контейнер тизеров вверх, чтобы он наезжал на форму */
  border-radius: 60px;
  background: repeating-linear-gradient(
    -45deg,
    #ffffff, /* Белый цвет */
    #c8c9e266 250px, /* Белый цвет до 10px */
    #e5e7f218 515px, /* Плавный переход к серому цвету до 15px */
    #f3f3f418 525px, /* Серый цвет до 25px */
    #ffffff 230px /* Плавный переход к белому цвету до 30px */
  );
}

@media (max-width: 767.98px) {
  .white-section {
    margin-top: 0px;
    border-radius: 20px 20px 0 0; 
  }
}

/* Стили для контейнера тизеров */
.tizers-container {
  position: relative;
  z-index: 1; /* Устанавливаем z-index ниже, чем у формы регистрации */
  padding: 10px; /* Отступы внутри контейнера */
  padding-top: 0px;
}

.bg-tizers {
  position: relative;
  background-image: url(/images/sec2.png);
  background-size: 100% 100%;
  /* background-position: 0px 160px; */
  background-repeat: no-repeat;
  border-top-right-radius: 60px;
  z-index: -1;
  opacity: 1;
  margin: 0;
}

.tizers-title {
  padding-top: 80px;
  margin: 0px!important;
}

.container-qhd.bg-white.white-section > .bg-tizers > .tizers-title {
  padding-top: 150px;
}

.btn-title {
  padding-top: 60px;
}

@media (max-width: 767.98px) {
  .btn-title {
    padding-top: 40px;
  }
  .tizers-title {
    padding-top: 50px;
  }
}

.custom-line {
  display: block;
  width: 100px;
  height: 2px;
  background-color: #ab9e9e;
  margin: 55px 0px;
}

.tizer-img {
  width: 250px;
}
/* Стили для каждого тизера */
.tizers-container .col-md-3 {
  padding: 20px 25px;
}

.tizer-number {
  font-size: 54px;
  font-weight: bold;
  color: #d7d4d2; /* Цвет для номера тизера */
  position: relative;
  top: 34px;
}

.tizers-container .col-md-3 img {
  max-width: 60%;
  height: auto;
}

@media (max-width: 767.98px) {
  .tizers-container .col-md-3 img {
    max-width: 50%;
  }
}

.tizers-container .col-md-3 span {
  font-size: 18px;
  font-weight: bold;
  color: #333; /* Цвет для заголовка тизера */
}

/* .tizers-container .col-md-3 p {
  font-size: 16px;
  font-weight: 500;
  color: #000000;
} */

.tizer-heading {
  font-size: 35px;
  font-weight: 600;
  color: var(--color-template);
}

.tizer-description {
  font-size: 35px;
}

@media (max-width: 1440px) {
  .tizer-description {
    font-size: 30px;
  }
}

@media (max-width: 1200px) {
  .tizer-heading {
    font-size: 25px;
  }
  .tizer-description {
    font-size: 25px;
  }
}

@media (max-width: 992px) {
  .tizer-heading {
    font-size: 20px;
  }
  .tizer-description {
    font-size: 20px;
  }
}

@media (max-width: 767.98px) {
  .tizer-heading {
    font-size: 20px;
  }
  .tizer-description {
    font-size: 25px;
  }
}

.tizer-title-list {
  margin: 25px 0;
}

.form-title {
  font-family: var(--font-berlingske);
  font-size: 86px;
  padding: 0px 50px;
}

.form-title .fst-italic {
  color: var(--color-template);
}

.form-description {
  font-size: 38px;
  font-weight: 400;
}

@media (max-width: 1440px) {
  .form-title {
    font-size: 66px;
  }

  .custom-line {
    margin: 40px 0;
  }

  .form-description {
    font-size: 30px;
  }
}

@media (max-width: 1200px) {
  .form-title {
    font-size: 56px;
  }

  .custom-line {
    margin: 40px 0;
  }

}

@media (max-width: 992px) {
  .form-title {
    font-size: 46px;
    padding: 0px 30px;
  }
  .custom-line {
    margin: 30px 0;
    width: 50px;
  }
  .form-description {
    font-size: 25px;
  }
}

@media (max-width: 767.98px) {
  .form-title {
    font-size: 34px;
  }

  .form-title .fst-italic {
    display: block;
  }
}

/* Правый бордер для всех tizer-item, кроме последнего */
.tizer-item:not(:last-child) {
  border-right: 1px solid #e0e0e0; /* Цвет и толщина бордера */
}

@media (max-width: 767.98px) {
  .tizer-item:not(:last-child) {
    border-right: initial; /* Цвет и толщина бордера */
  }
}

.tizer-item-1 {
  padding-top: 236px;
}

.tizer-item {
  position: relative; /* Важно для позиционирования */
}

/* Стили для анимированных элементов (изначально) */
.tizer-number,
.tizer-icon,
.tizer-content {
  position: relative;
  top: -236px;
  opacity: 0;
}

/* Стили для анимированных элементов (когда добавляется класс 'animate') */
.tizer-item.animate .tizer-number,
.tizer-item.animate .tizer-icon,
.tizer-item.animate .tizer-content {
    animation: fallDownContent 0.7s ease-out forwards;
}

/* Задержки для элементов */
.tizer-number {
  animation-delay: 0s; /* Падает первым */
}

.tizer-icon {
  animation-delay: 0.2s; /* Падает вторым */
}

.tizer-content {
  animation-delay: 0.4s; /* Падает третьим */
}

@keyframes fallDownContent {
  to {
    top: 0;
    opacity: 1;
  }
}

.tizer-item-2 {
  padding-top: 153px;
}

.tizer-item-3 {
  padding-top: 35px;
}

.tizer-item-4 {
  position: relative;
  bottom: 131px;
  /* padding-top: -141px; */
}

.text-image-banner {
  padding-top: 147px;
  padding-bottom: 100px;
}

.tizer-subdescription {
  font-size: 42px;
  margin: 0;
}

@media (max-width: 1440px){
  .tizer-subdescription {
    font-size: 30px;
  }
}

@media (max-width: 992px){
  .tizer-subdescription {
    font-size: 25px;
  }
}

.block-tizer-list {
  margin: 0 20px;
}

.tizer-list {
  position: relative;
  padding: 10px 0;
}

.tizer-list>.col-1.image-container{
  display: flex;
  align-items: center;
  padding: 0;
}

.tizer-list:not(:last-child)::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #e0e0e0;
}

.image-container {
  position: relative;
  padding-right: 15px;
}

.image-container::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 1px;
  height: 80%;
  background-color: #e0e0e0;
}

.image-list-tizer {
  /* position: relative;
  right: 20px; */
  width: 45px;
  height: 45px;
  max-width: 100%; /* Масштабируется, если не помещается */
  max-height: 100%; /* Масштабируется, если не помещается */
  object-fit: contain;
}

.text-list-tizer {
  font-size: 35px;
  color: #333;
  padding-left: 10px;
}

.image-tizer {
  position: relative;
  bottom: 55px;
  max-width: 100%; /* Максимальная ширина изображения — 100% от родительского контейнера */
  height: auto; /* Высота автоматически подстраивается под ширину */
  object-fit: contain; /* Сохраняет пропорции изображения */
}

@media (max-width: 1440px) {
  .tizer-number {
    font-size: 44px;
    top: 30px;
  }
  .tizer-item-4 {
    bottom: 110px;
  }
  .text-list-tizer {
    font-size: 30px;
  }
  .image-tizer {
    position: initial;
  }
}

@media (max-width: 1200px) {
  .tizer-number {
    font-size: 34px;
    top: 15px;
  }
  .tizer-item-4 {
    bottom: 70px;
  }
  .text-image-banner {
    padding-top: 60px;
    padding-bottom: 100px;
  }
  .text-list-tizer {
    font-size: 25px;
  }
  .image-tizer {
    padding-left: 250px;
  }
}

@media (max-width: 992px) {
  .tizer-number {
    font-size: 24px;
  }

  .tizer-item-4 {
    bottom: 50px;
  }

  .text-list-tizer {
    font-size: 20px;
  }

}
/* 
@media (min-width: 767px) and (max-width: 768px) {
    .tizer-content, .tizer-icon {
      display: flex;
      flex-direction: column;
      align-items: center;
  }

  .tizer-item-1, .tizer-item-2, .tizer-item-3 {
      display: flex;
      justify-content: center;
      position: relative;
      top: 30px;
      right: 100px;
      padding-top: initial;
  }
} */

@media (max-width: 767.98px) {
  .registration-form-section {
    margin-top: 0px;
  }

  .tizers-section {
    margin-top: -50px; /* Уменьшаем отступ для мобильных устройств */
  }

  .tizers-container .col-md-3 {
    padding: 10px;
  }

  .tizers-container .col-md-3 div:first-child {
    font-size: 30px;
  }

  .tizer-number {
    display: flex;
    justify-content: center;
    top: initial;
    right: 100px;
    top: 30px;
  }

  .tizer-item-4 {
    position: initial;
  }

  .tizers-container .col-md-3 span {
    font-size: 16px;
  }

  .custom-line {
    display: none;
  }

  .text-image-banner {
    display: none;
  }

  .tizer-item-1, .tizer-item-2, .tizer-item-3, .tizer-item-4 {
    /* position: initial; */
    padding-top: initial;
  }

  .tizer-content, .tizer-icon {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  .white-section::after {
    display: none;
  }
}

/* Баннер презентации */
.presentation-banner-1 {
  padding-top: 80px;
}

.white-title {
  font-family: var(--font-berlingske);
  font-size: 86px;
  color: white;
  padding: 0px 50px;
}

@media (max-width: 1440px) {
  .white-title {
    font-size: 66px;
  }

}

@media (max-width: 1200px) {
  .white-title {
    font-size: 56px;
  }

}

@media (max-width: 992px) {
  .white-title {
    font-size: 46px;
  }
}

@media (max-width: 767.9px) {
  .white-title {
    font-size: 30px;
  }
}


.custom-line.line-white {
  background-color: #ab9e9e;
}

.title-orange {
  color: var(--color-title);
}

.white-description {
  color: white;
  font-weight: 300;
}

.item-presentation {
  padding: 54px 20px;
}

.item-image-presentation {
  width: 45px;
  height: 62px;
  object-fit: contain;
}

.item-title-presentation {
  font-size: 35px;
  font-weight: 600;
  color: var(--color-light-items);
}

.item-desc-presentation {
  display: block;
  font-size: 32px;
  color: #ffffff;
}

/* Ограничение высоты изображения */
.image-pres-block {
  display: flex;
  align-items: flex-end; /* Выравнивание изображения по нижнему краю */
  justify-content: center; /* Центрирование изображения по горизонтали */
  overflow: hidden;
}

.images-middle-presentation-1 {
  position: relative;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: 100%;
  object-fit: contain;  
  /* background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url(/images/ФонКирилл.png); */
  background-image: url(/images/ФонКирилл.png);
  background-color: #02142c;
  background-size: cover;
  background-position: center;
  /* aspect-ratio: 16 / 9; */
}


.images-middle-presentation-2 {
  max-width: 100%; /* Ограничение по ширине */
  max-height: 100%; /* Ограничение по высоте */
  width: auto; /* Сохраняет пропорции */
  height: 100%; 
  object-fit: contain; /* Сохраняет пропорции изображения */
  background-image: url(/images/БлокКарина.png);
  background-color: #02142c;
  background-size: cover;
  background-position: center;
  /* aspect-ratio: 16 / 9; */
}

.images-middle-presentation-3 {
  max-width: 100%; /* Ограничение по ширине */
  max-height: 100%; /* Ограничение по высоте */
  width: auto; /* Сохраняет пропорции */
  height: 100%; /* Сохраняет пропорции */
  object-fit: contain; /* Сохраняет пропорции изображения */
  background-image: url(/images/БлокПаша.png);
  background-color: #02142c;
  background-size: cover;
  background-position: center;
  /* aspect-ratio: 16 / 9; */
}


@media (max-width: 1900px) {
  .images-middle-presentation-1 {
    background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url(/images/ФонКирилл.png);
  }

  .images-middle-presentation-2 {
    background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url(/images/БлокКарина.png);
    aspect-ratio: initial;
  }

  .images-middle-presentation-3 {
    background-image: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url(/images/БлокПаша.png);
    aspect-ratio: initial;
  }
}

/* Убедимся, что блоки .col-3 и .col-6 имеют одинаковую высоту */
.row {
  display: flex;
  align-items: stretch; /* Растягиваем блоки на всю высоту */
}

.col-3, .col-6 {
  display: flex;
  flex-direction: column;
}

.col-3 {
  justify-content: space-between; /* Равномерное распределение элементов */
}

.mobile-robots {
  display: none;
}

@media (max-width: 1440px) {
  .images-middle-presentation-1, .images-middle-presentation-2, .images-middle-presentation-3 {
    padding-top: 20px;
    height: initial;
  }  
  .item-title-presentation {
    font-size: 35px;
  }
  .item-desc-presentation {
    font-size: 30px;
  }
}

@media (max-width: 1200px) {
  .item-presentation {
    padding: 20px 20px;
  }
  .item-title-presentation {
    font-size: 25px;
  }
  .item-desc-presentation {
    font-size: 25px;
  }
}

@media (max-width: 767.98px) {
  .presentation-banner-1 .container-fullhd .row.mx-0 {
    display: none;
  }

  .presentation-banner-1.images-middle-presentation-2, .presentation-banner-1.images-middle-presentation-3 {
    display: none;
  }

  .images-middle-presentation-1 {
    background-image: url(/images/ФонКирилл.png);
    background-size: auto 400px;
    background-repeat: no-repeat;
    background-position: top center;
  }

  .images-middle-presentation-1 .form-description.text-center {
    font-size: 18px;
  }

  .title-botttom-robots {
    margin-bottom: 300px;
  }

  .mobile-robots {
    display: initial;
  }

  .tizers-mobile-robots-1 {
    padding: 8px;
  }

  .images-middle-presentation-1{
    padding-bottom: 20px;
  }

  .images-middle-presentation-1 .white-title {
    font-size: 25px;
  }

  .item-title-presentation {
    font-size: 18px;
  }

  .item-image-presentation {
    width: 25px;
    height: 32px;
    margin-right: 10px;
  }

  .item-desc-presentation {
    font-size: 18px;
  }

  .lower-block {
    display: none;;
  }

  .white-section-2::before, .white-section-2::after {
    display: none;
  }
}

@media (max-width: 375px) { 
  .title-botttom-robots {
    margin-bottom: 260px;
}
}

/* Белый блок со списком кнопок брони*/
.white-section-2 {
  position: relative;
  z-index: 1; /* Устанавливаем z-index ниже, чем у формы регистрации */
  border-radius: 60px;
  background: repeating-linear-gradient(
    -45deg,
    #ffffff, /* Белый цвет */
    #c8c9e266 250px, /* Белый цвет до 10px */
    #e5e7f218 515px, /* Плавный переход к серому цвету до 15px */
    #f3f3f418 525px, /* Серый цвет до 25px */
    #ffffff 230px /* Плавный переход к белому цвету до 30px */
  );
}

@media (max-width: 767.98px) {
  .white-section-2 {
    border-radius: 0px;
  }
}

.white-section-2::before {
  left: 0;
  transform: translateX(-100%); /* Сдвигаем влево за пределы контейнера */
}

.white-section-2::after {
  right: 0;
  transform: translateX(100%); /* Сдвигаем вправо за пределы контейнера */
}

.btn-reg-item {
  display: flex;
  align-items: center;
}

.btn-reg-item-image {
  max-width: 100%; /* Максимальная ширина равна ширине контейнера */
  max-height: 100%; /* Максимальная высота равна высоте контейнера */
  width: auto; /* Сохраняем пропорции изображения */
  height: auto; /* Сохраняем пропорции изображения */
  display: block; /* Убираем лишние отступы вокруг изображения */
  margin: 0 auto; /* Центрируем изображение по горизонтали */
  padding: 10px;
}

.btn-reg-item .title-black {
  font-size: 38px;
  color: #000;
  font-weight: 600;
  padding: 0 30px;
}

.btn-reg-item .col-md-7 .desc-black {
  font-size: 30px;
  padding: 0px 30px;
}

.btn-reg {
  display: inline-block;
  padding: 15px 30px; /* Отступы внутри кнопки */
  font-size: 18px; /* Размер текста */
  font-weight: bold; /* Жирный текст */
  color: white; /* Цвет текста */
  text-transform: uppercase; /* Текст в верхнем регистре */
  text-align: center;
  text-decoration: none; /* Убираем подчеркивание */
  background: linear-gradient(45deg, #ff7e5f, #feb47b); /* Градиентный фон */
  border-radius: 25px; /* Закругленные углы */
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
  transition: background 0.3s ease, transform 0.2s ease; /* Плавные переходы */
}

.btn-reg:hover {
  background: linear-gradient(45deg, #feb47b, #ff7e5f); /* Изменение градиента при наведении */
  transform: translateY(-2px); /* Легкий подъем кнопки */
}

.btn-reg:active {
  transform: translateY(0); /* Возврат к исходному положению при нажатии */
}

.btn-reg-list {
  padding-bottom: 100px;
}

@media (max-width: 767.98px) { 
  .btn-reg-list {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}


.btn-reg-list > .btn-reg-item:not(:last-child) {
  border-bottom: 1px solid #ccc; /* Серый бордер */
}

.btn-reg-item .call-button {
  color: var(--color-btn);
  padding: 45px 0px!important;
  border-width: 2px;
  border-color: var(--color-btn)!important;
  background-color: #e0e0e07d !important;
}

.btn-reg-item .call-button:hover {
  background-color: var(--color-btn)!important;
}

.circle-element {
  padding: 80px 0px;
  opacity: 0; /* Изначально делаем элемент невидимым */
  transition: opacity 1s ease-in-out; /* Добавляем плавный переход */
}

.circle-element.show {
  opacity: 1; /* Когда добавляется класс 'show', элемент становится видимым */
}

.text-list-tizer > .title-black, .circle-element > .title-black {
  font-size: 32px;
  font-weight: 800;
  color: var(--color-template);
}

@media (max-width: 1900px) {
  .btn-reg-item .title-black {
    font-size: 35px;
  }
  .btn-reg-item .call-button {
    font-size: 24px !important;
  }
  .btn-reg-item-image{
    padding: 0px;
  }
}

@media (max-width: 1440px) {
  .btn-reg-item .title-black {
    font-size: 25px;
  }
  .btn-reg-item .col-md-7 .desc-black {
    font-size: 25px;
  }
  .btn-reg-item .call-button {
    font-size: 20px!important;
    padding: 35px 0px!important;
  }
}

@media (max-width: 1200px) {
  .text-list-tizer > .title-black, .circle-element > .title-black {
    font-size: 25px;
  }
  .btn-reg-item .col-md-7 .desc-black {
    font-size: 20px;
  }
}

@media (max-width: 992px) {
  .text-list-tizer > .title-black, .circle-element > .title-black {
    font-size: 20px;
  }
  .btn-reg-item .title-black {
    font-size: 20px;
    padding: 0px;
  }
  .btn-reg-item .call-button {
    font-size: 15px !important;
    padding: 25px 0px !important;
  }
  .btn-reg-item .col-md-7 .desc-black {
    padding: 0px;
  }
}

@media (max-width: 767.98px) {
  .btn-reg-item .call-button {
    display: none;
  }
  .btn-reg-item .title-black {
    font-size: 30px;
    text-align: center;
  }
  .desc-black.color-desc-darck {
    font-size: 25px;
    text-align: center;
  }
  .btn-reg-item-image {
    max-width: 50%;
  }
}

.circle-element.element-subtitle {
  position: relative;
  bottom: 280px;
}

.circle-element.element-subtitle.left {
  position: relative;
  left: 180px;
}

.circle-element.element-subtitle.right {
  position: relative;
  right: 180px;
}

.circle-element.element-1 {
  position: relative;
  left: 140px;
  bottom: 180px;
}

.circle-element.element-2 {
  position: relative;
  bottom: 150px;
}

.circle-element.element-2.left {
  position: relative;
  right: 80px;
}

.circle-element.element-2.right {
  position: relative;
  left: 150px;
}


.circle-element.element-3 {
  position: relative;
  right: 120px;
  bottom: 150px;
}

.circle-element.element-4 {
  padding: 0px 190px;
  padding-bottom: 140px!important;
}

.circle-element-desc.color-desc-darck {
  font-size: 32px;
}

.row.tizers-container.text-image-banner.rocket {
  padding-bottom: 150px;
}

.images-middle-presentation.rocket-img {
  max-width: initial;
  max-height: initial;
}

.image-rocket-1441 {
  display: flex;
  position: relative; /* Важно для позиционирования */
}

.rocket-img {
  position: relative; /* Позволяет использовать bottom для анимации */
  bottom: -400px; /* Начальная позиция (снизу за пределами видимости) */
  opacity: 0; /* Скрываем изображение */
  transition: bottom 0.7s ease-out, opacity 0.7s ease-out; /* Плавный переход */
  max-width: 100%; /* Чтобы изображение не выходило за границы контейнера */
  height: auto;
}

/* Когда добавляется класс 'animate' */
.image-rocket-1441.animate .rocket-img {
  bottom: 0; /* Конечная позиция (исходная) */
  opacity: 1; /* Показываем изображение */
}

@media (max-width: 2200px) { 
  .rocket-block-bot {
    display: none;
  }
}

@media (max-width: 1900px) {
  .image-rocket-1441 {
    display: none;
  }
  .images-middle-presentation.rocket-img {
    display: none;
  }
  .circle-element.element-subtitle.left, .circle-element.element-subtitle.right {
    position: initial;
  }
  .circle-element.element-1, .circle-element.element-3 {
    position: initial;
  }
  .circle-element.element-2.left, .circle-element.element-2.right {
    position: initial;
  }
  .circle-element.element-4 {
    padding: initial;
  }
}

@media (max-width: 767.98px) {
  .circle-element.element-subtitle.left {
    position: initial;
  }

  .circle-element.element-subtitle.right {
    display: none;
  }
}

.lower-block {
  height: 30px;
  background-color: #ffffff;
  opacity: 0.5;
  border-bottom-left-radius: 200px;
  border-bottom-right-radius: 200px;
  z-index: 2;
}

.bg-lower-block {
  background: #02142c;
}

/* 
.lower-block {
  content: "";
  position: relative;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100%;
  background-color: #061937;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  z-index: -1;
  opacity: 1;
  margin: 0;
} */

.upper-block {
  position: relative;
  /* bottom: 30px; */
  height: 30px;
  background-color: #ffffff;
  opacity: 0.5;
  border-top-left-radius: 200px;
  border-top-right-radius: 200px;
}

.bg-white {
  /* max-width: 1900px; */
  /* position: relative;
  bottom: 30px; */
}

/* Общие стили для футера */
.footer {
  position: relative;
  background-color: #02142c; /* Цвет фона футера */
  color: #ffffff; /* Цвет текста */
  padding: 16px;
  z-index: 1;
}

.footer .foooter-logo {
  max-width: 250px;
}

.footer .foooter-logo img{
  width: 100%;
}

.footer-politics {
  color: #979090;
  font-size: 17px;
}

.foooter-socials {
  display: flex;
  align-items: center;
  padding: 0 20px;
}

.foooter-ico-telegramm, .foooter-ico-inst {
 padding: 0px 8px;
}

.footer-right {
  display: flex;
  justify-content: flex-end;
}

.footer-politics-mobile {
  display: none;
}

.footer-telephon {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

@media (max-width: 767.98px) {
  .footer .footer-left {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  .footer-politics {
    display: none;
  }

  .footer .footer-right {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 20px 0px;
  }

  .footer-right {
    justify-content: initial;
  }
  
  .footer-telephon {
    padding-top: 20px;
  }

  .footer-politics-mobile {
    display: flex;
    justify-content: center;
    font-size: 12px;
    color: #979090;
  }
}

/*Время проведения*/
.tizers-container.text-image-banner.tizers-2 {
  padding-bottom: 80px;
  padding: 0;
}

.itims-border {
  border: 1px solid #ccc; /* Серый бордер толщиной 1px */
  padding: 20px;

}

.itims-border.first-item {
  border-left: none;
}

.itims-border.last-item {
  border-right: none;
}

.tizers-itims-2 {
  display: flex;
  align-items: center;
}

.tizers-itims-2-body {
  padding: 30px;
}

.tizers-itims-2-title {
  font-size: 40px;
  font-weight: 500;
}

.tizers-itims-2-text {
  font-size: 32px;
  color: #061639;
}

.row.speakers {
  margin-top: 70px;
}

.speaker-img {
  max-width: 100%;
  height: auto;
  border-radius: 15px;
}

.speaker-img {
  max-width: 100%;
  height: auto;
  border-radius: 15px;
}

.speaker-img {
  max-width: 100%;
  height: auto;
  border-radius: 15px;
}

.event-speack {
  padding-top: 30px;
  padding-bottom: 30px;
  border-bottom: 2px solid #ccc;
  position: relative; /* Важно для позиционирования */
  left: -500px; /* Начальная позиция (слева за пределами видимости) */
  opacity: 0; /* Скрываем блок */
  transition: left 0.7s ease-out, opacity 0.7s ease-out; /* Плавный переход */
}

.event-speack.animate {
  left: 0; /* Конечная позиция (исходная) */
  opacity: 1; /* Показываем блок */
}

@media (max-width: 768px) {
  .event-speack {
    left: -200px; /* Меньшее смещение для мобильных */
  }
}

.event-speack .time-speck {
  display: flex;
  justify-content: center;
  background-color: #194a8d;
  padding: 20px;
  margin-left: 10px;
  border-radius: 8px;
}

.time-block-text {
  padding-left: 55px;
}

.time-span {
  font-size: 22px;
  font-weight: 500;
  color: white;
}

.time-img {
  width: 200px;
}

.time-fio {
  font-size: 40px;
  color: rgb(6, 22, 57);
  font-weight: bold;
  line-height: 1.2;
}

.time-text-event {
  font-size: 32px;
  font-weight: 500;
  color: rgb(6, 22, 57);
}

@media (max-width: 1440px) {
  .tizers-itims-2 {
    flex-direction: column;
    text-align: center;
  }

  .tizers-itims-2-title {
    font-size: 35px;
  }
  .tizers-itims-2-text {
    font-size: 30px;
  }
}

@media (max-width: 1200px) {
  .tizers-itims-2-title {
    font-size: 25px;
  }
  .tizers-itims-2-text {
    font-size: 25px;
  }
  .time-fio {
    font-size: 25px;
  }
  .time-text-event {
    font-size: 25px;
  }
  .time-span {
    font-size: 20px;
  }
}

@media (max-width: 992px) {
  .tizers-container.text-image-banner.tizers-2 {
    padding-bottom: 20px;
  }

  .tizers-itims-2-body {
    padding: 0px;
  }
  .tizers-itims-2-title {
    font-size: 20px;
  }
  .tizers-itims-2-text {
    font-size: 20px;
  }
  .event-speack .time-speck {
    padding: 20px 0px;
  }
}

@media (max-width: 767.98px) {
  .tizers-itims-2 {
    flex-direction: initial;
    text-align: initial;
  }

  .tizers-itims-2-body {
    padding: 20px;
  }

  .time-line {
    display: none;
  }
}

/*Футер-форма*/
.images-footer-form {
  position: relative;
  overflow: hidden;
  max-width: 100%;
  max-height: 100%;
  width: auto;
  /* height: 100%;
  object-fit: contain; */
  background-image: url(/images/ФонФутер.png);
  background-color: #02142c;
  background-position: center;
  background-size: cover;
}


.footer-form {
  display: flex;
  flex-direction: column;
}

.registration-form-container.footer-form {
  height: 100%;
  justify-content: center;
  margin: 20px;
  clip-path: polygon( 
    0% 15%,
    0% 95%,
    15% 100%,
    85% 100%,
    100% 95%,
    100% 15%,
    50% 0% 
    );
    margin-bottom: 0px;
}

.registration-form-container.footer-form  h2 {
  font-size: 25px;
}

.registration-form-container.footer-form  p {
  font-size: 20px;
}

.form-footer-bg-left {
  position: relative;
  left: 70px;
  /* max-width: 100%; */
  max-height: 100%;
  width: 650px;
  height: 100%;
  object-fit: contain;
  background-size: cover;
  background-position: center;
  z-index: 1;
}

.form-footer-bg-right {
  position: relative;
  top: 20px;
  right: 70px;
  /* max-width: 100%; */
  max-height: 100%;
  width: 550px;
  height: 100%;
  object-fit: contain;
  background-size: cover;
  background-position: center;
  z-index: 1;
}

.registration-form-input {
  margin: 20px 50px;
}

.registration-form-input .form-control {
  padding: 45px 20px;
}

.registration-form-input .register-button {
  padding: 45px 20px;
}

.registration-form-input .form-consent input {
  margin-right: initial;
}

.registration-form-input .form-check-label {
  font-size: 18px;
}

@media (max-width: 1900px) {
  .form-footer-bg-left{
    position: absolute;
    left: -90px;
    right: initial;
    max-width: initial;
    max-height: initial;
    height: initial;
    width: 650px;
    object-fit: contain;
    background-size: cover;
    background-position: center;
    z-index: 1;
  }
  .registration-form-container h2 {
    padding-top: 50px;
  }
}

@media (max-width: 1440px) {
  .container-fullhd.images-footer-form .row.mt-4.mx-0{
    display: none;
  }

  .form-footer-bg-left, .form-footer-bg-right {
    display: none;
  }
  .form-not-img {
    display: contents;
  }
  .registration-form-container h2 {
    padding-top: 40px;
    font-size: 35px;
  }
  .registration-form-container p {
    font-size: 30px;
  }
}

@media (max-width: 1440px) {
  .registration-form-container h2 {
    padding-top: 20px;
    font-size: 25px;
  }
  .registration-form-container p {
    font-size: 25px;
  }
  .form-fields input {
    font-size: 25px;
  }
  .form-consent {
    font-size: 18px;
  }
}

@media (max-width: 992px) {
  .title-form-footer {
    padding-top: 40px;
  }
  .registration-form-container h2 {
    padding-top: 15px;
    font-size: 20px;
  }
  .registration-form-container p {
    font-size: 20px;
  }
  .form-fields input {
    font-size: 20px;
  }
  .form-consent {
    font-size: 15px;
  }
}

@media (max-width: 767.98px) {
  .registration-form-container h2 {
    padding-top: 100px;
  }

  .registration-form-container.footer-form h2 {
    font-size: 20px;
  }

  .registration-form-container {
    padding: initial;
  }

  .registration-form-input .form-check-label {
    font-size: 12px;
  }
}

/* Верхний блок */
.top-banner-block {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
  flex-wrap: wrap;
}

/* Вертикальная линия */
.top-banner-block__vertical-line {
  width: 1px !important;
  height: 20px;
  padding-left: 0px !important;
  padding-right: 0px !important;
  margin-left: 0px;
  background-color: #ccc;
}

/* Контактный номер */
.top-banner-block__contact-number {
  font-size: 22px;
  font-weight: bold;
  color: white;
  text-decoration: none !important;
}

/* Подтекст контактной информации */
.top-banner-block__contact-subtext {
  display: block;
  font-size: 12px;
  color: #c3c3c3;
}

/* Ссылка на номер */
.top-banner-block__link-number {
  text-decoration: none !important;
}

/* Логотип */
.top-banner-block__logo {
  display: block;
  flex: 0 0 auto;
  width: 16.66666667% !important;
  padding-right: 1em;
}

/* Элемент */
.top-banner-block__item {
  flex-basis: auto;
  flex-shrink: 1;
  /* padding: 0 1em; */
}

/* Информация о событии */
.top-banner-block__event-info {
  text-align: center;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}

/* Подзаголовок события */
.top-banner-block__event-subtitle {
  width: auto !important;
  font-size: 12px;
  padding-top: 6px;
  color: #c3c3c3;
}

/* Адресс */
.top-banner-block__event-info-adress {
  padding-left: 10px !important;
  justify-content: center;
}

/* Время */
.top-banner-block__event-info-time {
  padding: 0 !important;
}

/* Контактная информация */
.top-banner-block__contact-info {
  text-align: right;
  margin: 0;
  justify-content: end;
}

/* Кнопка */
.top-banner-block__call-button {
  padding: 10px 20px;
  background-color: #ffffff00 !important;
  color: #fff;
  border: none;
  border-radius: 5px;
  /* border-color: #fefefe !important; */
  cursor: pointer;
  padding: 10px !important;
}

.top-banner-block__call-button:hover {
  background-color: var(--color-title) !important;
}

/* Иконка телефона */
.top-banner-block__phone-icon {
  color: var(--color-title);
}

/* Номер */
.top-banner-block__contact-number {
  font-size: 14px;
}

/* Элементы даты и времени */
.top-banner-block__item.event-info-date,
.top-banner-block__item.event-info-time {
  text-wrap: nowrap;
}

/* Адресс */
.top-banner-block__event-info-adress {
  width: 100%;
}

/* Контактный элемент */
.top-banner-block__item-contact {
  width: initial;
}

/* Контактная информация */
.top-banner-block__contact-info {
  display: flex;
  align-items: baseline;
  justify-content: flex-end;
  flex-direction: row;
}

/* Номер */
.top-banner-block__contact-number {
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: initial !important;
}

/* Иконка телефона */
.top-banner-block__phone-icon {
  font-size: 16px !important;
}

/* Кнопка */
.top-banner-block__call-button {
  display: block !important;
  font-size: 14px !important;
  text-wrap: nowrap;
  background-color: transparent !important;
  color: #c3c3c3 !important;
  /* border: 1px solid #fefefe !important; */
  /* border-radius: 5px;
  border-color: #fefefe !important; */
  cursor: pointer;
  background-image: linear-gradient(45deg, #fa8a28, #1E5094, #ea422c, #1E5094);
  background-size: 400% auto; /* Увеличиваем размер для более плавной анимации */
  animation: gradientShift 6s linear infinite; /* Запускаем анимацию */
}

@keyframes gradientShift {
  0% {
    background-position: 0% center;
  }
  100% {
    background-position: 100% center;
  }
}

/* Информация о событии */
.top-banner-block__event-info {
  /* align-items: flex-start !important; */
}

/* Логотип */
.top-banner-block__logo-img {
  display: block;
}

/* Дата */
.top-banner-block__event-info-date {
  align-items: flex-start;
}

/* Время */
.top-banner-block__event-info-time {
  align-items: flex-end;
}

/* Элементы даты и времени */
.top-banner-block__event-info-date,
.top-banner-block__event-info-time {
  align-items: center;
  max-width: 50%;
  text-wrap: nowrap;
}

/* Логотип */
.top-banner-block__logo {
  display: block;
  flex: 0 0 auto;
  width: 45% !important;
  padding-right: 1em;
}

/* Обертка информации о событии */
.top-banner-block__event-info-wrapper {
  flex: 1 0 auto;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-around;
}

/* Контактный элемент */
.top-banner-block__item-contact {
  display: flex;
  align-items: baseline;
  justify-content: flex-end;
  flex-direction: row;
  width: 55%;
}

/* Элементы информации о событии */
.top-banner-block__event-info-date,
.top-banner-block__event-info-time,
.top-banner-block__event-info-adress {
  align-items: center;
  justify-content: center;
}

/* Подтекст контактной информации */
.top-banner-block__contact-subtext {
  display: none !important;
}

/* Номер */
.top-banner-block__contact-number {
  font-size: 24px;
  letter-spacing: 16px;
  font-weight: 400 !important;
}

@media (min-width: 576px) {
  .top-banner-block__logo {
    width: 35% !important;
  }

  .top-banner-block__item-contact {
    width: 50% !important;
  }

  .top-banner-block__event-title {
    font-size: 16px;
  }

  .top-banner-block__contact-number {
    letter-spacing: 4px !important;
    font-weight: 700 !important;
  }

  .top-banner-block__event-info {
    display: flex;
    flex-direction: row;
  }

  .top-banner-block__event-subtitle {
    padding: 0 0.5em;
  }
}

@media (min-width: 768px) {
  .top-banner-block__logo {
    width: 25% !important;
    display: flex;
    align-items: center;
  }

  .top-banner-block__item-contact {
    width: 25% !important;
  }

  .top-banner-block__event-info-wrapper {
    width: 50% !important;
  }

  .top-banner-block__contact-number {
    font-size: 14px;
  }

  .top-banner-block__event-info {
    flex-direction: row;
  }

  .top-banner-block__event-title {
    font-size: 14px;
  }

  .top-banner-block__event-subtitle {
    font-size: 12px;
  }

  .top-banner-block__contact-number {
    letter-spacing: initial !important;
  }
}

@media (min-width: 992px) {
  .top-banner-block {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    width: 100%;
    flex-wrap: wrap;
  }

  .top-banner-block__logo {
    display: block;
    flex: 0 0 auto;
    width: 16.66666667% !important;
    padding-right: 1em;
  }

  .top-banner-block__item {
    flex-basis: auto !important;
    flex-shrink: 1;
  }

  .top-banner-block__event-info-wrapper {
    width: auto !important;
    max-width: 60%;
    justify-content: flex-start;
  }

  .top-banner-block__event-info {
    flex-direction: column;
  }

  .top-banner-block__vertical-line {
    height: 24px;
  }

  .top-banner-block__item.event-info-date,
  .top-banner-block__item.event-info-time {
    width: auto !important;
    align-items: center;
  }

  .top-banner-block__event-info-adress {
    width: auto !important;
    flex-grow: 1;
  }

  .top-banner-block__item-contact {
    width: 20% !important;
  }

  .top-banner-block__contact-info {
    display: flex;
    align-items: baseline;
    justify-content: center;
    flex-direction: row;
  }

  .top-banner-block__contact-text {
    flex-direction: column;
    align-items: flex-end;
  }

  .top-banner-block__contact-number {
    font-weight: 400 !important;
  }

  .top-banner-block__call-button {
    border: none !important;
    border-color: transparent !important;
    line-height: 1.5;
    font-size: 14px !important;
    text-decoration: underline;
    color: #c3c3c3 !important;
  }

  .top-banner-block__phone-icon {
    font-size: 20px !important;
  }

  .top-banner-block__vertical-line {
    height: 40px !important;
  }

  .top-banner-block__event-info {
    /* align-items: flex-start !important; */
  }

  .top-banner-block__event-title {
    font-size: 14px;
  }
}

@media (min-width: 1200px) {
  .top-banner-block__logo {
    width: 19% !important;
  }

  .top-banner-block__event-info-wrapper {
    max-width: 50%;
  }

  .top-banner-block__event-info {
    gap: 0;
  }

  .top-banner-block__event-title {
    font-size: 16px;
  }

  .top-banner-block__event-info-adress {
    justify-content: flex-start;
  }

  .top-banner-block__item-contact {
    width: auto !important;
  }

  .top-banner-block__contact-info {
    display: flex;
    align-items: baseline;
    justify-content: flex-end;
    flex-direction: row;
  }

  .top-banner-block__contact-number {
    font-size: 18px !important;
    font-weight: bold !important;
  }

  .top-banner-block__contact-text {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
  }

  .top-banner-block__contact-subtext {
    display: block !important;
    text-align: center;
  }

  .top-banner-block__contact-number {
    font-size: 16px !important;
    letter-spacing: initial !important;
    font-weight: 700 !important;
  }

  .top-banner-block__call-button {
    display: inline-block !important;
    border: 1px solid #fefefe !important;
    border-radius: 5px;
    font-size: 16px !important;
    text-decoration: none;
    padding: 10px 20px;
    color: #fefefe !important;
  }
}

@media (min-width: 1400px) {
  .top-banner-block__contact-number {
    font-size: 20px !important;
    letter-spacing: 2px !important;
  }

  .top-banner-block__event-title {
    font-size: 20px;
  }

  .top-banner-block__event-subtitle,
  .top-banner-block__contact-subtext {
    font-size: 16px;
  }

  .top-banner-block__contact-text {
    align-items: center;
  }

  .top-banner-block__call-button {
    font-size: 20px !important;
    line-height: 1.75 !important;
  }

  .top-banner-block__contact-subtext {
    font-size: 18px;
  }
}

@media (min-width: 1900px) {
  .top-banner-block__vertical-line {
    margin-left: 20px;
    padding: 0px !important;
  }

  .top-banner-block__event-info {
    display: flex;
    flex-direction: column;
    gap: 5px;
    align-items: center!important;
  }

  .top-banner-block__event-subtitle {
    font-size: 18px;
  }

  .top-banner-block__event-info-date {
    margin-right: 0px;
  }

  .top-banner-block__event-subtitle,
  .top-banner-block__contact-subtext {
    font-size: 20px;
  }

  .top-banner-block__event-title,
  .top-banner-block__contact-number,
  .top-banner-block__call-button {
    font-size: 24px !important;
  }
}

/*Политика конфидициальности*/
.container-fullhd .politics {
  padding: 40px;
  color: #e4e4e4;
}

/*Карта*/
.map {
  position: relative;
  z-index: 2;   
  width: 100%;
  height: 800px;
}

.map iframe {
  width: 100%;
  height: 100%;
  border: 0;
}

.map-bg {
  position: relative;
}

.map-bg::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, rgba(3, 11, 40, 0.8), #030b28, rgba(2, 20, 44, 0.8));
  opacity: 0.8;
  z-index: -1;
}