@font-face {
  font-family: 'Superior';
  src:
          local('Superior Regular'),
          local('Superior-Regular'),
          url('../fonts/Superior/LTSuperior-Regular.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Superior';
  src: local('Superior Medium'), local('Superior-Medium'),
  url('../fonts/Superior/LTSuperior-Medium.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Superior';
  src: local('Superior Semibold'), local('Superior-Semibold'),
  url('../fonts/Superior/LTSuperior-Semibold.otf') format('opentype');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Superior';
  src: local('Superior Bold'), local('Superior-Bold'),
  url('../fonts/Superior/LTSuperior-Bold.otf') format('opentype');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Literature';
  src: local('Literature-Decor Regular'), local('Literature-Decor-Regular'),
  url('../fonts/Literature-Decor.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

#main_anchor_top {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 0px;
  margin: 0px;
  padding: 0px;
}

#main_anchor {
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 0px;
  margin: 0px;
  padding: 0px;
}
a{
  color: rgb(255,255,255);
  text-decoration: none;
  opacity: 1;
  transition: 0.2s;
}
a:hover{

}
a.theme_link_gold{
  color: #ffffff;
}
a.theme_link_gold:hover{
  color: #FFA42E;
}
a.theme_link_dorange{
  color: #EF896F;
  border-bottom: 1px solid transparent;
}
a.theme_link_dorange:hover{
  border-bottom: 1px solid #EF896F;
}
a.theme_link_orange{
  color: #A35E4C;
  border-bottom: 1px solid transparent;
}
a.theme_link_orange:hover{
  border-bottom: 1px solid #A35E4C;
}
a.theme_link_orange.reverse{
  color: #A35E4C;
  border-bottom: 1px solid #A35E4C;
}
a.theme_link_orange.reverse:hover{
  border-bottom: 1px solid transparent;
}
a.theme_link{
  color: rgb(255,255,255);
  text-decoration: none;
  border-bottom: 1px solid rgba(255,255,255,1);
}
a.theme_link:hover{
  color: rgb(255,255,255);
  text-decoration: none;
  border-bottom: 1px solid rgba(255,255,255,0);
}
a.theme_link_dark{
  color: rgb(0,0,0);
  text-decoration: none;
  border-bottom: 1px solid rgba(0,0,0,1);
}
a.theme_link_dark:hover{
  color: rgb(0,0,0);
  text-decoration: none;
  border-bottom: 1px solid rgba(0,0,0,0);
}
a.def{
  border-bottom: none;
  text-decoration: none;
  color: inherit;
}
body {
  font-family: 'Superior' !important;
  min-height: 680px;
  font-size: 16px;
  color: rgb(255,255,255);
  background-color: #000000;
}
img{
  max-width: 100%;
}
.menu_main_element{
  cursor: pointer;
}

.theme_white{
  color: rgb(255,255,255);
}
.theme_black{
  color: rgb(0,0,0);
}
.theme_gold{
  color: #FFCB87;
}
.theme_dgold{
  color: #FFA42E;
}
.theme_dgrey{
  color: #333333;
}
.theme_border{
  border-radius: 5px;
}

.theme_border_24{
  border-radius: 24px;
}
.theme_border_20{
  border-radius: 20px;
}
.theme_border_22{
  border-radius: 22px;
}
.theme_border_30{
  border-radius: 30px;
}
.theme_border_35{
  border-radius: 35px;
}
.theme_border_50{
  border-radius: 50px;
}
.theme_border_16{
  border-radius: 16px;
}
.theme_border_12{
  border-radius: 12px;
}
.theme_border_8{
  border-radius: 8px;
}

.theme_overflow{
  overflow: hidden;
}

.theme_back_lorange{
  background-color: #FFAD99;
}
.theme_back_orange{
  background-color: #EF896F;
}
.theme_back_grey_gradient{
  background: linear-gradient(98.9deg, rgba(92, 83, 83, 0.51) 18.29%, rgba(194, 175, 175, 0.1428) 102.33%);
}
.theme_back_grey_gradient_new{
  background: linear-gradient(
          135deg,
          rgba(0, 0, 0, 0.001),
          rgba(0, 0, 0, 0.002)
  );
  -webkit-backdrop-filter: blur(9px) saturate(120%);
  backdrop-filter: blur(9px) saturate(120%);

  border: 1px solid rgba(255, 255, 255, 0.25);
  box-shadow:
          0 10px 25px rgba(0, 0, 0, 0.10),
          inset 0 1px 0 rgba(255, 255, 255, 0.15); /* внутренний блик */
}
.theme_back_yellow{
  background-color: #FBE390;
}
.theme_back_white{
  background-color: #FFFFFF;
}

.theme_regular{
  font-weight: 400;
}
.theme_medium{
  font-weight: 500;
}
.theme_semibold{
  font-weight: 600;
}
.theme_bold{
  font-weight: 700;
}

.theme_upper{
  text-transform: uppercase;
}

.user_field{
  height: 42px;
  border: 1px solid rgba(153, 153, 153, 1);
  margin-bottom: 10px;
}
.has-error .user_field{
  border: 1px solid #a94442;
}

#add_dop{
  position: relative;
  top: 0px;
  left: 0px;
  width: 100%;
  height: auto;
  padding-top: 24px;
  padding-bottom: 24px;
  z-index: 112;
  background-color: #FF5539;
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgb(255, 255, 255);
  line-height: 1.2;
}
#add_dop .descr{
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 21px;
}
#add_dop .descr .descr_info{
  text-align: left;
  font-weight: 500;
}
#add_dop .descr .promo{
  background: white;
  color: #FF5539;
  padding: 4px 5px 2px 6px;
  border-radius: 6px;
  font-weight: bold;
}

.main_head{
  padding-bottom: 45px;
}
.main_head>video{
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1;
  object-position: 50% 50%;
}
.main_head:after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 190px;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 1));
  pointer-events: none;
  z-index: 1;
}
.main_head>div{
  position: relative;
  z-index: 2;
}

body.cities{
  margin: 0px auto;
  overflow: hidden;
  width: 100%;
  max-width: 1920px;
  position: relative;
  background-image: url("../images/aura/main/b_cities.jpg");
  background-size: cover;
  background-position: 50% 0%;
  background-repeat: no-repeat;
  height: 100vh;

  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
}
body.cities:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0)), linear-gradient(to top, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0)) bottom / 100% 150px no-repeat;
  pointer-events: none;
}
body.cities>div{
  z-index: 1;
  position: relative;
}
.cities .head_title{
  text-align: center;
}
.cities .logo{

}
.cities .logo img{
  max-width: 450px;
  width: 100%;
}
.cities h1{
  font-size: 28px;
}
.cities h2{
  font-size: 24px;
}
.cities .dop{
  font-size: 18px;
}
.cities .btns_block{

}
.main_head.cities{
  background: none;
}
.main_head.cities:after{
  display: none;
}
.main_head.cities .city_item_wrap {
  display: flex;
  justify-content: center;
  row-gap: 30px;
  column-gap: 45px;
  flex-wrap: wrap;
}
.main_head.cities .city_item_wrap a{
  outline: none !important;
}

/* Image wrapper with aspect ratio */
.image-wrapper {
  position: relative;
  aspect-ratio: 16/9; /* Makes it square, adjust as needed */
}

/* Gradient overlay */
.image-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(
          to bottom,
          transparent 0%,
          rgba(0, 0, 0, 1) 100%
  );
  pointer-events: none; /* Allows clicking through overlay */
  z-index: 1;
  transition: opacity 0.2s;
  opacity: 0.6;
}

/* Text styling */
.image-text {
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 2;
  text-align: center;
  font-size: 16px;
  line-height: 1.3;
  text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.7);
}

/* Hover effect */
.image-wrapper:hover .image-overlay{
  opacity: 0.9;
}

/* Ensure images fill the container */
.image-wrapper img {
  height: 100%;
  object-fit: cover;
}

/* Responsive text size */
@media (min-width: 768px) {
  .image-text {
    font-size: 20px;
  }
}

@media (min-width: 992px) {
  .image-text {
    font-size: 22px;
  }
}

.pp_block{

}
.pp_block .btn-close{
  position: absolute;
  top: 0px;
  right: 0px;
  transform: none;
  margin: 0px;
  width: 50px;
  height: 50px;
  align-items: center;
  padding: 0px;
  outline: none !important;
  z-index: 1;
  box-shadow: none !important;
  border: none !important;
  filter: invert(1) brightness(10);
  opacity: 1;
  transition: 0.2s;
}
.pp_block .btn-close:hover{
  opacity: 0.75;
}
.pp_block .modal-dialog{
  max-width: 560px;
}

#popup_promo_utm .modal-dialog{
  max-width: 380px;
  text-align: center;
}
#popup_promo_utm .modal-dialog .form_cat{
  background-color: #000000;
}
#popup_discount {
  font-size: 36px;
  line-height: 1.2;
  margin-top: 25px;
  font-weight: 600;
}
#popup_promo_utm .input_promo {
  margin-bottom: 24px;
}
#popup_promo_utm .btn_default_pop {
  display: flex;
}
.popup_title_utm {
  padding: 15px 0px 25px 0px;
}
.popup_title_utm .title_utm {
  font-size: 36px;
  color: #ffffff;
  margin-top: 20px;
}
.popup_title_utm p {
  font-size: 18px;
  color: #ffffff;
  line-height: 1.2;
  margin-top: 25px;
}
#popup_desc_mini {
  font-size: 18px;
  color: #ffffff;
  margin-top: 15px;
}
.input_promo {
  padding-left: 140px;
  height: 48px;
  position: relative;
  margin-bottom: 15px;
  border: none;
}
.input_promo label {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 140px;
  border-radius: 50vh 0px 0px 50vh;
  background-color: #FFA42E;
  color: #000000;
  text-align: center;
  padding: 0px 10px 0px 10px;
  margin-bottom: 0px;
  display: flex;
  justify-content: center;
  flex-direction: row;
  align-items: center;
  font-size: 16px;
  font-weight: 600;
  height: 48px;
}
.input_promo .popup_promo {
  display: inline-flex;
  width: 100%;
  height: 48px;
  padding: 5px 15px 0px 15px;
  float: left;
  text-align: center;
  text-transform: uppercase;
  font-size: 24px;
  color: rgb(33, 33, 33);
  justify-content: center;
  align-items: center;
  border-radius: 0px 50vh 50vh 0px;
  border-left: none !important;
  background: rgb(255, 255, 255);
}
.popup_title_utm svg{

}
.pp_block .modal-header{
  border: none;
  padding-bottom: 0px;
}
.pp_block .dop{
  font-size: 12px;
}
.form_cosmo .dop{
  font-size: 12px;
}
.main_group .dop{
  font-size: 12px;
}

#popup_timer, #popup_timer_add {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.popup-timer {
  display: flex;
  gap: 24px;
  justify-content: center;
  align-items: center;
}

.timer-circle {
  position: relative;
  width: 90px;
  height: 90px;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 500;
  /* прогресс по окружности */
  --value: 0; /* 0–1 */
  background: conic-gradient(#f6a800 calc(var(--value) * 1turn), #444 0);
}

.timer-circle::before {
  content: "";
  position: absolute;
  inset: 4px;
  border-radius: 50%;
  background: #000;
}

.timer-content {
  position: relative; /* чтобы текст был над внутренним кругом */
  text-align: center;
}

.timer-value {
  font-size: 28px;
  line-height: 1;
}

.timer-label {
  font-size: 12px;
  opacity: 0.8;
  margin-top: 4px;
}

#popup_timer_add{
  margin-bottom: 0px;
}
#add_dop .popup-timer,
#popup_timer_add_dop .popup-timer,
#popup_promo_utm .popup-time{
  column-gap: 15px;
}
#add_dop .timer-circle,
#popup_promo_utm .timer-circle{
  width: 58px;
  height: 58px;
}
#popup_timer_add_dop .timer-circle{
  width: 70px;
  height: 70px;
}
#add_dop .timer-value,
#popup_timer_add_dop .timer-value,
#popup_promo_utm .timer-value{
  font-size: 21px;
}
#add_dop .timer-label,
#popup_timer_add_dop .timer-label,
#popup_promo_utm .timer-label{
  font-size: 9px;
  margin-top: 2px;
}

#popup_order .form_cat{
  background-color: #1F1F1F;
}

.main_stars .main_title h2 br{
  display: none;
}

.main_stars_in{
  padding: 45px 40px 40px 40px;
  background-repeat: no-repeat;
  background-position: 50% 0px;
  background-size: cover;
  background-image: url("../images/aura/main/tinified/b3.jpg");
}

.main_block{
  margin-top: 75px;
  margin-bottom: 52px;
}

.story_sound_btn {
  position: absolute;
  right: 12px;
  top: 12px;
  z-index: 10;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: none;
  cursor: pointer;
  font-size: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,0.55);
  color: #fff;
  transition: background 0.2s ease, transform 0.1s ease;
}

.story_sound_btn:hover {
  transform: scale(1.05);
}

/* Состояния иконки можно сделать через текст/emoji, либо через фоны/иконки */
.story_sound_btn.muted::before {
  content: "🔇";
}
.story_sound_btn.on::before {
  content: "🔊";
}

.story_progress {
  position: absolute;
  bottom: 0;              /* можно 8px, если хочешь отступ */
  left: 0;
  right: 0;

  height: 32px;        /* кликабельная зона: 15px сверху + линия 2px + 15px снизу */
  padding: 15px 8px;   /* центрируем линию внутри области */

  cursor: pointer;
  z-index: 20;

  display: flex;
  align-items: center; /* линия по центру */
}

/* фоновая линия (2px) */
.story_progress::before {
  content: "";
  flex: 1;
  height: 2px;
  background: rgba(255,255,255,0.25);
  border-radius: 999px;
  position: relative;
  z-index: 1;
}

/* заполняющая полоса поверх фоновой */
.story_progress_fill {
  position: absolute;
  left: 8px;
  right: 8px;
  height: 2px;
  background: #fff;
  border-radius: 999px;
  width: 0%;
  z-index: 2;
  transition: width 0.1s linear;
}

.main_title h2{
  font-weight: 400;
  font-size: 36px;
  margin-bottom: 18px;
}

.main_title.flex_title{
  display: flex;
  justify-content: space-between;
  align-items: center;
  column-gap: 25px;
}

.btn_default{
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  padding: 3px 40px 0px 40px;
  cursor: pointer;
  background-color: #FFA42E;
  color: #252525;
  transition: 0.2s;
  border-radius: 50vh;
  opacity: 1;
  font-weight: 600;
  min-width: 210px;
  position: relative;
}
.qtickets-button{
  height: 48px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center;
  font-size: 16px !important;
  padding: 3px 40px 0px 40px;
  cursor: pointer;
  background-color: #FFA42E !important;
  color: #252525 !important;
  transition: 0.2s !important;
  border-radius: 50vh !important;
  opacity: 1;
  font-family: 'Superior' !important;
  font-weight: 600 !important;
  min-width: 210px !important;
  position: relative;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}
.btn_default:hover,
.qtickets-button:hover{
  color: #252525 !important;
  background-color: #ffffff !important;
  opacity: 1 !important;
}

.btn_default.btn_big{
  height: 58px;
  font-size: 19px;
  padding-top: 2px;
}
.qtickets-button.btn_big{
  height: 58px !important;
  font-size: 19px !important;
  padding-top: 2px !important;
  padding: 0px 15px;
}

.btn_default.def{
  color: #333333;
}
.btn_default.def:hover{
  background-color: #ffffff;
  color: #252525;
}

.main_menu{
  padding: 0px;
  position: absolute;
  left: 0px;
  width: 100%;
  z-index: 5;
  top: 20px;
}
.main_menu.main_menu_foot{
  position: relative;
  top: 0px;
}
#navbarsExample11{

}
.main_menu .logo{
  font-size: 0;
}
.main_menu .logo img{

}
.main_menu .navbar-nav li {
  margin: 0px 20px;
}
.main_menu .navbar-nav li a,
.main_menu .navbar-nav li span{
  font-size: 16px;
  color: rgb(255,255,255);
  position: relative;
}
.main_menu .navbar-nav li a span,
.main_menu .navbar-nav li span span{
  position: relative;
  padding-bottom: 3px;
}
.main_menu .navbar-nav li a span:before,
.main_menu .navbar-nav li span span:before{
  content: "";
  position: absolute;
  bottom: 0px;
  left: 50%;
  width: 0%;
  height: 1px;
  background-color: rgb(255,255,255);
  transition: 0.2s;
  transform: translate(-50%,0px);
}
.main_menu .navbar-nav li a:hover span:before,
.main_menu .navbar-nav li span:hover span:before{
  width: 100%;
}
.main_menu .navbar-nav li a.active span:before,
.main_menu .navbar-nav li span.active span:before{
  width: 100%;
}

.d1{
  width: 100%;
  justify-content: center;
  display: flex;
}
.main_menu .main_menu_inner_block .d2{
  white-space: nowrap;
}

.main_head{
  padding-top: 124px;
  position: relative;
  margin-bottom: 52px;
  overflow: hidden;
  max-width: 1920px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
/*.main_head:before{*/
/*  content: "";*/
/*  position: absolute;*/
/*  top: 60px;*/
/*  left: 0px;*/
/*  width: 100%;*/
/*  height: 100%;*/
/*  object-fit: cover;*/
/*  object-position: 50% 0%;*/
/*  background-image: url(../images/aura/main/b_m_n.png);*/
/*  background-size: cover;*/
/*  background-repeat: no-repeat;*/
/*  background-position: 50% 0px;*/
/*}*/
.main_head::before {
  content: "";
  position: absolute;
  top: 0px;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(../images/aura/main/b_m_n_2.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% -19px;
  z-index: 2;
  clip-path: circle(0% at 0% 100%);
  opacity: 0; /* пока не загружено */
}

/* Анимация запускается ТОЛЬКО когда появится класс "ready" */
.main_head.ready::before {
  animation: auraReveal 2.5s ease-out forwards;
  opacity: 1;
}
/* Анимация дугой снизу → вверх к центру */
@keyframes auraReveal {
  0% {
    /* маленькая точка внизу слева */
    clip-path: circle(0% at 0% 100%);
  }
  50% {
    /* проходит дугой через нижний центр */
    clip-path: circle(40% at 50% 100%);
  }
  100% {
    /* круг перекрывает весь блок */
    clip-path: circle(150% at 50% 50%);
  }
}

.n_tag{
  font-size: 16px;
  padding: 7px 15px 5px 15px;
  border-radius: 50vh;
  background-color: rgb(255,255,255);
  color: #222222;
}

.main_head>div{
  position: relative;
  z-index: 3;
}
.main_head_image{
  height: 100%;
  position: relative;
}
.main_head_image>img{
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}

#anchor_video .main_head_image:before{
  content: "";
  display: block;
  padding-top: 58.25%;
}
#anchor_video .main_head_image img{

}

.head_new .main_logo>img{
  max-width: 316px;
}
.head_new h1{
  font-size: 21px;
}
.head_new .dop_panel{
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  padding: 23px;
  background: linear-gradient(98.9deg, rgba(26, 25, 25, 0.51) 18.29%, rgba(153, 139, 139, 0.1428) 102.33%);
  font-size: 21px;
  backdrop-filter: blur(8px);
}
.head_new .dop_panel .btn_default{
  min-width: 240px;
}
.head_new .head_bottom{
  margin-top: 155px;
}
.head_new .head_bottom .descr{
  font-size: 21px;
}


h1,h2,h3,h4,h5,h6{
  font-weight: 400;
}

.decor{
  font-family: 'Literature';
}

.main_ng{
  position: relative;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
  max-width: 1920px;
  width: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% calc(100% + 115px);
  background-image: url(../images/aura/main/tinified/back_ng_all.jpg);
  padding-bottom: 0px;
  margin-top: 115px;
}
.main_ng:before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 190px;
  background: linear-gradient(to bottom, rgba(0,0,0,1), rgba(0,0,0,0));
  pointer-events: none; /* опционально, чтобы не перекрывать клики */
}
.main_ng>div{
  position: relative;
  z-index: 1;
}
.main_ng .main_title h2{
  font-size: 85px;
}
.main_ng .main_title p{
  font-size: 27px;
}
.main_ng .main_ng_in{
  position: relative;
  background: #1F1F1F;
  padding: 22px 20px 22px 20px;
  overflow: hidden;
}
.main_ng .main_ng_in:before{
  content: "";
  position: absolute;
  bottom: 0px;
  left: 0px;
  width: 199px;
  height: 263px;
  background-repeat: no-repeat;
  background-position: 0% 0%;
  background-size: auto;
  background-image: url("../images/aura/main/tinified/snow_l.png");
}
.main_ng .main_ng_in:after{
  content: "";
  position: absolute;
  bottom: 0px;
  right: 0px;
  width: 296px;
  height: 338px;
  background-repeat: no-repeat;
  background-position: 100% 100%;
  background-size: auto;
  background-image: url("../images/aura/main/tinified/snow_r.png");
}
.main_ng .main_ng_in .panel{
  background: linear-gradient(180deg, rgba(39, 39, 39, 0.72) 0%, rgba(0, 0, 0, 0.72) 100%);
  backdrop-filter: blur(3px);
  padding: 25px;
}
.main_ng .main_ng_in .panel .descr{
  font-size: 1.15em;
}
.d_opacity{
  opacity: 0.7;
}
.d_opacity_white{
  opacity: 0.3;
}

.main_menu_foot .logo{

}
.main_menu_foot .logo img{

}

.main_program{
  margin-top: 125px;
}
.main_program .panel{
  position: relative;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url("../images/aura/main/tinified/back_program_n.jpg");
}
.main_program .panel:before{
  content: "";
  display: block;
  padding-top: 78%;
}
.main_program .panel .panel_inner{
  position: absolute;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  padding: 25px 25px 45px 25px;
}
.main_program .panel .panel_top{

}
.date{
  font-size: 24px;
}
.main_program .panel .panel_top .descr{
  text-align: right;
  font-size: 20px;
}
.main_program .panel .panel_bottom .p_title{
  font-size: 20px;
}

.program-block {
  color: #fff;
}

.program-title {
  font-size: 32px;
  font-weight: 400;
}
.program-subtitle {
  font-size: 18px;
  font-weight: 400;
}
.program-block ul{
  padding-left: 0px;
  list-style-type: none;
  font-size: 16px;
  margin: 0px;
}

.program-title span {
  font-weight: 200;
  margin-left: 16px;
}

.program-block-wrap .icon-add{
  display: inline-block;
  position: relative;
  transition: transform .3s ease;
  width: 35px;
  height: 35px;
  border: 2px solid rgb(255, 255, 255);
  border-radius: 50vh;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  background-size: 7px auto;
  background-image: url(../images/aura/svg/icon_arrow.svg);
  transform: rotate(90deg);
}
.program-block-wrap .icon-add.open{
  transform: rotate(270deg);
}
.program-block-wrap .toggle-btn-add{
  background: none;
  border: none;
  color: white;
  font-size: 24px;
  cursor: pointer;
  outline: none;
}
.program-block-wrap .add_block_pc{
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  transition: max-height .5s ease, opacity .4s ease;
}
.program-block-wrap .add_block_pc.open {
  opacity: 1;
}

.audio-item-wrap{
  margin-top: 16px;
}
.audio-item {
  padding-bottom: 0.75rem;
  border-bottom: 1px solid #222;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.audio-title {
  font-size: 14px;
  margin-bottom: 16px;
}

.audio-controls {
  display: flex;
  align-items: center;
  gap: 18px;
}

.play-btn {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 2px solid #FFA42E;
  background: transparent;
  cursor: pointer;
  position: relative;
  flex-shrink: 0;
}

/* ▶ и ⏸ рисуем псевдоэлементами */
.play-btn::before {
  content: '';
  position: absolute;
  left: 11px;
  top: 9px;
  border-style: solid;
  border-width: 6px 0 6px 10px;
  border-color: transparent transparent transparent #FFA42E;
}

/*.play-btn.pause::before {*/
/*  content: '';*/
/*  position: absolute;*/
/*  width: 17px;*/
/*  height: 10px;*/
/*  left: 3px;*/
/*  top: 9px;*/
/*  background: #FFA42E;*/
/*  clip-path: polygon(0 0, 40% 0, 40% 100%, 0 100%, 60% 100%, 60% 0, 100% 0, 100% 100%, 60% 100%, 60% 0);*/
/*}*/

.play-btn.pause::before {
  content: '';
  position: absolute;
  left: 10px;
  top: 9px;
  width: 10px;
  height: 12px;

  /* удаляем треугольник */
  border: none;

  /* отрисовываем две палочки */
  background:
          linear-gradient(#FFA42E 0 0) left center / 3px 12px no-repeat,
          linear-gradient(#FFA42E 0 0) right center / 3px 12px no-repeat;
}

.progress-outer {
  height: 8px;
  width: 100%;
  background: #222;
  border-radius: 999px;
  overflow: hidden;
  cursor: pointer;          /* <– добавили */
}

.progress-fill {
  height: 100%;
  width: 0%;
  background: #e9a54b;
  border-radius: 999px;
  transition: width 0.15s linear;
}

/* Чуть меньше шрифт и отступы на мобильных */
@media (max-width: 575.98px) {
  .program-title {
    font-size: 24px;
  }
  .program-subtitle {
    font-size: 18px;
  }
  .audio-title {
    font-size: 16px;
  }
}

.main_events{
  margin-top: 125px;
  position: relative;
  width: 100%;
  max-width: 1920px;
  margin-left: auto;
  margin-right: auto;
}
.main_events:before{
  content: "";
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  background-image: url("../images/aura/main/tinified/back_events.png");
  background-size: auto;
  background-repeat: no-repeat;
  background-position: 0px 0px;
}
.main_events>div{
  position: relative;
  z-index: 1;
}
.main_events .panel{
  background-color: #1F1F1F;
  padding: 25px;
}

@media (min-width: 992px) {
  .main_events .panel{
    position: sticky;
    top: 30px;
    margin-bottom: 75px;
  }
}

.main_events .panel .p_subtitle{
  font-size: 20px;
}

.main_events .event_item_wrap{
  margin-bottom: 75px;
}
.main_events .event_item{

}
.main_events .event_item .descr{
  font-size: 20px;
}
.main_events .event_item .photo{
  overflow: hidden;
}

.tags{
  display: flex;
  align-items: center;
  column-gap: 5px;
  flex-wrap: wrap;
  row-gap: 14px;
}
.tags .tag_item{
  padding: 5px 12px;
}

.tags_icons{
  display: flex;
  align-items: center;
  column-gap: 14px;
  flex-wrap: wrap;
  row-gap: 14px;
}
.tags_icons .tag_item_icon{
  padding: 5px 17px 5px 47px;
  background-color: rgb(255, 255, 255);
  color: #4A11C2;
  background-image: url(../images/svg/icon_li_star.svg);
  background-position: 20px 50%;
  background-repeat: no-repeat;
  background-size: 18px auto;
}
.tags_icons .tag_item_icon.active{
  background-color: #4A11C2;
  color: #ffffff;
  background-image: url(../images/svg/icon_li_star_white.svg);
}

/*youtube videos*/
.video_block {

}
.containingBlock {
  width: 100%;
  overflow: hidden;
}
.videoWrapper {
  position: relative;
  padding-bottom: 65.67%;
  height: 0;
  overflow: hidden;
  z-index: 1;
  background: linear-gradient(180deg, rgba(39, 39, 39, 0.72) 0%, rgba(0, 0, 0, 0.72) 100%);
}

.videoWrapper div,
.videoWrapper iframe,
.videoWrapper video,
.videoWrapper img{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
  object-fit: cover;
  object-position: 50% 50%;
}

.videoWrapper.active > div:before {
  display: none;
}

.videoWrapper.videoWrapper_preview > div:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -60px;
  margin-top: -40px;
  background-image: url("../images/aura/svg/icon_play_video.svg");
  background-position: calc(50% + 4px) 50%;
  background-size: 32px auto;
  background-repeat: no-repeat;
  width: 120px;
  height: 80px;
  background-color: #FFA42E;
  border-radius: 16px;
  z-index: 1;
  transition: 0.2s;
}
.videoWrapper.videoWrapper_preview:hover > div:before{
  opacity: 0.85;
}
.videoWrapper.videoWrapper_preview > div:after{
  content: "";
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.1);
  transition: 0.2s;
  opacity: 1;
}
.videoWrapper.videoWrapper_preview:hover > div:after{
  opacity: 0;
}
  /*youtube videos end*/

.main_footer{
  position: relative;
  background-size: 100% 100%;
  background-position: 50% 100%;
  background-repeat: no-repeat;
  background-image: url("../images/aura/main/b_foot.jpg");
}
.main_faq .main_faq_in{
  padding: 25px;
  background-color: #1F1F1F;
  border-radius: 35px;
}
.main_faq .faq_item .di_up{
  border-bottom: 1px solid #ffffff;
  min-height: 62px;
  display: flex;
  position: relative;
  padding-right: 62px;
  cursor: pointer;
  align-items: center;
}
.main_faq .faq_item:last-child  .di_up{
  /*border-bottom: none;*/
}
.main_faq .faq_item .di_up .di_title{
  white-space: normal;
  width: 100%;
}
.main_faq .faq_item .di_up .di_title h3{
  font-size: 24px;
  margin: 0px;
}
.main_faq .faq_item .di_up:hover .di_title h3,
.main_faq .faq_item.active .di_up .di_title h3{
  color: #FFA42E;
}
.main_faq .faq_item .di_up .di_plus{
  transition: 0.2s;
  width: 62px;
  height: 62px;
  position: absolute;
  top: 0px;
  right: 0px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}
.main_faq .faq_item .di_up .di_plus>div{
  position: relative;
  width: 40px;
  height: 40px;
  background-color: rgba(255,255,255,0);
  border-radius: 50vh;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.2s;
}
.main_faq .faq_item .di_up .di_plus svg{
  width: 24px;
  height: 24px;
  transform: rotate(0deg);
  transform-origin: 50% 50%;
  transition: 0.2s;
  position: relative;
}
.main_faq .faq_item .di_up .di_plus svg path{
  transition: 0.2s;
}
.main_faq .faq_item.active .di_up .di_plus>div {
  background-color: rgba(255, 255, 255, 1);
}
.main_faq .faq_item.active .di_up .di_plus svg{
  transform: rotate(-45deg);
}
.main_faq .faq_item.active .di_up .di_plus svg path{
  stroke: #FFA42E;
}

.main_faq .faq_item:hover .di_up .di_plus>div {
  background-color: rgba(255, 255, 255, 1);
}
.main_faq .faq_item:hover .di_up .di_plus svg path{
  stroke: #FFA42E;
}
.main_faq .faq_item .di_bottom{
  display: none;
  font-weight: 300;
  padding-bottom: 18px;
  background-color: transparent;
  font-size: 16px;
  padding-top: 18px;
}

.main_photo{
  position: relative;
  overflow: hidden;
  max-width: 1920px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.partner_item_wrap{
  margin-bottom: 24px;
}
@media (min-width:1199.98px) {
  .partner_item_wrap{
    width:20%;
  }
}
.partner_item{
  background: #ffffff;
  min-height: 115px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10%;
  height: 100%;
  border-radius: 12px;
  overflow: hidden;
}
.partner_item img{

}
/* todo */
.def_slider_wrap_1 .def_slider_wrap{
  width: 100%;
}
.def_slider_wrap_1 .btns_slider{

}

.def_slider_wrap{
  display: none;
  width: 85%;
}
.def_slider{
  margin: 0px -12px;
}
.def_slider .slick-list{
  overflow: visible;
}
.ds_item{
  margin: 0px 12px;
}
.ds_item .ds_image{
  position: relative;
  overflow: hidden;
  background-color: rgb(220, 220, 220);
}
.ds_image .tags{
  position: absolute;
  z-index: 1;
  top: 7px;
  left: 7px;
}
.ds_image .tags .tag_item {
  padding: 3px 10px;
  font-size: 12px;
  border-radius: 8px;
}

.ds_item .ds_image .containingBlock{
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
}
.ds_item .ds_image .containingBlock .videoWrapper.videoWrapper_preview > div:before{
  width: 52px;
  height: 52px;
  margin-left: -26px;
  margin-top: -26px;
  background-size: 20px auto;
  background-position: calc(50% + 2px) 50%;
}
.ds_item .ds_image:before{
  content: "";
  display: block;
  padding-top: 132%;
}
.ds_item .ds_image.ds_video:before{
  padding-top: 177%;
}
.ds_item .ds_image img{
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
  transform: scale(1.01);
  transition: 0.3s;
}
.ds_item .ds_image video{
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
  opacity: 1;
}
.ds_item .ds_image:hover img{
  transform: scale(1.06);
}
.main_stars_new .ds_item .ds_image {
  background-color: rgb(255, 255, 255);
}
.main_stars_new .ds_item .ds_image img{
  transform: scale(0.94);

  object-fit: contain;
  object-position: 50% 0px;
}
.main_stars_new .ds_item .ds_image:hover img{
  transform: scale(1);
}
.ds_item .ds_image video:hover{
  opacity: 0.95;
}
.ds_item .ds_descr{

}
.ds_item .ds_descr h3{
  font-weight: normal;
  text-transform: uppercase;
}
.ds_item .ds_descr p{
  font-size: 12px;
}

.btns_slider{
  display: flex;
  column-gap: 15px;
  align-items: center;
  margin-bottom: 30px;
}
.btns_slider .btn_sl {
  width: 60px;
  height: 60px;
  border-radius: 20px;
  background-color: transparent;
  position: relative;
  cursor: pointer;
  border: 1px solid #9E9E9E;
}
.btns_slider .btn_sl:before{
  content: "";
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  background-image: url("../images/aura/svg/icon_arrow.svg");
  background-size: 9px auto;
  background-repeat: no-repeat;
}
.btns_slider .btn_sl_prev:before {
  background-position: calc(50% + 1px) 50%;
  transform: scale(-1, 1);
}
.btns_slider .btn_sl_next:before{
  background-position: calc(50% + 1px) 50%;
}

.btns_slider .btn_sl:hover{
  background-color: transparent;
  border: 1px solid #BFC0C1;
}
.btns_slider .btn_sl:hover:before{
  filter: grayscale(1) brightness(10);
}

.tile_wrap{
  margin-bottom: 24px;
}
.gal_item a{
  height: 100%;
  display: block;
  overflow: hidden;
}
.gal_item a img{
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}


.g-map-m {
  height: 100%;
  min-height: 380px;
}
.g-map-m .gmap {
  height: 100%;
  width: 100%;
  border-radius: 5px;
}

#js-gmap > ymaps {
  border-radius: 24px;
  overflow: hidden;
}

.js-map {
  border-radius: 5px;
}

.soc_wrap{
  display: flex;
  column-gap: 15px;
}
.soc{
  position: relative;
  padding-left: 27px;
  opacity: 1;
  transition: 0.2s;
  padding-top: 3px;
}
.soc:before{
  content: "";
  position: absolute;
  border-radius: 50vh;
  left: 0px;
  top:50%;
  transform: translate(0px,-50%);
  width: 20px;
  height: 20px;
  /*background-color: #D9D9D9;*/
  background-repeat: no-repeat;
  background-position: 50% 50%;
}
.soc:hover{
  opacity: 0.85;
}
.soc.soc_vk:before{
  background-size: 18px auto;
  background-image: url("../images/svg/icon_vk.svg");
}
.soc.soc_inst:before{
  background-size: 18px auto;
  background-image: url("../images/svg/icon_inst.svg");
}

.soc_dop_wrap{
  display: flex;
  column-gap: 30px;
}
.soc_dop{
  position: relative;
  display: flex;
  align-items: center;
  padding-left: 45px;
  background-repeat: no-repeat;
  background-position: 0px 50%;
  background-size: 35px auto;
  min-height: 35px;
}
.soc_dop.soc_mirey{
  background-image: url("../images/back/foot/ic_mirey.png");
}
.soc_dop.soc_nauka{
  background-image: url("../images/back/foot/ic_nauka.png");
}

#mobile_tickets{
  display: none !important;
}

@media (min-width:1200px){
  body.ml .head_new .head_top .descr_mob br{
    display: none;
  }
}

@media (min-width:1200px) and (max-width:1399.98px){
  body{
    font-size: 12px;
  }
  .main_title h2 {
    font-size: 32px;
  }
  .cities .logo img{
    max-width: 240px;
  }
  .cities h1{
    font-size: 20px;
  }
  .cities h2 {
    font-size: 16px;
  }
  .cities .dop {
    font-size: 16px;
    margin-top: 12px !important;
  }
  .btn_default.btn_big {
    height: 48px;
    font-size: 18px;
  }

}

@media (min-width:992px) and (max-width:1199.98px) {
  .main_menu .logo {
    font-size: 27px;
  }
  #mobile_tickets{
    display: none !important;
  }
  .main_menu .navbar-nav li a, .main_menu .navbar-nav li span {
    font-size: 12px;
  }
  .main_menu_foot.main_menu .navbar-nav-wrap{
    flex-direction: row;
    align-items: center;
  }
  .cities .logo img{
    max-width: 240px;
  }
  .cities h1{
    font-size: 20px;
  }
  .cities h2 {
    font-size: 16px;
  }
  .cities .dop {
    font-size: 16px;
    margin-top: 12px !important;
  }
  .btn_default.btn_big {
    height: 48px;
    font-size: 18px;
  }
  body.cities{
    height: auto;
    overflow: visible;
  }
}



@media (min-width:768px) and (max-width:991.98px){
  .main_menu{
    position: fixed;
  }
  .main_menu .main_menu_inner{
    position: relative;
    background-color: #EF896F;
    border-radius: 12px;
    padding: 0.5rem 1rem !important;
    align-items: center;
    flex-direction: column;
    border: 1px solid rgb(255, 255, 255);
  }
  .main_menu .main_menu_inner_block{
    flex-direction: column;
  }
  .main_menu .main_menu_inner_block .navbar-nav{
    width: 100%;
  }

  .popup_title_utm {
    padding: 25px 0px 25px 0px;
  }

  #navbarsExample11 {
    width: 100%;
    padding: 0px !important;
  }
  #usedesk-messenger{
    display: none !important;
  }
  .main_head {
    padding-top: 108px;
    min-height: 680px;
    padding-bottom: 24px;
    overflow: hidden;
    height: auto;
  }
  .main_menu .logo {
    font-size: 27px;
  }
  .main_menu .navbar-toggler{
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
  }
  .main_menu .navbar-toggler-icon{
    width: 2em;
    height: 2em;
    filter: grayscale(1) brightness(10);
  }
  .main_may .mob_add .may_image:before {
    padding-top: 56.25%;
  }
  #mobile_tickets{
    display: none !important;
  }
  .main_menu_foot.main_menu .navbar-nav-wrap{
    flex-direction: column;
    align-items: flex-start !important;
  }
  body.cities{
    height: auto;
    overflow: visible;
  }
}

@media (min-width:768px) and (max-width:991.98px) and (orientation : landscape){
  .main_head.cities {
    padding-top: 45px;
  }
  .cities .logo img{
    max-width: 220px;
  }
  .cities .btns_block {
    margin-top: 0px !important;
    padding-top: 16px !important;
  }
  .cities h1 {
    font-size: 16px;
  }
  .cities h2{
    font-size: 14px;
  }
  body.cities{
    height: auto;
    overflow: visible;
  }
}

.def_slider_wrap_2 .gallery .tile img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

body.ml{

}
body.ml .main_head{
  /*background-image: url(../images/aura/main/tinified/b_m_l_5.jpg);*/
  background-position: 50% 0px;
  background-repeat: no-repeat;
  background-size: cover;
}
body.ml .n_tag{
  background-color: #FFCF90;
  color: #000000;
}

body.ml .main_head .n_tag.n_gold {
  /*background-color: #ffcf90;*/
  /*color: #000000;*/
  position: relative;
  color: #f5c77a;
  border: none;
  padding: 7px 15px;
  background: rgba(0, 0, 0, 0.9);
  border-radius: 50vh;
  text-align: center;
}
body.ml .main_head .n_tag.n_gold {
  color: #1a1206; /* тёмный для читаемости */
  font-weight: 500;
  border: none;

  background: linear-gradient(
          135deg,
          #b8832f 0%,
          #f5c77a 35%,
          #fff1b8 50%,
          #f5c77a 65%,
          #b8832f 100%
  );

  border-radius: 50vh;

  box-shadow:
          inset 0 1px 0 rgba(255,255,255,0.4),
          0 2px 6px rgba(0,0,0,0.25);
}

body.ml .main_head .n_tag.n_gold::before {
  content: "";
  position: absolute;
  inset: 0;
  padding: 1px;
  border-radius: 50vh;

  background: linear-gradient(
          5deg,
          rgba(255, 120, 20, 0) 0%,
          rgba(255, 140, 40, 0.3) 15%,
          rgba(255, 160, 60, 0.6) 30%,
          rgba(255, 190, 90, 0.9) 50%,
          rgba(255, 160, 60, 0.6) 70%,
          rgba(255, 140, 40, 0.3) 85%,
          rgba(255, 120, 20, 0) 100%
  );

  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;

  pointer-events: none;
  z-index: 0;
}

body.ml .head_new h1{
  color: #FFCF90;
  font-size: 68px;
  text-align: left;
  line-height: 1;
}
body.ml .head_new .head_bottom{
  margin-top: 335px;
}
body.ml .audio-title {
  margin-bottom: 12px;
}
body.ml .audio-item-wrap{
  margin-top: 12px;
}
.main_ng.main_ml{
  margin-top: 55px;
}
.main_ml .descr_add{
  color: #FFCF90;
  font-size: 21px;
}
.main_ng.main_ml:before{
  height: 245px;
}
.main_ng.main_ml{
  background-position: 50% 0px;
  background-image: url(../images/aura/main/tinified/b_ml_2.jpg);
  padding-bottom: 0px;
  margin-top: 0px;
  padding-top: 135px;
}
.main_ng.main_ml .main_ng_in:before,
.main_ng.main_ml .main_ng_in:after{
  display: none !important;
}
.main_ng.main_ml .main_ng_in {
  background: transparent;
  padding: 0px;
}
.main_ng.main_ml .main_title h2{
  font-size: 105px;
}
.main_ng.main_ml .main_title p{
  font-size: 24px;
  background: rgba(0, 0, 0, 0.12);
  backdrop-filter: blur(25px);
  padding: 7px 15px 5px 15px;
  display: inline-block;
  border-radius: 12px;
  overflow: hidden;
  margin-left: auto;
  margin-right: auto;
}
.main_ng.main_ml .main_ng_in .panel{
  background: radial-gradient(50% 50% at 50% 50%, #490909 0%, #1D0403 100%);
}
.main_ng.main_ml .videoWrapper{
  padding-bottom: 61.4%;
}

body.gh{

}
body.gh .main_head{
  background-image: url(../images/aura/main/tinified/b_gh_1.jpg);
}
body.gh .main_head:after {
  height: 250px;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.9));
}

.main_ng.main_gh:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 190px;
  background: linear-gradient(to top, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0));
  pointer-events: none;
}
.main_ng.main_ml.main_gh .main_title p {
  font-size: 28px;
  background: rgba(0, 0, 0, 0.45);
}
.main_ng.main_ml.main_gh {
  background-image: url(../images/aura/main/tinified/b_gh_2.jpg);
}
.main_ng.main_ml.main_gh .main_title h2 {
  font-size: 68px;
}
.main_ng.main_ml.main_gh{
  padding-top: 95px;
}
.main_ng.main_gh .main_ng_in .panel .descr{
  font-size: 1.1em;
}

#toggle-block .toggle-inner .add{
  font-size: 12px;
}

@media (min-width:1200px){
  body.ml .main_logo{
    display: none;
  }
}

/* На мобильных фиксируем разумную высоту плиток */
@media (max-width: 767.98px) {
  .def_slider_wrap_2 .gallery .tile {
    height: 220px; /* подберите под дизайн */
  }
  #toggle-block .toggle-inner .add{
    text-align: center;
  }
  .main_ng .main_ng_in .panel .descr{
    font-size: 0.92em;
  }
}

@media (max-width:767.98px) {

  body.ml .mob_wrap{
    background-color: #4E0000;
  }
  body.ml .main_head{
    background: none;
    padding-top: 80px;
  }
  body.ml .head_new {
    padding-top: 315px;
    padding-bottom: 30px;
  }
  body.ml .head_new .head_top{
    display: flex;
    flex-direction: column;
  }
  body.ml .head_new .head_top .descr_mob br{
    display: none;
  }
  body.ml .head_new .head_top h2 span{
    display: inline;
    padding-top: 0px;
  }
  body.ml .main_head:after{
    display: none;
  }
  body.ml .head_new {
    overflow: hidden;
    position: relative;
    padding-left: 12px;
    padding-right: 12px;
    background-image: url(../images/aura/main/tinified/b_g_l_m_1.jpg);
  }
  body.ml .head_new>div{
    position: relative;
    z-index: 1;
  }
  body.ml .main_head .n_tag {
    /*background-color: #ffcf90;*/
    /*color: #000000;*/
    position: relative;
    color: #f5c77a;
    padding: 7px 15px;
    background: rgba(0, 0, 0, 0.9);
    border-radius: 8px;
    text-align: center;
  }
  body.ml .main_head .n_tag::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 1px;
    border-radius: 8px;

    background: linear-gradient(
            5deg,
            rgba(255, 120, 20, 0) 0%,
            rgba(255, 140, 40, 0.3) 15%,
            rgba(255, 160, 60, 0.6) 30%,
            rgba(255, 190, 90, 0.9) 50%,
            rgba(255, 160, 60, 0.6) 70%,
            rgba(255, 140, 40, 0.3) 85%,
            rgba(255, 120, 20, 0) 100%
    );

    -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;

    pointer-events: none;
    z-index: 0;
  }

  body.ml .main_head .n_tag.n_gold {
    color: #1a1206; /* тёмный для читаемости */
    font-weight: 500;
    border: none;

    background: linear-gradient(
            135deg,
            #b8832f 0%,
            #f5c77a 35%,
            #fff1b8 50%,
            #f5c77a 65%,
            #b8832f 100%
    );

    border-radius: 8px;

    box-shadow:
            inset 0 1px 0 rgba(255,255,255,0.4),
            0 2px 6px rgba(0,0,0,0.25);
  }

  /* Убираем рамку у акцентного */
  body.ml .main_head .n_tag.n_gold::before {
    display: none;
  }


  body.ml .head_new .head_bottom{
    margin-top: 16px
  }
  body.ml .head_new h1{
    font-size: 42px;
    text-align: center;
    margin-top: 0px !important;
    line-height: 1.2;
  }
  body.ml .head_new .head_top h2{
    margin-top: 8px;
    font-size: 18px;
  }
  body.ml .head_new:before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 65%;
    left: 0px;
    bottom: 0px;
    background: linear-gradient(360deg, #000000 0%, rgba(0, 0, 0, 0) 100%);
  }
  body.ml .n_tag{
    font-size: 13px;
    text-align: center;
  }

  .main_ng.main_ml .main_title h2{
    font-size: 48px;
  }
  .main_ng.main_ml:before{
    display: none;
  }
  .main_ng.main_ml .main_title p{
    color: #FFCF90;
    font-family: 'Literature';
    text-transform: uppercase;
  }
  .main_ng.main_ml{
    background: none;
    padding-top: 0px;
    margin-bottom: 22px;
  }
  .main_ng.main_ml .main_ml_in{
    position: relative;
    padding-bottom: 0px;
    margin-bottom: 22px;
    border-radius: 22px;
    padding-top: 35px;
    overflow: hidden;
    background: #000000;
  }
  .main_ng.main_ml .containingBlock_wrapper_mob{
    padding: 22px;
  }
  .main_ng.main_ml .main_ml_in:before{
    content: "";
    position: absolute;
    height: 400px;
    width: 100%;
    top: 0px;
    left: 0px;
    background: linear-gradient(360deg, rgba(51, 0, 0, 0) 0%, #330000 100%);
    z-index: 2;
  }
  .main_ng.main_ml .main_ml_in:after{
    content: "";
    position: absolute;
    height: 400px;
    width: 100%;
    top: 0px;
    left: 0px;
    background-position: 50% 0px;
    background-repeat: no-repeat;
    background-image: url(../images/aura/main/tinified/b_ml_2.jpg);
    background-size: cover;
    z-index: 1;
  }
  .main_ng.main_ml .main_ng_in .panel{
    background: none;
  }
  .main_ng.main_ml .main_ng_in{

  }
  .main_ng.main_ml .main_ml_in>div{
    position: relative;
    z-index: 3;
  }
  .main_ng.main_ml .main_title p{
    font-size: 16px;
  }
  body.ml .main_program .panel{
    background-image: url(../images/aura/main/tinified/b_pr_ml.jpg);
  }
  body.ml .main_program .panel .panel_inner{
    margin-top: 24px;
    row-gap: 345px;
    padding-bottom: 0px;
  }

  .main_ng.main_ml .main_program{
    margin-top: 40px;
  }

  body.gh .head_new {
    background-image: url(../images/aura/main/tinified/b_gh_m_1.jpg);
    padding-top: 45px;
    padding-bottom: 340px;
  }
  body.gh .head_new h1{
    margin-top: 20px !important;
    background: linear-gradient(90deg, #F66C02 0%, #E5BF67 41.83%, #FE8F00 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent;
    line-height: 1.2;
    font-size: 24px;
  }
  body.gh .head_new .head_top h2 {
    margin-top: 10px;
  }

  .main_ng.main_gh:before{
    display: block !important;
  }
  .main_ng.main_ml.main_gh .main_title h2 {
    font-size: 24px;
    line-height: 1.38;
    margin-bottom: 15px !important;
  }
  .main_ng.main_ml.main_gh .main_title p {
    font-size: 14px;
  }


  #add_dop{
    height: auto;
    padding-top: 24px;
    padding-bottom: 24px;
  }
  #add_dop .descr{
    flex-wrap: wrap;
  }
  #add_dop .btns_block,
  #add_dop .descr_timer {
    width: 50%;
  }
  #add_dop .btns_block{
    text-align: right;
  }
  #add_dop .btns_block .btn_default{
    min-width: 140px;
    font-size: 14px;
    padding: 0px 12px;
    width: auto;
    display: inline-flex;
    height: 42px;
  }
  #add_dop .descr_info{
    width: 100%;
    margin-bottom: 12px;
  }
  #add_dop .descr_info br{
    display: none;
    text-align: center;
  }
  #add_dop .descr{
    font-size: 21px;
  }
  #add_dop .popup-timer{
    column-gap: 5px;
  }
  #add_dop .timer-circle{
    width: 42px;
    height: 42px;
  }
  #add_dop .timer-value, #popup_timer_add_dop .timer-value{
    font-size: 14px;
  }
  #add_dop .timer-label, #popup_timer_add_dop .timer-label {
    font-size: 6px;
    margin-top: 0px;
  }

  body {
    font-size: 18px;
  }
  #toggle-block{
    /*max-height: 0px;*/
    max-height: none;
    opacity: 1;
  }
  .program-block-wrap .toggle-wrapper{
    display: none !important;
  }

  body.cities{
    padding-bottom: 65px;
    min-height: 100vh;
    overflow: visible;
    height: auto;
  }

  .main_head.cities{
    padding-bottom: 24px;
    overflow: visible;
    height: auto;
    align-items: flex-start !important;
    padding-top: 185px;
  }
  .cities .main_head .logo {
    max-width: 215px;
    margin: 0px auto;
  }
  .cities .main_head h1{
    font-size: 15px;
    margin-top: 12px !important;
  }
  .cities .main_head .dop{
    font-size: 16px;
  }
  .main_head.cities .city_item_wrap {
    row-gap: 24px;
    column-gap: 24px;
  }
  .main_head.cities .city_item_wrap .btn_default {
    height: 48px;
    font-size: 18px;
    padding: 0px 15px;
    min-width: 160px;
  }

  .head_new .main_logo>img {
    max-width: 165px;
  }
  .head_new .head_top h2{
    margin-top: 24px;
    font-size: 24px;
  }
  .head_new .head_top h1{
    color: #FFCF90;
  }
  .head_new{
    padding-top: 55px;
    padding-bottom: 315px;
    border-radius: 22px;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
    background-image: url("../images/aura/main/tinified/back_head_mobile_n.jpg");
  }
  .main_head::before{
    display: none !important;
  }

  .main_ng{
    background-repeat: no-repeat;
    background-position: 50% 0%;
    background-size: auto 605px;
    margin-top: 45px;
  }
  .main_ng .main_title h2{
    font-size: 42px;
  }
  .main_ng .main_title p {
    font-size: 16px;
  }
  .main_ng .main_ng_in{
    background: transparent;
    padding-top: 185px;
  }
  .main_ng .main_ng_in .panel{
    background: none;
    backdrop-filter: none;
    text-align: center;
  }
  .main_ng .main_ng_in:after {
    width: 50%;
    background-size: 100% auto;
  }
  .main_ng .main_ng_in:before {
    width: 50%;
    background-position: 0% 100%;
    background-size: 100% auto;
  }

  .main_program .panel .panel_top .descr{
    display: flex;
    flex-direction: column;
    text-align: left;
  }
  .main_program .panel .panel_top .n_tag{
    font-size: 18px;
    background-color: transparent;
    color: #FFCB87;
    padding: 0px;
  }
  .main_program .panel .panel_inner{
    position: relative;
    row-gap: 145px;
  }
  .main_program .panel:before{
    display: none;
  }
  .main_program .panel .panel_top .d_opacity_white{
    opacity: 1;
    color: #FFCB87;
  }
  .main_program .panel .panel_top .descr{
    font-size: 22px;
  }
  .main_program .panel .panel_top .descr .date {
    font-size: 16px;
  }

  .program-block-wrap .toggle-wrapper {
    text-align: center;
    margin: 0px 0;
    color: white;
  }

  .program-block-wrap .toggle-btn{
    background: none;
    border: none;
    color: white;
    font-size: 24px;
    cursor: pointer;
    outline: none;
  }

  .program-block-wrap .add_block_pc{
    display: block;
    max-height: max-content;
    opacity: 1;
    overflow: visible;
  }

  .program-block-wrap .icon {
    display: inline-block;
    position: relative;
    transition: transform .3s ease;
    width: 35px;
    height: 35px;
    border: 2px solid rgb(255, 255, 255);
    border-radius: 50vh;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: 7px auto;
    background-image: url(../images/aura/svg/icon_arrow.svg);
    transform: rotate(90deg);
  }
  .program-block-wrap .icon.open{
    transform: rotate(270deg);
  }

  .program-block-wrap .toggle-block {
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    transition: max-height .5s ease, opacity .4s ease;
  }

  .program-block-wrap .toggle-block.open {
    opacity: 1;
  }

  .program-block-wrap .toggle-inner {
    padding: 20px 0;
  }

  .main_events{

  }
  .main_events .panel{
    background-position: 50% 100%;
    background-repeat: no-repeat;
    background-size: cover;
    background-image: url("../images/aura/main/tinified/b_bl_1.jpg");
    text-align: center;
  }
  .main_events .panel .n_tag{
    font-size: 22px;
    background-color: transparent;
    color: #FFCB87;
    padding: 0px;
  }
  .main_events .panel .descr{
    font-size: 22px;
  }
  .main_events .panel .descr .date {
    font-size: 21px;
    justify-content: center;
  }
  .main_events .panel .d_opacity_white{
    opacity: 1;
    color: #FFCB87;
  }

  .mob_pl{
    padding-left: 25px;
  }

  .partner_item {
    border-radius: 8px;
    min-height: 76px;
  }
  #popup__content-right {
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    background: #fff;
    width: 100%;
    height: 100%;
    overflow-y: auto;
    z-index: 1000;
  }
  #popup__content-right{
    margin-top: 0px !important;
    padding-bottom: 92px;
  }
  .popup_new_order #popup__content-right .btn{
    height: 58px;
    background-color: #FAC416 !important;
  }
  .popup_new_order #popup__content-right .btn:hover{
    background-color: #FAC416 !important;
  }
  #popup__content-right .close{
    position: absolute;
    top: 10px;
    right: 0px;
    width: 45px;
    height: 45px;
    background-image: url(../images/svg/icon_cross_t.svg);
    background-size: 25px auto;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    filter: grayscale(1) brightness(0);
    opacity: 1;
    transition: 0.2s;
  }
  #popup__content-right .close:hover{
    opacity: 0.8;
  }
  #popup__content-right .btns_block{
    padding: 0px 10px;
    margin-top: 24px;
  }
  #popup__content-right .popup__title_l_block{
    color: #333333;
  }
  body.mobile-scroll-lock {
    overflow: hidden;
    height: 100%;
  }

  #popup__content-right {
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    z-index: 1000;
    background: #fff;
    overflow-y: auto; /* ← Прокрутка внутри */
    -webkit-overflow-scrolling: touch; /* для iOS плавности */
    display: none;
  }

  #popup__content-right.visible-mobile {
    display: block;
  }
  .main_head.main_head_bdb {
    min-height: 340px;
  }
  #popup__content-right {
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    background: #fff;
    width: 100%;
    height: 100%;
    overflow-y: auto;
    z-index: 1000;
  }

  #popup__content-right.visible-mobile {
    display: block;
  }

  .theme_border_24{
    border-radius: 12px;
  }
  .theme_border_20{
    border-radius: 8px;
  }
  .theme_border_16{
    border-radius: 8px;
  }
  .theme_border_12{
    border-radius: 6px;
  }
  .theme_border_8{
    border-radius: 6px;
  }

  .main_menu{
    position: fixed;
    top: 0px;
    padding: 0px;
  }
  #main_menu_top>.container{
    padding: 0px;
  }
  .main_menu .main_menu_inner{
    position: relative;
    padding: 12px 12px !important;
    align-items: center;
    flex-direction: column;
    background-color: rgb(0,0,0);
  }
  .main_menu .main_menu_inner_block{
    flex-direction: column;
  }
  .main_menu .main_menu_inner_block .navbar-nav{
    width: 100%;
  }

  .popup_title_utm {
    padding: 25px 0px 25px 0px;
  }

  #navbarsExample11 {
    width: 100%;
    padding: 15px 0px !important;
    margin-top: 12px;
    border-radius: 16px;
  }
  #usedesk-messenger{
    display: none !important;
  }
  .main_head {
    padding-top: 40px;
    min-height: 500px;
    padding-bottom: 24px;
    overflow: hidden;
  }
  .head_new .head_bottom {
    margin-top: 15px;
  }
  .head_new .head_bottom .descr {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 5px !important;
    flex-wrap: wrap;
    row-gap: 12px;
  }
  .n_tag {
    font-size: 13px;
    padding: 5px 10px 3px 10px;
  }
  .main_menu .logo {
    font-size: 27px;
  }
  .main_menu .navbar-toggler{
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    padding: 0px;
  }
  .main_menu .navbar-toggler-icon{
    width: 2em;
    height: 2em;
    filter: grayscale(1) brightness(10);
  }

  .main_head .tags {
    align-items: flex-start;
  }
  .main_head .descr br{
    display: none;
  }
  .main_head .main_head_image{
    position: relative;
  }
  .main_head .main_head_image:before{
    content: "";
    display: block;
    padding-top: 56.25%;
  }

  .main_head .logo {
    max-width: 140px;
  }
  .main_stars h2 span,
  .main_photo h2 span{
    color: #FFA42E;
  }
  .head_title h1, .main_title h2 {
    font-size: 24px;
    line-height: 1.2;
  }
  .main_stars_in {
    padding: 30px 24px 40px 24px;
    background-position: 50% 0px;
    background-size: contain;
    position: relative;
  }
  .main_stars_in:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 35px;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0.25));
    pointer-events: none;
  }
  .main_stars_in>div:first-child{
    z-index: 1;
    position: relative;
  }
  .btns_slider .btn_sl:before {
    background-size: 6px auto;
  }
  .main_events{
    margin-top: 75px;
  }
  .main_events .event_item_wrap {
    margin-bottom: 45px;
  }
  .main_events .event_item .descr {
    font-size: 16px;
  }
  .main_events .event_item .descr br{
    display: none;
  }
  .main_events .event_item{
    display: flex;
    flex-direction: column;
    background-color: #0E0E0E;
    border-radius: 22px;
  }
  .main_events .event_item .ev_top{
    padding: 0px 12px 0px 12px;
  }
  .main_events .event_item .photo{
    margin-bottom: 25px;
    position: relative;
  }
  .main_events .event_item .photo:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 50%;
    background: linear-gradient(to top, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0.25));
    pointer-events: none;
  }

  .gal_item a{
    border-radius: 12px !important;
  }

  .main_footer .logo{
    max-width: 50%;
    margin: 0px auto;
  }
  .main_footer #navbarsExample12{
    text-align: center;
  }
  .main_footer .foot_info{
    text-align: center;
    flex-direction: column;
    justify-content: center !important;
    row-gap: 0px !important;
    align-items: center;
  }
  .main_footer .foot_info .foot_soc{
    margin-top: 8px !important;
  }

  .btns_slider .btn_sl {
    width: 34px;
    height: 34px;
    border-radius: 10px;
  }

  .head_title h1 br {
    display: inline-block;
  }

  .main_head.main_head_def{
    min-height: 0px;
  }
  .main_head.main_head_def:before{
    display: none;
  }

  .videoWrapper.videoWrapper_preview > div:before {
    width: 50px;
    height: 50px;
    margin-left: -25px;
    margin-top: -25px;
    background-position: calc(50% + 2px) 50%;
    background-size: 20px auto;
  }

  .main_video .tags_icons {

  }

  .tags_icons .tag_item_icon {
    padding: 6px 12px 6px 45px;
    background-position: 12px 50%;
    background-size: 24px auto;
  }

  .theme_list li {
    line-height: 1.2;
    margin-bottom: 15px;
  }
  .tags .tag_item{
    font-size: 16px;
  }
  .ticket_item{
    flex-direction: column;
  }
  .ticket_item .t_info .btn_default{
    max-width: 100%;
    width: 100%;
  }

  .main_stars .main_title h2 br{
    display: block;
  }
  .def_slider_wrap {
    width: 90%;
  }

  .main_block {
    margin-bottom: 48px;
  }

  .main_title p {
    font-size: 16px;
  }

  .def_slider {
    width: calc(100% - 20px);
  }
  .def_slider .slick-list {
    overflow: visible;
  }
  .ds_item .ds_descr p {
    font-size: 16px;
  }

  .tags {
    align-items: flex-start;
    column-gap: 10px;
    row-gap: 10px;
  }

  .main_may .mob_add .may_image:before {
    padding-top: 56.25%;
  }

  .ms_slider_in {
    padding: 0px 12px;
    width: calc(100% - 20px);
    margin: 0px -20px;
  }
  .ms_slider_in .slick-list {
    overflow: visible;
  }
  .ms_slider_in .ms_in_item {
    margin: 0px 10px;
  }

  .btns_block {
    width: 100%;
  }

  .main_faq .faq_item .di_up .di_title h3 {
    font-size: 18px;
    padding-bottom: 5px;
  }
  .main_faq .faq_item .di_bottom {
    padding-bottom: 10px;
    padding-top: 10px;
  }
  .main_faq .faq_item{
    margin-bottom: 12px;
  }

  .btn_default {
    height: 68px;
    display: flex;
    font-size: 21px;
  }
  #popup_order .btn_default{
    margin-bottom: 18px;
  }

  .main_faq .main_video_in{
    padding: 0px !important;
    background-color: transparent !important;
  }

  .main_menu_foot.main_menu .navbar-nav li{
    margin: 0px;
  }
  .main_menu_foot.main_menu .navbar-nav{
    margin-top: 12px;
  }
  .main_menu_foot.main_menu .navbar-nav li a, .main_menu_foot.main_menu .navbar-nav li span{
    padding: 3px 0px;
  }
  .main_menu_foot.main_menu .navbar-nav-wrap{
    flex-direction: column;
    align-items: flex-start !important;
  }
  .main_menu_foot.main_menu .foot_cont{
    flex-direction: column;
  }
  .main_menu_foot.main_menu .foot_cont .cont{
    margin-bottom: 12px;
  }

  #js-gmap > ymaps {
    border-radius: 16px;
  }
  .g-map-m{
    min-height: 160px;
  }

  .pp_block .modal-header{
    line-height: 1.2;
  }

  #mobile_tickets{
    position: fixed;
    bottom: 10px;
    left: 10px;
    right: 10px;
    background: #FFA42E;
    z-index: 101;
    display: flex !important;
    max-width: 520px;
    color: #252525;
    margin: 0px auto;
    width: calc(100% - 72px);
  }
  #mobile_tickets:hover{
    color: #ffffff;
    background-color: #252525;
  }

  .soc_dop_wrap {
    flex-direction: column;
    row-gap: 20px;
    margin-bottom: 40px;
  }
  .soc_dop {
    padding-left: 65px;
    background-size: 52px auto;
    min-height: 52px;
  }

  .main_menu.main_menu_foot {
    margin-bottom: 0px !important;
    padding-bottom: 85px !important;
  }
}

@media (max-width:767.98px) and (orientation : landscape){
  .main_head.cities {
    padding-top: 45px;
  }
  .cities .logo img{
    max-width: 220px;
  }
  .cities .btns_block {
    margin-top: 0px !important;
    padding-top: 16px !important;
  }
}