/* File generated by shrinker.ch - DateTime: 2025-12-14, 22:20:01 */
@charset "utf-8";
@import url(svgs.css);
@import url(/2022/js/libs/fancybox.css);
@import url(/2025/css/fonts.css);
@import url(/2022/css/bootstrap/bootstrap-grid.min.css);
@import url(grid.css);

@font-face {
  font-display: fallback;
  src: url(/2022/fonts/Tele2.svg) format('svg');
  font-weight: 700;
  font-style: normal
}

@font-face {
  font-display: swap;
  font-family: LovedByTheKing;
  font-style: normal;
  font-weight: 400;
  src: url(../fonts/loved-by-the-king-v17-latin-regular.woff2) format('woff2'), url(../fonts/loved-by-the-king-v17-latin-regular.ttf) format('truetype')
}

:root {
  --s-green: #0DC;
  --s-lightgreen: #6F6;
  --s-salad: #BF3;
  --s-black: #333;
  --s-yello: #DF0;
  --s-pink: #E7D;
  --s-blue: #0DE;
  --new-gradient: linear-gradient(135deg, #7f7 0, #E1F 50%, #1BF 100%);
  --new-pink: #E1F;
  --new-green: #7F7;
  --new-blue: #1BF;
  --new-bg: #86D;
  --new-timing: 20s;
  --new-circle-margin: 40%;
  --new-bg-size: 150vmax;
  --hex-per-row: 5;
  --hex-width: calc(100% /(var(--hex-per-row) - 1));
  --hex-row-margin: calc(var(--hex-width) / 2)
}

:root {
  --winter-sapphire-evening: linear-gradient(135deg, #1e40af 0, #0ea5e9 50%, #dc2626 100%);
  --winter-emerald-sunset: linear-gradient(135deg, #15803d 0, #22d3ee 50%, #ef4444 100%);
  --winter-RGB: linear-gradient(135deg, #13d267 0, #14baf8 25%, #3bb4e5 70%, #ff507c 100%);
  --winter-RGB2: linear-gradient(135deg, #13d267 0, #14baf8 50%, #ff507c 100%)
}

#snowCanvas {
  position: absolute;
  z-index: 20;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  mix-blend-mode: overlay;
  opacity: .75
}

.bg-green {
  background-color: var(--s-green)
}

.bg-lightgreen {
  background-color: var(--s-lightgreen)
}

.bg-salad {
  background-color: var(--s-salad)
}

.bg-black {
  background-color: var(--s-black)
}

.bg-yello {
  background-color: var(--s-yello)
}

.bg-pink {
  background-color: var(--s-pink)
}

.green {
  color: var(--s-green)
}

.lightgreen {
  color: var(--s-lightgreen)
}

.salad {
  color: var(--s-salad)
}

.black {
  color: var(--s-black)
}

.yello {
  color: var(--s-yello)
}

.is-green {
  color: var(--s-green)
}

.is-lightgreen {
  color: var(--s-lightgreen)
}

.is-salad {
  color: var(--s-salad)
}

.is-black {
  color: var(--s-black)
}

.is-yello {
  color: var(--s-yello)
}

.is-pink {
  color: var(--s-pink)
}

.is-blue {
  color: var(--s-blue)
}

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

body,
html {
  font-family: ProximaNova, Montserrat, sans-serif;
  font-size: 20px;
  overflow-x: hidden !important;
  background-color: var(--s-black)
}

body {
  min-height: 100%;
  max-width: 100%;
  overflow-x: hidden !important;
  padding: 0;
  max-width: 100vw;
  margin: 0;
  color: #fff
}

a {
  color: #eef;
}

a:hover {
  color: #dd0;
}

:focus,
:hover {
  outline: 0;
  -webkit-outline: none;
  -webkit-tap-highlight-color: transparent
}

a:focus,
a:hover {
  outline: none
}

.hidden {
  display: none
}

.nowrap {
  white-space: nowrap
}

.centered {
  text-align: center
}

nav {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 72px;
  background-color: transparent;
  display: block;
  z-index: 99;
  -webkit-transition: all .25s ease-in-out;
  -o-transition: all .25s ease-in-out;
  transition: all .25s ease-in-out
}

nav.scroll-down {
  -webkit-box-shadow: 0 120px 16px rgba(25, 25, 25, .95) inset, 0 3px 6px rgba(0, 0, 0, .35);
  box-shadow: 0 120px 16px rgba(25, 25, 25, .95) inset, 0 3px 6px rgba(0, 0, 0, .35);
  -webkit-transform: translate(0, -96px);
  -ms-transform: translate(0, -96px);
  transform: translate(0, -96px)
}

nav.scroll-up {
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0)
}

nav.scroll-up.scrolled-top,
nav.scrolled-top {
  background-color: transparent
}

nav {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 70px;
  background-color: transparent;
  display: block;
  z-index: 999;
  -webkit-transition: all .25s ease-in-out;
  -o-transition: all .25s ease-in-out;
  transition: all .25s ease-in-out;
  background-color: #000
}

nav:after {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 43px;
  background-image: url(/2022/img/edge2.svg);
  background-position: bottom center;
  background-size: auto 100%;
  background-repeat: repeat-x;
  left: 50%;
  top: 65px;
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0)
}

nav.scroll-down {
  -webkit-transform: translate(0, -96px);
  -ms-transform: translate(0, -96px);
  transform: translate(0, -96px)
}

nav.scroll-up {
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
  background-color: #111;
  box-shadow: 0 -3px 16px #00000059 inset
}

nav.scrolled-top {
  -webkit-transform: translate(0, -100%);
  -ms-transform: translate(0, -100%);
  transform: translate(0, -100%)
}

.ld nav.scrolled-top {
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0)
}

nav.scroll-up.scrolled-top,
nav.scrolled-top {
  background-color: transparent;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0) inset;
  top: 0 !important;
  transform: translate(0, 0) !important
}

nav.scrolled-top {
  background: transparent
}

nav:before,
nav:after {
  display: none !important
}

nav .container {
  height: 100%;
  position: relative;
  display: block;
  width: 1320px;
  max-width: 100%
}

nav .menu {
  position: absolute;
  right: 0;
  top: 50%;
  padding: 0 96px 0 0;
  color: var(--s-green);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  z-index: 99;
  display: block;
  width: auto;
  text-align: right;
  margin: 0
}

nav .menu li {
  display: inline-block;
  margin: 0 0 0 1em
}

nav .menu li a {
  color: #fff;
  text-transform: uppercase;
  text-decoration: none;
  border-bottom: 0 dashed;
  font-weight: 700;
  -webkit-transition: all .2s ease-in-out;
  -o-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
  position: relative;
  display: inline-block;
  font-size: 1rem
}

nav .menu li a:after {
  content: '';
  display: block;
  position: absolute;
  width: 0;
  height: 2px;
  bottom: -4px;
  left: 50%;
  opacity: 0;
  background-color: transparent;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition: all .25s ease-in-out;
  -o-transition: all .25s ease-in-out;
  transition: all .25s ease-in-out;
  border-bottom: 1px solid
}

nav .menu li.active a {
  color: #3bb4e5
}

nav .menu li.active a:after {
  width: 100%;
  bottom: -4px;
  opacity: 1
}

nav .menu li a:hover {
  color: #ee5 !important;
  -webkit-animation-play-state: paused;
  animation-play-state: paused
}

nav .menu li a {
  font-family: ProximaNova, sans-serif;
  font-weight: 700
}

nav li .apply-btn {
  background-color: #1EE;
  color: #333 !important;
  display: block;
  padding: .5em 1em;
  border-radius: 0;
  background: -webkit-gradient(linear, left top, right top, from(#00fd91), color-stop(50%, #00aef9), to(#00fd91));
  background: -o-linear-gradient(left, #00fd91 0, #00aef9 50%, #00fd91 100%);
  background: linear-gradient(90deg, #00fd91 0, #00aef9 50%, #00fd91 100%);
  background-size: 200% auto;
  background-position: 0 0
}

nav li .apply-btn.tickets-button {
  background: var(--winter-RGB);
  background-size: 100% auto;
  font-weight: 800;
  box-shadow: 0 3px 6px #00000026;
  color: #fff !important;
  font-size: .7em
}

nav li a.apply-btn:hover {
  color: #fff !important;
  background-size: 200% auto;
  text-shadow: 1px 1px 1px #0000003F
}

nav li .apply-btn:hover:before {
  opacity: 1;
  visibility: visible;
  top: calc(100%+4px)
}

#logo svg {
  display: block;
  position: absolute
}

#logo {
  position: absolute;
  display: block;
  left: 70px;
  top: 50%;
  width: 96px;
  background-color: transparent;
  height: 52px;
  margin: -26px 0 0;
  z-index: 9;
  -webkit-transition: all .25s ease-in-out .25s;
  -o-transition: all .25s ease-in-out .25s;
  transition: all .25s ease-in-out .25s;
  overflow: hidden
}

#logo a,
#logo img {
  display: block
}

.scrolled-top #logo {
  opacity: 0;
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out
}

.ya-share2 {
  position: absolute;
  right: 16px;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  background: var(--winter-RGB2);
  border-radius: 50%;
  -webkit-transition: all .25s ease-in-out;
  -o-transition: all .25s ease-in-out;
  transition: all .25s ease-in-out;
  z-index: 500;
}

.ya-share2:hover {
  background-color: #fff
}

.ya-share2 {
  position: absolute;
  right: 16px;
  top: 50%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  border-radius: 0;
  -webkit-transition: all .25s ease-in-out;
  -o-transition: all .25s ease-in-out;
  transition: all .25s ease-in-out;
  z-index: 500
}

.ya-share2:hover {
  background-color: #fff
}

.ya-share2__item {
  font-size: .5rem !important
}

.ya-share2__item * {
  border: 0 none !important;
  font-size: .8rem !important;
  font-family: ProximaNova, sans-serif;
  border-radius: 0 !important;
  font-family: ProximaNova, 'Proxima Nova', sans-serif !important;
  font-weight: 800;
  text-transform: uppercase;
  color: #fff !important;
}

.ya-share2__icon.ya-share2__icon_more {
  filter: invert(1)
}

.ya-share2__item .ya-share2__icon,
.ya-share2__item .ya-share2__badge {
  background-color: transparent !important;
}

.ya-share2__item ul {
  background: var(--winter-RGB2)
}

.ya-share2__container_size_l .ya-share2__item_more.ya-share2__item_has-pretty-view .ya-share2__link_more.ya-share2__link_more-button-type_short {
  padding: 0 !important;
  border: none;
  background: #00000011
}

#mobileMenu {
  display: block;
  width: 0;
  height: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: -10000px
}

label#expandMenu {
  opacity: 0;
  visibility: hidden;
  left: 16px;
  top: 50%;
  display: block;
  position: absolute;
  width: 32px;
  height: 32px;
  margin: -16px 0 0;
  cursor: pointer;
  z-index: 999
}

label#expandMenu i {
  display: block;
  width: 100%;
  height: 4px;
  background-color: var(--s-green);
  top: 50%;
  position: absolute;
  margin: -2px 0 0;
  -webkit-transition: all .5s cubic-bezier(.68, -.55, .27, 1.55);
  -o-transition: all .5s cubic-bezier(.68, -.55, .27, 1.55);
  transition: all .5s cubic-bezier(.68, -.55, .27, 1.55)
}

label#expandMenu i:after,
label#expandMenu i:before {
  content: '';
  position: absolute;
  display: block;
  width: 100%;
  height: 4px;
  background-color: var(--s-green);
  left: 50%;
  margin: 0 0 0 -16px;
  -webkit-transition: top .2s ease-in-out, -webkit-transform .2s ease-in-out .2s;
  transition: top .2s ease-in-out, -webkit-transform .2s ease-in-out .2s;
  -o-transition: top .2s ease-in-out, transform .2s ease-in-out .2s;
  transition: top .2s ease-in-out, transform .2s ease-in-out .2s;
  transition: top .2s ease-in-out, transform .2s ease-in-out .2s, -webkit-transform .2s ease-in-out .2s
}

label#expandMenu i:before {
  top: -8px
}

label#expandMenu i:after {
  top: 8px
}

#mobileMenu:checked+label#expandMenu i:after,
#mobileMenu:checked+label#expandMenu i:before {
  top: 0
}

#mobileMenu:checked+label#expandMenu i:before {
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg)
}

#mobileMenu:checked+label#expandMenu i:after {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg)
}

#mobileMenu:checked+label#expandMenu i {
  background-color: rgba(0, 0, 0, 0);
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg)
}

.section {
  padding: 96px 0 128px;
  width: 100%;
  position: relative;
  min-height: calc(100%+192px)
}

section#lineup,
section#contacts,
section:not(:first-child) {
  margin-top: -96px;
  animation: 32s Edge cubic-bezier(.6, .04, .98, .34) infinite
}

section#contacts {
  padding: 96px 0 128px
}

section .container {
  position: relative;
  z-index: 50
}

section#activities {
  background-color: #000
}

section.is-dark:after {
  background-image: url(/2025/i/slm-bg-tr2-1.png);
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: .5;
  background-attachment: fixed;
  mix-blend-mode: plus-lighter
}

@keyframes Edge {

  0%,
  100% {
    clip-path: polygon(0% 0, 2% 48px, 4% 0, 6% 16px, 8% 32px, 10% 48px, 12% 24px, 14% 48px, 16% 0, 18% 16px, 20% 32px, 22% 48px, 24% 24px, 26% 48px, 28% 0, 30% 16px, 32% 32px, 34% 48px, 36% 24px, 38% 48px, 40% 0, 42% 16px, 44% 32px, 46% 48px, 48% 24px, 50% 48px, 52% 0, 54% 16px, 56% 32px, 58% 48px, 60% 24px, 62% 48px, 64% 0, 66% 16px, 68% 32px, 70% 48px, 72% 24px, 74% 48px, 76% 0, 78% 16px, 80% 32px, 82% 48px, 84% 24px, 86% 48px, 88% 0, 90% 16px, 92% 32px, 94% 48px, 96% 24px, 98% 48px, 100% 0, 100% 100%, 0% 100%)
  }

  14.2857% {
    clip-path: polygon(0% 0, 2% 24px, 4% 48px, 6% 0, 8% 16px, 10% 32px, 12% 48px, 14% 24px, 16% 48px, 18% 0, 20% 16px, 22% 32px, 24% 48px, 26% 24px, 28% 48px, 30% 0, 32% 16px, 34% 32px, 36% 48px, 38% 24px, 40% 48px, 42% 0, 44% 16px, 46% 32px, 48% 48px, 50% 24px, 52% 48px, 54% 0, 56% 16px, 58% 32px, 60% 48px, 62% 24px, 64% 48px, 66% 0, 68% 16px, 70% 32px, 72% 48px, 74% 24px, 76% 48px, 78% 0, 80% 16px, 82% 32px, 84% 48px, 86% 24px, 88% 48px, 90% 0, 92% 16px, 94% 32px, 96% 48px, 98% 24px, 100% 48px, 100% 100%, 0% 100%)
  }

  28.5714% {
    clip-path: polygon(0% 0, 2% 0, 4% 16px, 6% 32px, 8% 48px, 10% 24px, 12% 48px, 14% 0, 16% 16px, 18% 32px, 20% 48px, 22% 24px, 24% 48px, 26% 0, 28% 16px, 30% 32px, 32% 48px, 34% 24px, 36% 48px, 38% 0, 40% 16px, 42% 32px, 44% 48px, 46% 24px, 48% 48px, 50% 0, 52% 16px, 54% 32px, 56% 48px, 58% 24px, 60% 48px, 62% 0, 64% 16px, 66% 32px, 68% 48px, 70% 24px, 72% 48px, 74% 0, 76% 16px, 78% 32px, 80% 48px, 82% 24px, 84% 48px, 86% 0, 88% 16px, 90% 32px, 92% 48px, 94% 24px, 96% 48px, 98% 0, 100% 16px, 100% 100%, 0% 100%)
  }

  42.8571% {
    clip-path: polygon(0% 0, 2% 48px, 4% 24px, 6% 48px, 8% 0, 10% 16px, 12% 32px, 14% 48px, 16% 24px, 18% 48px, 20% 0, 22% 16px, 24% 32px, 26% 48px, 28% 24px, 30% 48px, 32% 0, 34% 16px, 36% 32px, 38% 48px, 40% 24px, 42% 48px, 44% 0, 46% 16px, 48% 32px, 50% 48px, 52% 24px, 54% 48px, 56% 0, 58% 16px, 60% 32px, 62% 48px, 64% 24px, 66% 48px, 68% 0, 70% 16px, 72% 32px, 74% 48px, 76% 24px, 78% 48px, 80% 0, 82% 16px, 84% 32px, 86% 48px, 88% 24px, 90% 48px, 92% 0, 94% 16px, 96% 32px, 98% 48px, 100% 24px, 100% 100%, 0% 100%)
  }

  57.1428% {
    clip-path: polygon(0% 0, 2% 32px, 4% 48px, 6% 24px, 8% 48px, 10% 0, 12% 16px, 14% 32px, 16% 48px, 18% 24px, 20% 48px, 22% 0, 24% 16px, 26% 32px, 28% 48px, 30% 24px, 32% 48px, 34% 0, 36% 16px, 38% 32px, 40% 48px, 42% 24px, 44% 48px, 46% 0, 48% 16px, 50% 32px, 52% 48px, 54% 24px, 56% 48px, 58% 0, 60% 16px, 62% 32px, 64% 48px, 66% 24px, 68% 48px, 70% 0, 72% 16px, 74% 32px, 76% 48px, 78% 24px, 80% 48px, 82% 0, 84% 16px, 86% 32px, 88% 48px, 90% 24px, 92% 48px, 94% 0, 96% 16px, 98% 32px, 100% 48px, 100% 100%, 0% 100%)
  }

  71.4285% {
    clip-path: polygon(0% 0, 2% 16px, 4% 32px, 6% 48px, 8% 24px, 10% 48px, 12% 0, 14% 16px, 16% 32px, 18% 48px, 20% 24px, 22% 48px, 24% 0, 26% 16px, 28% 32px, 30% 48px, 32% 24px, 34% 48px, 36% 0, 38% 16px, 40% 32px, 42% 48px, 44% 24px, 46% 48px, 48% 0, 50% 16px, 52% 32px, 54% 48px, 56% 24px, 58% 48px, 60% 0, 62% 16px, 64% 32px, 66% 48px, 68% 24px, 70% 48px, 72% 0, 74% 16px, 76% 32px, 78% 48px, 80% 24px, 82% 48px, 84% 0, 86% 16px, 88% 32px, 90% 48px, 92% 24px, 94% 48px, 96% 0, 98% 16px, 100% 32px, 100% 100%, 0% 100%)
  }

  85.7142% {
    clip-path: polygon(0% 0, 2% 0, 4% 16px, 6% 32px, 8% 48px, 10% 24px, 12% 48px, 14% 0, 16% 16px, 18% 32px, 20% 48px, 22% 24px, 24% 48px, 26% 0, 28% 16px, 30% 32px, 32% 48px, 34% 24px, 36% 48px, 38% 0, 40% 16px, 42% 32px, 44% 48px, 46% 24px, 48% 48px, 50% 0, 52% 16px, 54% 32px, 56% 48px, 58% 24px, 60% 48px, 62% 0, 64% 16px, 66% 32px, 68% 48px, 70% 24px, 72% 48px, 74% 0, 76% 16px, 78% 32px, 80% 48px, 82% 24px, 84% 48px, 86% 0, 88% 16px, 90% 32px, 92% 48px, 94% 24px, 96% 48px, 98% 0, 100% 16px, 100% 100%, 0% 100%)
  }
}

section.bg-gradient {
  background: var(--winter-RGB2)
}

section {
  overflow: hidden
}

.section#lectory {
  color: var(--s-black);
  position: relative
}

.section#home {
  height: calc(100vh+96px);
  background-color: var(--s-green);
  background: #222
}

.section#home:before,
.section.bg-gradient:before {
  display: block;
  position: absolute;
  content: '';
  z-index: 1;
  background-image: url(/2025/i/grunge-w.svg);
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: .25;
  background-size: cover;
  background-attachment: fixed;
  mix-blend-mode: hard-light
}

section#lectory:before {
  -webkit-filter: invert(1);
  filter: invert(1);
  opacity: 1
}

#svgsprite {
  height: 0;
  display: none
}

.theMain svg use {
  fill: #fff;
  -webkit-animation: 6s Salad ease-in-out infinite;
  animation: 6s Salad ease-in-out infinite
}

@-webkit-keyframes Salad {

  0%,
  100%,
  70%,
  90% {
    fill: #fff;
    stroke-width: 1;
    stroke: rgba(255, 255, 255, 0)
  }

  80% {
    fill: var(--s-yello);
    stroke-width: 1
  }
}

@keyframes Salad {

  0%,
  100%,
  70%,
  90% {
    fill: #fff;
    stroke-width: 1;
    stroke: rgba(255, 255, 255, 0)
  }

  80% {
    fill: var(--s-yello);
    stroke-width: 1
  }
}

.theMain svg.icon {
  -webkit-animation: 10s Flow ease-in-out infinite;
  animation: 10s Flow ease-in-out infinite
}

@-webkit-keyframes Flow {

  0%,
  100% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0)
  }

  25% {
    -webkit-transform: rotate(-5deg) translate(0, 10%);
    transform: rotate(-5deg) translate(0, 10%)
  }

  75% {
    -webkit-transform: rotate(10deg) translate(0, 8%);
    transform: rotate(10deg) translate(0, 8%)
  }

  50% {
    -webkit-transform: rotate(10deg) translate(0, 16%);
    transform: rotate(10deg) translate(0, 16%)
  }
}

@keyframes Flow {

  0%,
  100% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0)
  }

  25% {
    -webkit-transform: rotate(-5deg) translate(0, 10%);
    transform: rotate(-5deg) translate(0, 10%)
  }

  75% {
    -webkit-transform: rotate(10deg) translate(0, 8%);
    transform: rotate(10deg) translate(0, 8%)
  }

  50% {
    -webkit-transform: rotate(10deg) translate(0, 16%);
    transform: rotate(10deg) translate(0, 16%)
  }
}

.mainTitle svg.p1 use {
  -webkit-animation-delay: 0s;
  animation-delay: 0s
}

.mainTitle svg.p2 use {
  -webkit-animation-delay: .5s;
  animation-delay: .5s
}

.mainTitle svg.p3 use {
  -webkit-animation-delay: 1s;
  animation-delay: 1s
}

.mainTitle svg.p4 use {
  -webkit-animation-delay: 1.5s;
  animation-delay: 1.5s
}

.mainTitle svg.p5 use {
  -webkit-animation-delay: 2s;
  animation-delay: 2s
}

.theMain {
  position: absolute;
  top: 0;
  width: 1020px;
  max-width: calc(100% - 80px);
  height: 100%;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  z-index: 2
}

.theMain i svg {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%
}

.mainTitle {
  position: absolute;
  top: 40%;
  left: 50%;
  width: 100vmin;
  height: 46vmin;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%)
}

.mainTitle h1 {
  z-index: 50;
  position: absolute;
  background-image: url(/2025/i/slm2025b.svg);
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  background-position: center;
  background-size: 100% auto;
  background-repeat: no-repeat;
  text-indent: -10000px;
  overflow: hidden;
  color: transparent;
  -webkit-transition: all .5s ease-in;
  -o-transition: all .5s ease-in;
  transition: all .5s ease-in;
  opacity: 0;
  width: 70vmin;
  height: 40vmin;
  z-index: 99;
  opacity: 1;
  margin: -10vmin 0 0
}

.info-row {
  display: flex;
  width: 100%;
  flex-direction: row;
  align-content: center;
  justify-content: stretch;
  padding: 0 24px 0 0
}

.info-row>div {
  flex: 0 1 33%;
  width: 33%;
  position: relative;
  text-align: center;
  display: flex;
  align-content: center;
  justify-content: center;
  align-items: center
}

.info-row>.linx {
  flex: 0 1 220px
}

.section#lineup:after,
.theData:after,
.section.is-dark:after {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: calc(100%+20px);
  top: -20px;
  background-image: url(/2022/img/pattern-grunge-g.svg);
  left: 0;
  opacity: .15;
  background-size: 50% auto;
  z-index: 0
}

nav:before {
  top: 0;
  z-index: 5
}

.section#lineup:after {
  background-position: center top
}

.theData:after {
  background-position: right bottom;
  background-attachment: fixed
}

.ld .theData {
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0)
}

.theData .dateTime {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: self-start;
  flex-direction: column
}

.theData .linx {
  margin-right: 32px;
  text-align: right;
  margin-left: auto;
  display: flex;
  flex: 0 1 64px;
}

.theData {
  width: 100%
}

.theData .date,
.theData .place,
.theData .time {
  font-weight: 900;
  display: inline-block;
  margin: 0 1em 0 0;
  text-transform: uppercase;
  white-space: nowrap;
  line-height: .9em;
  text-shadow: 0 3px 12px #00000033
}

.theData .place {
  font-weight: 300 !important;
  color: #fff !important;
  white-space: nowrap
}

.theData .date,
.theData .time {
  font-size: 2rem
}

.theData .place {
  font-weight: 800;
  color: var(--s-green);
  font-size: 1.5rem
}

.linx a {
  color: var(--s-green);
  text-decoration: none
}

.linx span {
  display: inline-block;
  width: 32px;
  height: 32px;
  position: relative;
  margin: 0 1rem 0 auto
}

.linx {
  height: 64px;
  line-height: 64px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}

.linx span.m24 {
  width: 64px;
  height: 64px;
  display: none;
}

.linx span a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: transparent;
  overflow: hidden;
  text-indent: -10000px
}

.linx span a use {
  fill: #fff;
  -webkit-transition: all .25s ease-in-out;
  -o-transition: all .25s ease-in-out;
  transition: all .25s ease-in-out;
  -webkit-animation: 16s Linx ease-in-out infinite;
  animation: 16s Linx ease-in-out infinite
}

.linx span.m24 a {
  background-color: transparent
}

.linx span.m24logo {
  width: 64px;
  height: 64px
}

section#contacts {
  min-height: 100vh;
  padding-top: 100px
}

.theData .container {
  position: relative;
  height: 100%
}

section.is-dark {
  background-color: #111
}

section.is-dark:before {
  content: '';
  display: block;
  background-image: url(/2025/i/slm-bg-tr2-1.png);
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  background-size: cover;
  opacity: .25
}

.linx a svg {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%)
}

.linx span.m24 a svg {
  width: 100%;
  height: 100%
}

.section h2.go {
  font-weight: 800;
  text-transform: uppercase;
  text-align: center;
  font-size: 2rem;
  margin: 0 auto 1em;
  padding: 0;
  position: relative;
  letter-spacing: -.1em;
  z-index: 10;
  -webkit-transition: all .25s ease-in-out .25s;
  -o-transition: all .25s ease-in-out .25s;
  transition: all .25s ease-in-out .25s;
  position: relative;
  margin: 0 auto 1em
}

.section h2.go.live {
  letter-spacing: .2em
}

.artists {
  position: relative;
  width: 1440px;
  margin: 0 auto;
  max-width: 100%;
  z-index: 10
}

.section#featured:before {
  top: 0;
  left: 0;
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background-image: url(/2022/img/pattern-grunge.svg);
  background-size: 50% auto;
  z-index: 1;
  position: absolute;
  opacity: .5;
  background-attachment: fixed
}

.section#featured h2 {
  color: var(--s-black)
}

.section#featured .container {
  z-index: 10;
  position: relative;
  text-align: center;
  color: var(--s-black);
  font-weight: 600
}

#lineup .timing {
  font-weight: 900;
  text-align: center;
  margin: 0 auto 1rem;
  letter-spacing: .2em;
  position: relative;
  z-index: 10;
  text-shadow: 0 3px 0 #0000007F
}

.artists-wrap h3 {
  display: block;
  position: relative;
  text-align: center;
  text-transform: uppercase;
  color: #fff;
  font-weight: 800;
  margin: 2em 0;
  text-shadow: 1px 1px 0 var(--s-blue), 2px 2px 0 var(--new-pink)
}

.artist-card {
  position: relative;
  z-index: 10
}

.artist-card:hover {
  z-index: 15
}

.artist-card a {
  display: block;
  position: relative;
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  width: 100%;
  height: 0;
  text-decoration: none;
  padding: 135% 0 0;
}

.artist-card.is-wide a {
  padding: 50% 0 0;
  overflow: hidden
}

.artist-card.has-vid {
  position: relative
}

.artist-card.has-vid:after {
  content: '';
  display: block;
  border-style: solid;
  position: absolute;
  top: 8px;
  left: 8px;
  border-color: transparent transparent transparent var(--s-salad);
  border-width: 8px 0 8px 12px;
  z-index: 5;
  -webkit-animation: 2s PushMe ease-in-out infinite;
  animation: 2s PushMe cubic-bezier(.65, .05, .36, 1) infinite
}

.artist-card a small.time {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  font-size: .75rem;
  padding: .2em .5em;
  background-color: #1E1E1ED8;
  color: var(--s-salad);
  font-weight: 700;
  -webkit-transition: all .25s ease-in-out;
  -o-transition: all .25s ease-in-out;
  transition: all .25s ease-in-out;
  z-index: 15
}

.artist-card a:hover small.time {
  color: #222;
  background-color: var(--s-salad);
  right: -1px;
  top: -1px;
  letter-spacing: .1em
}

.artist-card a:before {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: calc(100%);
  top: 0;
  left: 0;
  background-image: url(/seamless01.png);
  z-index: 2;
  background-color: #FFFFFF19;
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  z-index: 11
}

.artist-card a:after {
  content: '';
  display: block;
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  border: 4px solid var(--s-salad);
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: all .25s ease-in-out;
  -o-transition: all .25s ease-in-out;
  transition: all .25s ease-in-out;
  opacity: 0;
  z-index: 10;
  -webkit-transform: scale(.25);
  -ms-transform: scale(.25);
  transform: scale(.25)
}

.artist-card a:hover:after {
  opacity: 1;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1)
}

.artist-card a:hover:before {
  opacity: 0
}

.artist-card b,
.artist-card i {
  font-style: normal
}

.artist-card a img {
  width: 100%;
  display: block;
  -webkit-filter: grayscale(1) contrast(.8) brightness(1.1);
  filter: grayscale(1) contrast(.8) brightness(1.1);
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  height: auto;
}

#featured svg.icn {
  display: block;
  position: relative;
  max-width: 100%;
  margin: 0 auto;
  fill: var(--s-black) !important;
  z-index: 10;
  width: 100%;
  margin: 0 auto 2rem;
  height: auto
}

#featured .sponsor-block svg.icn {
  width: 640px
}

#featured .license {
  margin: 0 auto 2rem
}

.artist-card i {
  display: block;
  height: auto;
  position: absolute;
  background-size: auto 100%;
  bottom: 28px;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  width: auto;
  max-width: calc(100% - 16px);
  width: 100%;
  -webkit-transition: all .25s ease-in-out;
  -o-transition: all .25s ease-in-out;
  transition: all .25s ease-in-out
}

.artist-card a:hover i {
  bottom: 64px
}

.artist-card i:before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background-image: url(/2022/img/edge2.svg);
  background-size: auto 20px;
  top: -20px;
  position: absolute;
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
  background-position: bottom;
  z-index: 5;
  opacity: 0
}

.artist-card b {
  display: inline-block;
  position: relative;
  line-height: 1em;
  z-index: 10;
  width: auto;
  height: 100%;
  padding: 0 .5em;
  background-color: var(--s-salad);
  color: var(--s-black);
  font-weight: 800;
  background-image: url(/2022/img/pattern-grunge.svg);
  background-size: auto 50%;
  -webkit-transition: all .25s ease-in-out;
  -o-transition: all .25s ease-in-out;
  transition: all .25s ease-in-out;
  -webkit-box-shadow: 0 6px 6px #00000059;
  box-shadow: 0 6px 6px #00000059;
  font-size: 1.25rem;
  border-radius: 0;
  font-size: 1.1rem
}

.artist-card b small {
  display: block;
  position: absolute;
  color: var(--s-salad);
  font-size: .8em;
  line-height: .9em;
  left: 50%;
  bottom: 0;
  -webkit-transform: translate(-50%, 100%);
  -ms-transform: translate(-50%, 100%);
  transform: translate(-50%, 100%);
  text-shadow: 1px 1px 0 #00000059;
  width: 280px;
  max-width: 40vw
}

.artist-card b small.time {
  font-size: .6em;
  padding: .5em .25em;
  background-color: transparent;
  width: 100%;
  color: #fff;
  font-weight: 800;
  letter-spacing: .1em;
  text-shadow: 0 2px 3px #0000007F
}

.artist-card a:hover b small.time {
  color: var(--s-salad)
}

.artist-card b.vedushi {
  color: var(--s-green);
  background-color: var(--s-black)
}

.artist-card a:hover b {
  color: var(--s-salad);
  background-color: var(--s-black)
}

.artist-card a:hover img {
  -webkit-filter: grayscale(0) contrast(1) brightness(1);
  filter: grayscale(0) contrast(1) brightness(1)
}

.mdl .artistImg {
  margin: 0 auto 1rem
}

.mdl .artistImg img {
  display: block;
  max-height: 90vh;
  width: auto;
  margin: 0 auto
}

.mdl {
  border-radius: 16px;
  background-color: #222
}

.mdl:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background-image: url(/2025/i/slm-bg-tr2-1.png);
  opacity: .7;
  height: 100%;
  mix-blend-mode: normal;
  background-size: cover
}

.mdl.l-g:before {
  background-image: url(/2023/i/pattern-grunge.svg)
}

@-webkit-keyframes BgSlide {
  100% {
    background-position: 200% 400%
  }
}

@keyframes BgSlide {
  100% {
    background-position: 200% 400%
  }
}

@-webkit-keyframes Bg100 {
  0% {
    background-position: 0 0
  }

  100% {
    background-position: 100% 0
  }
}

@keyframes Bg100 {
  0% {
    background-position: 0 0
  }

  100% {
    background-position: 100% 0
  }
}

.mdl h4 {
  padding: .25em 1em;
  margin: 0 auto 1em;
  text-align: center;
  color: var(--s-black);
  background-color: var(--s-salad);
  font-size: 1.5rem;
  font-weight: 900;
  line-height: .9em;
  background-image: url(/2022/img/pattern-grunge.svg);
  position: relative
}

.mdl.l-r h4 {
  background:var(--winter-RGB2);
  -webkit-box-shadow: 0 3px 6px #0000003F;
  box-shadow: 0 3px 6px #0000003F
}

.mdl.l-g h4 {
  background-color: var(--s-blue)
}

.artistImg {
  position: relative
}

.mdl:after {
  content: '';
  position: absolute;
  width: 220px;
  height: 48px;
  display: block;
  background-image: url(/2022/img/soloma-live-w.svg);
  z-index: 10;
  background-size: contain;
  background-repeat: no-repeat;
  top: -24px;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  background-position: center
}

.mdl p {
  clear: none;
  display: block;
  font-size: 1rem;
  font-weight: 500;
  padding: 0;
  margin: 0;
  color: #fff
}

.mdl.container .centered {
  margin: -1em auto 1em;
  color: var(--s-blue);
  font-weight: 300
}

.mdl .artistImg img {
  max-width: 100%;
  display: block;
  -webkit-box-shadow: 0 3px 6px #00000059;
  box-shadow: 0 3px 6px #00000059;
  height: auto
}

.mdl {
  width: auto;
  max-width: 100%
}

.mdl.container {
  width: 960px;
  max-width: 100%
}

.map-wrapper {
  width: 100%;
  position: relative;
  min-height: 480px;
  height: 70vh
}

.map-wrapper {
  width: 100%;
  position: relative;
  min-height: 480px;
  height: 60vh
}

.map-wrapper #slm_map {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 4px solid var(--s-salad)
}

#slm_map .dg-label__content {
  color: #fff;
  font-family: ProximaNova, Montserrat, sans-serif;
  text-transform: uppercase;
  font-weight: 600;
  background-color: #000000D8;
  -webkit-transform: translate(-50%, -20%);
  -ms-transform: translate(-50%, -20%);
  transform: translate(-50%, -20%);
  font-size: 11px;
  border: 0 none;
  padding: .2em .75em;
  margin-left: -.75em;
  border-radius: 32px;
  z-index: 1
}

#slm_map .dg-label__content b {
  font-weight: 600
}

.leaflet-map-pane .leaflet-popup-tip-container_svg path {
  fill: #333
}

.leaflet-popup-content-wrapper {
  background-color: #333 !important;
  color: #333
}

.leaflet-popup-content-wrapper,
.leaflet-popup-content-wrapper p {
  font-family: ProximaNova, sans-serif !important
}

.leaflet-popup-content-wrapper h4 {
  text-transform: uppercase;
  text-align: center
}

.adress {
  text-transform: uppercase;
  font-weight: 700
}

.sponsor {
  text-transform: uppercase;
  font-weight: 800;
  font-family: Tele2, ProximaNova, sans-serif;
  font-size: 1.5rem
}

span.age {
  display: block;
  position: absolute;
  bottom: 0;
  width: 32px;
  height: 32px;
  border: 1px solid;
  border-radius: 50%;
  right: 8px;
  color: #fff
}

.age:before {
  content: '12+';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  line-height: 32px;
  font-size: 16px;
  text-align: center;
  color: #fff
}

#featured .icn.moskva24,
#featured .icn.moskvafm {
  max-width: calc(100% - 32px)
}

.leaflet-map-pane .leaflet-popup-tip-container_svg path {
  fill: #333
}

.leaflet-popup-content-wrapper {
  background-color: #333 !important;
  color: #333
}

.leaflet-popup-content-wrapper,
.leaflet-popup-content-wrapper p {
  font-family: ProximaNova, 'Proxima Nova', sans-serif !important
}

.leaflet-popup-content-wrapper h4 {
  text-transform: uppercase;
  text-align: center
}

.adress {
  text-transform: uppercase;
  font-weight: 700
}

.artistVid {
  width: 90px;
  height: 90px;
  position: absolute;
  top: 8px;
  right: 8px;
  overflow: hidden;
  border: 4px solid var(--s-salad);
  -webkit-box-shadow: 0 3px 6px #00000059;
  box-shadow: 0 3px 6px #00000059
}

.artistVid:before {
  content: '';
  display: block;
  position: absolute;
  bottom: 8px;
  left: 8px;
  border-style: solid;
  border-width: 12px 0 12px 16px;
  border-color: transparent transparent transparent var(--s-salad);
  z-index: 5;
  -webkit-animation: 2s PushMe ease-in-out infinite;
  animation: 2s PushMe ease-in-out infinite
}

@-webkit-keyframes PushMe {

  0%,
  100%,
  20% {
    opacity: 1
  }

  50% {
    opacity: .1
  }
}

@keyframes PushMe {

  0%,
  100%,
  20% {
    opacity: 1
  }

  50% {
    opacity: .1
  }
}

.artistVid video {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  min-width: 100%;
  min-height: 100%;
  max-width: 100%
}

#s-gall,
#s-gall ul {
  display: none
}

.gallery-button,
.online-button {
  position: fixed;
  bottom: 12px;
  left: auto;
  width: 48px;
  height: 48px;
  -webkit-transition: all .25s ease-in-out;
  -o-transition: all .25s ease-in-out;
  transition: all .25s ease-in-out;
  z-index: 999;
  right: -2px;
  top: 50%;
  background-color: var(--s-black);
  margin: 0;
  display: none
}

.gallery-button {
  margin: -46px 0 0
}

.gallery-button a,
.online-button a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-transition: all .25s ease-in-out;
  -o-transition: all .25s ease-in-out;
  transition: all .25s ease-in-out;
  border-radius: 0;
  border: 2px solid var(--s-green);
  background-color: transparent;
  -webkit-box-shadow: 0 0 6px #00000059;
  box-shadow: 0 0 6px #00000059
}

.gallery-button a:hover,
.online-button a:hover {
  background-color: var(--s-green);
  border-color: #fff
}

.online-button a:before {
  content: "";
  display: block;
  border-style: solid;
  border-width: 12px 0 12px 20px;
  border-color: transparent transparent transparent var(--s-green);
  top: 50%;
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-40%, -50%);
  -ms-transform: translate(-40%, -50%);
  transform: translate(-40%, -50%);
  -webkit-transition: all .25s ease-in-out;
  -o-transition: all .25s ease-in-out;
  transition: all .25s ease-in-out;
  -webkit-animation: 2s PushMe ease-in-out infinite;
  animation: 2s PushMe ease-in-out infinite
}

.gallery-button a:before {
  content: "";
  display: block;
  position: absolute;
  left: 10px;
  top: 8px;
  width: 24px;
  height: 18px;
  border: 2px solid var(--s-green);
  -webkit-box-shadow: -2px 2px 0, -4px 4px 0;
  box-shadow: -2px 2px 0, -4px 4px 0;
  -webkit-animation: 6s GallIcon ease-in-out infinite;
  animation: 6s GallIcon ease-in-out infinite;
  color: var(--s-green)
}

.gallery-button a:hover:before {
  border-color: var(--s-black);
  color: var(--s-black)
}

@-webkit-keyframes GallIcon {

  40%,
  60% {
    -webkit-box-shadow: -2px 2px 0 var(--s-black), -4px 4px 0;
    box-shadow: -2px 2px 0 var(--s-black), -4px 4px 0
  }

  50% {
    -webkit-box-shadow: 2px -2px 0 var(--s-black), 4px -4px 0;
    box-shadow: 2px -2px 0 var(--s-black), 4px -4px 0
  }
}

@keyframes GallIcon {

  40%,
  60% {
    -webkit-box-shadow: -2px 2px 0 var(--s-black), -4px 4px 0;
    box-shadow: -2px 2px 0 var(--s-black), -4px 4px 0;
    top: 8px;
    width: 24px;
    left: 10px
  }

  50% {
    -webkit-box-shadow: 2px -2px 0 var(--s-black), 4px -4px 0;
    box-shadow: 2px -2px 0 var(--s-black), 4px -4px 0;
    left: 6px;
    top: 16px
  }
}

.online-button a:hover:before {
  border-color: transparent transparent transparent var(--s-black)
}

@-webkit-keyframes PushMe {

  0%,
  100%,
  20% {
    opacity: 1
  }

  50% {
    opacity: .1
  }
}

@keyframes PushMe {

  0%,
  100%,
  20% {
    opacity: 1
  }

  50% {
    opacity: .1
  }
}

.fancybox__content iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

.fancybox__caption {
  text-align: center
}

.fancybox__caption {
  padding: 1em;
  line-height: 1em;
  color: #222;
  background-color: var(--s-black);
  font-weight: 600;

  background: var(--winter-RGB);
  
  margin-top: -1.5em;
  z-index: 999;
  -webkit-box-shadow: 0 3px 6px #00000059;
  box-shadow: 0 3px 6px #00000059
}

.fancybox__caption p {
  margin: 0 0 .5em
}

.fancybox__content:focus:not(.carousel__button.is-close) {
  border: 0 none !important;
  outline: 0;
  -webkit-outline: none
}

.is-rakushka {
  position: relative;
  text-align: right
}

.is-gostinnaya,
.is-rakushka {
  z-index: 10;
  position: relative;
  padding-bottom: 2rem
}

.is-rakushka .artist-card b {
  background-color: var(--s-blue)
}

.is-rakushka .artist-card a:hover b {
  color: var(--s-green)
}

.is-rakushka .artist-card a small.time {
  color: var(--s-green)
}

.is-rakushka .artist-card a:hover small.time {
  color: var(--s-black);
  background-color: var(--s-blue)
}

.is-rakushka .artist-card a::after {
  border-color: var(--s-blue)
}

.is-gostinnaya .artist-card b {
  background-color: var(--s-blue)
}

.is-gostinnaya .artist-card a:hover b {
  color: var(--s-blue)
}

.is-gostinnaya .artist-card a small.time {
  color: var(--s-blue)
}

.is-gostinnaya .artist-card a:hover small.time {
  color: var(--s-black);
  background-color: var(--s-blue)
}

.is-gostinnaya .artist-card a::after {
  border-color: var(--s-blue)
}

.container--tabs .nav-tabs {
  width: 100%;
  margin: 0;
  list-style-type: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  padding: 0
}

.container--tabs .nav-tabs>li {
  float: none;
  margin: 0
}

.container--tabs .nav-tabs>li>a {
  display: block;
  padding: .5rem 1rem;
  text-decoration: none;
  text-transform: uppercase;
  margin: 0;
  -webkit-transition: all .25s ease-in-out;
  -o-transition: all .25s ease-in-out;
  transition: all .25s ease-in-out;
  border-color: transparent;
  color: #fff;
  background-color: var(--s-black);
  font-weight: 800;
  border-bottom-width: 0;
  -webkit-box-shadow: -2px 0 0 var(--s-green) inset, 2px 0 0 var(--s-green) inset, 0 3rem 0 var(--s-black) inset;
  box-shadow: -2px 0 0 var(--s-green) inset, 2px 0 0 var(--s-green) inset, 0 3rem 0 var(--s-black) inset;
  position: relative;
  z-index: 5;
  z-index: 5;
  position: relative;
  margin-bottom: -2px;
  white-space: nowrap
}

.container--tabs .nav-tabs {
  border-bottom: 2px solid
}

.container--tabs .nav-tabs>li.is-active>a,
.container--tabs .nav-tabs>li.is-active>a:focus,
.container--tabs .nav-tabs>li.is-active>a:hover {
  cursor: default;
  border-bottom-color: transparent;
  border-color: #252525 transparent #252525;
  background-color: transparent;
  color: var(--s-black);
  -webkit-box-shadow: 0 -4px 0 var(--s-green) inset, 0 2px 0 var(--s-black) inset, 0 2px 0 var(--s-black) inset;
  box-shadow: 0 -4px 0 var(--s-green) inset, 0 2px 0 var(--s-black) inset, 0 2px 0 var(--s-black) inset;
  border-color: var(--s-black) !important
}

.container--tabs .tab-content {
  clear: both;
  float: none
}

.container--tabs .tab-content>.tab-pane {
  visibility: hidden;
  -webkit-transition: opacity .25s ease-in-out .25s, -webkit-transform .5s ease-in-out .25s;
  transition: opacity .25s ease-in-out .25s, -webkit-transform .5s ease-in-out .25s;
  -o-transition: opacity .25s ease-in-out .25s, transform .5s ease-in-out .25s;
  transition: opacity .25s ease-in-out .25s, transform .5s ease-in-out .25s;
  transition: opacity .25s ease-in-out .25s, transform .5s ease-in-out .25s, -webkit-transform .5s ease-in-out .25s;
  opacity: 0;
  max-height: 0;
  -webkit-transform: translate(0, 20px);
  -ms-transform: translate(0, 20px);
  transform: translate(0, 20px);
  overflow: hidden;
  margin: 0;
  padding: 0
}

.container--tabs .tab-content>.tab-pane * {
  -webkit-transition: opacity .25s ease-in-out .25s, -webkit-transform .5s ease-in-out .25s;
  transition: opacity .25s ease-in-out .25s, -webkit-transform .5s ease-in-out .25s;
  -o-transition: opacity .25s ease-in-out .25s, transform .5s ease-in-out .25s;
  transition: opacity .25s ease-in-out .25s, transform .5s ease-in-out .25s;
  transition: opacity .25s ease-in-out .25s, transform .5s ease-in-out .25s, -webkit-transform .5s ease-in-out .25s;
  opacity: 0
}

.container--tabs .tab-content>.tab-pane.is-active * {
  opacity: 1;
  visibility: visible
}

.container--tabs .tab-content>.tab-pane p {
  display: block;
  overflow: hidden;
  padding: 0
}

.container--tabs .tab-content>.tab-pane.is-active {
  display: block;
  padding: 2rem .5rem;
  max-height: 9000px;
  visibility: visible;
  opacity: 1;
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0)
}

.container--tabs .tab-content>.is-active {
  display: block
}

.col-img img {
  display: block;
  position: relative;
  max-width: 100%;
  width: auto
}

.col-img a {
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  padding: 0;
  -webkit-transition: all .25s ease-in-out !important;
  -o-transition: all .25s ease-in-out !important;
  transition: all .25s ease-in-out !important;
  -webkit-filter: saturate(1) contrast(1);
  filter: saturate(1) contrast(1);
  display: block;
  width: auto;
  max-width: 200px;
  margin: 0;
  position: relative;
  z-index: 10;
  margin: 0 auto
}

.col-img a img {
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  padding: 4px;
  -webkit-transition: all .25s ease-in-out !important;
  -o-transition: all .25s ease-in-out !important;
  transition: all .25s ease-in-out !important;
  -webkit-filter: saturate(1) contrast(1);
  filter: saturate(1) contrast(1);
  border: 1px solid #fff
}

.col-img a:after,
.col-img a:before {
  content: '';
  display: block;
  position: absolute;
  top: 12px;
  left: calc(100% - 32px);
  height: 12px;
  width: 20px;
  -webkit-transition: all .1s linear;
  -o-transition: all .1s linear;
  transition: all .1s linear
}

.col-img a:after {
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
  background-color: var(--s-green);
  color: var(--s-pink);
  z-index: 3
}

.col-img a:before {
  -webkit-transform: translate(1px, 1px);
  -ms-transform: translate(1px, 1px);
  transform: translate(1px, 1px);
  border-color: #fff;
  -webkit-box-shadow: 1px 1px 0 var(--s-black);
  box-shadow: 1px 1px 0 var(--s-black);
  background-color: #fff;
  z-index: 2
}

.col-img a:hover:before {
  -webkit-transform: translate(2px, 2px);
  -ms-transform: translate(2px, 2px);
  transform: translate(2px, 2px);
  border-color: #fff;
  -webkit-box-shadow: 3px 3px 0 var(--s-black);
  box-shadow: 3px 3px 0 var(--s-black);
  background-color: #fff;
  z-index: 2
}

.col-img a:hover:after {
  background-color: var(--s-pink);
  -webkit-transform: translate(-3px, -3px);
  -ms-transform: translate(-3px, -3px);
  transform: translate(-3px, -3px);
  -webkit-box-shadow: 3px 3px 0 var(--s-green);
  box-shadow: 3px 3px 0 var(--s-green)
}

.col-img a:hover img {
  -webkit-filter: saturate(.5) contrast(1.5) brightness(1.25);
  filter: saturate(.5) contrast(1.5) brightness(1.25);
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
  -webkit-transition: all .25s ease-in-out !important;
  -o-transition: all .25s ease-in-out !important;
  transition: all .25s ease-in-out !important;
  border-color: var(--s-black)
}

#lectory .tab-pane .row {
  border-bottom: 2px dashed #0000007F;
  font-size: .75rem;
  padding: 1rem 0;
  font-weight: 600;
  z-index: 10;
  position: relative;
  overflow: hidden
}

#lectory .tab-pane .row:last-child {
  border-bottom: 0 none
}

#lectory .tab-pane h4 {
  text-transform: uppercase;
  display: block;
  color: var(--s-black);
  font-weight: 900;
  font-size: 1.25rem;
  line-height: 1.1em;
  margin: .25em 0 .25em
}

#lectory .tab-pane h3 {
  text-align: center;
  margin: 0;
  font-weight: 900;
  text-transform: uppercase;
  font-size: 3rem;
  -webkit-text-stroke: 2px #111;
  color: transparent;
  line-height: .9em
}

.col-time p {
  font-weight: 900;
  white-space: nowrap;
  font-size: 1.75rem;
  display: block;
  padding: 0;
  margin: 0;
  text-align: center;
  padding: 0;
  font-family: LovedByTheKing;
  font-weight: 800;
  color: var(--s-black)
}

body.compensate-for-scrollbar {
  padding: 0 !important
}

.fancybox__slide {
  scrollbar-width: thin;
  scrollbar-color: #0CEFED7F #000;
  -webkit-scrollbar-width: thin
}

.fancybox__slide::-webkit-scrollbar {
  width: 6px
}

.fancybox__slide::-webkit-scrollbar-track {
  background-color: #222
}

.fancybox__slide::-webkit-scrollbar-thumb {
  background-color: #0CEFED7F
}

.button-wrapper {
  padding: 1rem;
  text-align: center
}

.button {
  background-color: var(--s-black);
  text-decoration: none;
  padding: 1em 1.5em;
  text-transform: uppercase;
  border-radius: 3px;
  letter-spacing: .1em;
  font-weight: 700;
  -webkit-transition: all .25s ease-in-out !important;
  -o-transition: all .25s ease-in-out !important;
  transition: all .25s ease-in-out !important
}

.button:hover {
  -webkit-box-shadow: 0 6px 3px #0000003F;
  box-shadow: 0 6px 3px #0000003F
}

.srtr {
  display: block;
  position: relative;
  padding: 0;
  margin: .5rem auto;
  max-width: 200px;
  font-size: 11px;
  font-weight: 800;
  color: var;
  padding: 0 0 0 64px
}

.srtr:after,
.srtr:before {
  width: 24px;
  height: 24px;
  border: 4px solid;
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 16px;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  color: #fff;
  -webkit-box-shadow: 1px 1px 3px rgba(0, 0, 0, .35), 1px 1px 3px rgba(0, 0, 0, .35) inset;
  box-shadow: 1px 1px 3px rgba(0, 0, 0, .35), 1px 1px 3px rgba(0, 0, 0, .35) inset
}

.srtr:before {
  border-radius: 0
}

.srtr:after {
  -webkit-transform-origin: left bottom;
  -ms-transform-origin: left bottom;
  transform-origin: left bottom;
  left: 30px;
  border-color: transparent transparent #5f7 #5f7;
  height: 16px;
  width: 32px;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 17px;
  z-index: 2;
  box-shadow: -3px 3px 0 #0000003F
}

.leaflet-marker-icon:hover {
  z-index: 999 !important
}

.map-link {
  color: var(--s-black);
  text-decoration: underline;
  display: inline-block;
  font-weight: 600;
  margin: 0 auto;
  position: relative;
  padding: 0 0 0 32px;
  font-weight: 700;
  height: 36px;
  line-height: 32px;
  -webkit-transition: all .25s ease-in-out !important;
  -o-transition: all .25s ease-in-out !important;
  transition: all .25s ease-in-out !important;
  text-transform: uppercase;
  letter-spacing: 0
}

.map-link:after,
.map-link:before {
  content: '';
  display: block;
  width: 24px;
  height: 24px;
  background-color: transparent;
  position: absolute;
  left: 0;
  border-radius: 50% 50% 50% 0;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 0;
  border: 2px solid
}

.map-link:after {
  width: 12px;
  height: 12px;
  border: 2px solid;
  border-radius: 50%;
  top: 6px;
  left: 6px
}

.map-link:hover {
  color: var(--s-pink)
}

.tab-pane .location-link {
  margin: .5rem auto;
  -webkit-transform: scale(.85);
  -ms-transform: scale(.85);
  transform: scale(.85)
}

#s-gallery {
  width: 100%;
  position: relative
}

#s-gallery ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 0;
  margin: 0;
  width: 100%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}

#s-gallery ul li {
  list-style: none;
  display: flex-item;
  padding: 0;
  margin: 0;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 16.66%;
  flex: 0 0 16.66%;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  border: 1px solid #FFFFFFBF
}

#s-gallery.testGall ul li {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 10%;
  flex: 0 0 10%
}

#s-gallery ul li a {
  display: block;
  position: relative
}

#s-gallery ul li a:before {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  border: 4px solid var(--s-salad);
  -webkit-transition: all .25s ease-in-out;
  -o-transition: all .25s ease-in-out;
  transition: all .25s ease-in-out;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, .35), 0 3px 6px rgba(0, 0, 0, .35) inset;
  box-shadow: 0 3px 6px rgba(0, 0, 0, .35), 0 3px 6px rgba(0, 0, 0, .35) inset;
  -webkit-transform: scale(.95);
  -ms-transform: scale(.95);
  transform: scale(.95);
  top: -4px;
  left: -4px;
  z-index: 10;
  opacity: 0
}

#s-gallery ul li a:hover:before {
  opacity: 1;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1)
}

#s-gallery ul li a img {
  display: block;
  padding: 0;
  margin: 0;
  max-width: 100%;
  width: 100%;
  -webkit-filter: saturate(.1) contrast(.75) brightness(.9);
  filter: saturate(.1) contrast(.75) brightness(1.25);
  -webkit-transition: all .25s ease-in-out;
  -o-transition: all .25s ease-in-out;
  transition: all .25s ease-in-out
}

#s-gallery ul li a:hover img {
  -webkit-filter: saturate(1) contrast(1);
  filter: saturate(1) contrast(1)
}

section#gallery:before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-image: url(/2023/i/pattern-grunge-salad.svg);
  position: absolute;
  background-size: 50% auto;
  background-attachment: fixed;
  opacity: 1;
  -webkit-filter: invert(1) saturate(0);
  filter: invert(1) saturate(0);
  mix-blend-mode: hue
}

.apply-form .fancybox__content {
  max-width: 640px !important;
  background-color: transparent !important;
  border-radius: 16px !important;
  overflow: hidden
}

.apply-form .fancybox__content iframe {
  -webkit-transition: all .5s cubic-bezier(.68, -.55, .27, 1.55);
  -o-transition: all .5s cubic-bezier(.68, -.55, .27, 1.55);
  transition: all .5s cubic-bezier(.68, -.55, .27, 1.55);
  display: block;
  -webkit-animation: 10s Hue2 linear infinite;
  animation: 10s Hue2 linear infinite
}

@-webkit-keyframes Hue2 {

  0%,
  100% {
    -webkit-filter: hue-rotate(15deg);
    filter: hue-rotate(15deg)
  }

  50% {
    -webkit-filter: hue-rotate(-15deg);
    filter: hue-rotate(-15deg)
  }
}

@keyframes Hue2 {

  0%,
  100% {
    -webkit-filter: hue-rotate(15deg);
    filter: hue-rotate(15deg)
  }

  50% {
    -webkit-filter: hue-rotate(-15deg);
    filter: hue-rotate(-15deg)
  }
}

.apply-form .fancybox__content iframe {
  -webkit-transition: all .5s cubic-bezier(.68, -.55, .27, 1.55);
  -o-transition: all .5s cubic-bezier(.68, -.55, .27, 1.55);
  transition: all .5s cubic-bezier(.68, -.55, .27, 1.55);
  display: block;
  -webkit-animation: 10s Hue2 linear infinite;
  animation: 10s Hue2 linear infinite
}

.apply-form .fancybox__caption {
  color: var(--s-blue);
  font-size: 14px;
  background: #222
}

.mainTitle .p1 {
  top: 25%;
  left: 5vmin;
  margin: -10vmin 0 0
}

.mainTitle .p2 {
  top: 50%;
  left: 10%
}

.mainTitle .p3 {
  bottom: 15vmin;
  left: 50%
}

.mainTitle .p4 {
  top: 10%;
  left: 45%
}

.mainTitle .p5 {
  top: 30%;
  right: 5vmin
}

.mainTitle .p1 {
  top: 5%;
  left: 5vmin;
  margin: 0
}

.mainTitle .p2 {
  top: 50%;
  left: 10%
}

.mainTitle .p3 {
  bottom: 30vmin;
  left: 50%;
  max-width: 64px
}

.mainTitle .p4 {
  top: 10%;
  left: 45%;
  max-width: 30vmin;
  width: 30vmin
}

.mainTitle .p5 {
  top: 30%;
  right: 5vmin
}

.mainTitle .p6 {
  top: 20%;
  left: 20%
}

.mainTitle .p7 {
  bottom: 30%;
  right: 15%
}

.mainTitle i {
  display: block;
  position: absolute;
  width: 25vmin;
  max-width: 25vmin;
  filter: drop-shadow(3px 3px 6px rgba(0, 0, 0, 0.15));
  -webkit-filter: drop-shadow(3px 3px 6px rgba(0, 0, 0, 0.15))
}

.pt5 {
  width: 20vmin;
  height: 20vmin;
  left: 10%;
  bottom: 40vmin
}

.pt6 {
  width: 20vmin;
  height: 20vmin;
  right: 5%;
  bottom: 20%;
  -webkit-transform: rotate(15deg);
  transform: rotate(15deg)
}

.pt7 {
  width: 15vmin;
  height: 15vmin;
  left: 10%;
  top: 10%
}

.pt3 {
  width: 20vmin;
  height: 15vmin;
  left: 50%;
  bottom: 40vmin
}

.pt4 {
  width: 30vmin;
  height: 10vmin;
  top: 64px;
  left: 40%
}

.pt1 {
  width: 20vmin;
  height: 20vmin;
  right: 11px;
  top: 300px;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg)
}

.pt2 {
  width: 20vmin;
  height: 20vmin;
  left: 50%;
  top: 150px
}

.mainTitle i img {
  max-width: 100%;
  max-height: 100%
}

.theMain svg.icon {
  animation: none;
  transform: translate3d(0, 0, 0);
  transition: all .1s linear
}

.theMain,
.theMain .mainTitle {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(0, 0);
  max-width: 100%
}

.theData {
  background: transparent;
  position: absolute;
  bottom: 128px;
  width: 100%;
  left: 0;
  z-index: 99
}

.theData:before,
.theData:after {
  display: none !important
}

.linx span a use {
  animation: none
}

section#home {
  padding: 0 !important;
  overflow: hidden
}

#prlx {
  mix-blend-mode: normal;
  z-index: 50;
  position: absolute;
  width: 100%;
  height: 100%;
  display: block
}

.a-cards {
  display: flex;
  display: flex;
  flex-flow: row wrap;
  align-items: flex-start
}

.a-cards .artist-card {
  flex: 0 1 33%;
}

.artist-card.is-wide {
  flex: 0 1 100%
}

.artists-wrap h3 {
  font-size: 1.25rem;
  letter-spacing: .25em
}

.mk-img img {
  display: block;
  max-width: 100%;
  width: 100%;
  height: auto
}

.master-card {
  position: relative;
  cursor: pointer;
  transition: all .25s ease-in-out;
  overflow: hidden;
  margin: 0 auto 1rem
}

.master-card .mk-img {
  overflow: hidden;
  width: 100%;
  position: relative;
  height: 0;
  padding: 90% 0 0
}

.master-card .mk-img img {
  transition: all .25s ease-in-out;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto
}

.master-card:before {
  display: block;
  position: absolute;
  z-index: 1;
  background: linear-gradient(90deg, #00fd91 20%, #00aef9 100%);
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  mix-blend-mode: color;
  opacity: 0;
  transition: all .5s ease-in-out
}

.master-card:hover:before {
  opacity: 1
}

.master-card:hover .mk-img img {
  transform: scale(1.25)
}

.master-card h3 {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 2em .5em 1.5em;
  font-size: 12px;
  margin: 0;
  line-height: 1.5em;
  font-weight: 300;
  cursor: pointer;
  transition: all .25s ease-in-out;
  text-shadow: 0 1px 3px #00000059;
  background: #000;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0, #000000F2 100%);
  width: 100%;
  text-align: center;
  text-transform: uppercase
}

.master-card h3 .accent {
  display: block;
  font-weight: 800;
  font-size: 20px
}

.master-card h3 .sm {
  display: block;
  margin: .25em auto .25em;
  font-weight: 600;
  letter-spacing: .2em
}

.master-card h3:after {
  content: 'Подробнее';
  display: block;
  text-transform: uppercase;
  margin: 0 auto;
  font-size: 12px;
  position: relative;
  background: 0 0;
  text-align: center;
  width: 100px;
  height: 0;
  line-height: 24px;
  transition: all .25s ease-in-out;
  overflow: hidden;
  font-weight: 700;
  letter-spacing: .1em;
  border: 1px solid var(--s-blue);
  opacity: 0
}

.master-card:hover h3:after {
  height: 24px;
  margin: 1rem auto;
  color: var(--s-blue);
  opacity: 1
}

.master-card .mk-time {
  display: block;
  position: absolute;
  left: 0;
  right: auto;
  z-index: 1;
  font-size: 14px;
  padding: .25em .5em;
  background-color: transparent;
  color: var(--s-blue);
  font-weight: 600;
  -webkit-transition: all .25s ease-in-out;
  -o-transition: all .25s ease-in-out;
  transition: all .25s ease-in-out;
  top: -1px;
  transform-origin: left bottom;
  background-color: #000;
  letter-spacing: .1em
}

.artist-card i small {
  color: #fff;
  font-weight: 600;
  color: #fff;
  font-size: .9em;
  display: block;
  padding: .2em;
  text-shadow: 1px 1px 3px var(--s-black);
  position: absolute;
  right: 0
}

.artist-card i small:before {
  content: '*'
}

.is-gostinnaya .artist-card i small {
  right: auto;
  left: 0
}

.soloma-timeline {
  padding: 32px 0 32px 96px;
  margin: 0 auto;
  display: flex;
  width: 100%;
  align-content: center;
  align-items: center;
  justify-content: center;
  background-image: url(/2022/img/pattern-grunge.svg);
  position: relative;
  max-width: 1000px;
  font-size: 18px;
}

.soloma-timeline:before {
  width: 80px;
  height: 40px;
  content: '';
  display: block;
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translate(0, -50%);
  background-image: url(/2022/img/soloma-live-w.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat
}

.soloma-timeline li {
  list-style: none;
  text-align: center;
  overflow: hidden;
  padding: 0.5em;
}

.soloma-timeline li a {
  color: var(--s-blue);
  text-decoration: none;
  text-transform: uppercase;
  font-weight: 700;
  transition: all .25s ease-in-out;
  padding: .25em;
  background-image: url(/2022/img/edge2.svg);
  background-size: auto 24px;
  background-repeat: no-repeat;
  background-position-y: -5px;
  background-color: #FFFFFF19
}

.soloma-timeline li a:hover {
  color: #fff;
  background-color: #000
}

.regtxt {
  display: block;
  position: relative;
  background: #0000007F;
  padding: 1em 1.5em;
  margin: 1rem auto;
  max-width: 720px;
  color: var(--s-blue);
  box-shadow: 0 6px 12px #00000059;
  border-radius: 3px;
  font-size: 16px
}

.regtxt .bt {
  text-align: center
}

.regtxt .apply-btn {
  display: inline-block;
  text-decoration: none;
  color: var(--s-blue);
  font-weight: 600;
  text-transform: uppercase;
  padding: .5em;
  transition: all .25s
}

.artists-wrap h3 .apply-btn {
  display: inline-block;
  font-size: 16px;
  text-decoration: none;
  border: 0 solid transparent;
  font-weight: 800;
  padding: .5em 1em;
  border-radius: 0;
  transition: all .25s ease-in-out;
  background-size: 200% auto;
  text-align: center;
  max-width: 183px;
  margin: 0;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0);
  letter-spacing: .15em;
  background-color: var(--new-green);
  background-image: var(--winter-RGB);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: bottom left;
  color: #fff;
  box-shadow: 0 0 12px rgba(255, 255, 255, 0)
}

.artists-wrap h3 .apply-btn:hover {
  color: #fff;
  background-color: var(--s-black);
  border-color: #FFFFFFFF;
  text-shadow: 1px 1px 1px #00000059;
  background-size: 200% 100%;
  box-shadow: 0 0 24px #FFFFFF7F
}

.artist-button-wrapper {
  text-align: center;
  clear: both;
  margin: 1rem auto
}

.artist-button-wrapper a.artist-btn,
.rules-button-wrapper a.rules-btn {
  display: inline-block;
  position: relative;
  color: #fff;
  font-weight: 800;
  text-transform: uppercase;
  text-align: center;
  padding: .5em 1em;
  text-decoration: none;
  max-width: 340px;
  margin: 0 auto;
  text-shadow: 1px 1px 1px #0000003F;
  font-size: 1rem;
  letter-spacing: .1em;
  transition: all .25s ease-in-out;
  color: #3bb4e5;
  border: 1px solid;
  font-size: 18px
}

.artist-button-wrapper a.artist-btn:hover,
.rules-button-wrapper a.rules-btn:hover {
  background:var(--winter-RGB);
color:#fff;
  border-color:#3bb4e5;

}

.rules-button-wrapper a.rules-btn:hover {
  border-color: transparent
}

.hex-grid {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  font-family: sans-serif;
  list-style-type: none;
  flex-wrap: wrap
}

.hex {
  position: relative;
  outline: 1px solid transparent;
  transition: all .5s;
  will-change: transform;
  transition: all .5s
}

.hex-in {
  position: relative;
  height: 0;
  padding: 110% 0 0;
  overflow: hidden
}

.hex-in * {
  position: absolute;
  visibility: visible;
  outline: 0 solid transparent
}

.hex-link {
  display: block;
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  text-align: center;
  color: #fff;
  overflow: hidden;
  position: absolute;
  top: 50%;
  left: 50%;
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  transform: translate(-50%, -50%);
  background-color: #FFFFFF7F;
  cursor: crosshair
}

.hex img {
  min-width: 100%;
  height: auto;
  display: block;
  width: 100%;
  min-height: 100%;
  object-fit: cover;
  transition: all .25s ease-in-out;
  z-index: 20
}

.hex-img {
  position: absolute;
  z-index: 20;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%);
  clip-path: polygon(50% 4%, 96% 27%, 96% 73%, 50% 96%, 4% 73%, 4% 27%)
}

.hex-txt {
  position: absolute;
  z-index: 20;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  text-align: center;
  height: auto;
  display: block;
  height: auto;
  min-height: 40px
}

.hex-txt h3 {
  text-align: center;
  width: auto;
  max-width: 90%;
  display: block;
  text-transform: uppercase;
  text-shadow: 1px 1px 1px #0000003F;
  line-height: 1em;
  margin: 0 auto;
  padding: 0;
  font-weight: 900;
  font-size: 18px;
  padding: .5em;
  margin: 0 auto;
  position: relative;
  font-size: 14px;
  background: var(--winter-RGB);
  transition: all .25s ease-in-out;
  background-size: 100% 100%;
  background-position: center;
  background-repeat: no-repeat;
  clip-path: polygon(0% 0%, 100% 0%, 95% 50%, 100% 100%, 0% 100%, 5% 50%)
}

a:hover .hex-txt h3 {
  color: #fff;
  clip-path: polygon(10% 0%, 90% 0%, 100% 50%, 90% 100%, 10% 100%, 0% 50%)
}

a.hex-link:hover img {
  transform: scale(1.25);
  transition: all .5s ease-in-out;
  filter: saturate(1.5) contrast(1.5) brightness(.75) hue-rotate(15deg) blur(3px)
}

.hex {
  width: var(--hex-width);
  flex: 0 1 var(--hex-width)
}

.hex:nth-of-type(5) {
  margin: 0 0 0 var(--hex-row-margin)
}

#home {
  width: 100%;
  height: 100vh;
  overflow: hidden;
  position: relative;
  background-color: var(--new-bg)
}

.new-bg {
  width: var(--new-bg-size);
  height: var(--new-bg-size);
  position: absolute;
  overflow: visible;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: var(--new-blue);
  animation: var(--new-timing) Rt linear infinite
}

@keyframes Rt {
  0% {
    transform: translate(-50%, -50%) rotate(0deg)
  }

  100% {
    transform: translate(-50%, -50%) rotate(360deg)
  }
}

.new-bg .c {
  display: block;
  position: absolute;
  height: 4px;
  width: 100%;
  top: 50%;
  left: 0;
  margin: -2px 0 0 0;
  overflow: visible
}

.c1 {
  transform: rotate(120deg)
}

.c2 {
  transform: rotate(240deg)
}

.c:before {
  content: "";
  width: 100%;
  height: 0;
  padding: 100% 0 0;
  background: radial-gradient(circle, #13D267 10%, rgba(245, 15, 255, 0) 70%);
  position: absolute;
  display: block;
  left: var(--new-circle-margin);
  top: 50%;
  border-radius: 50%;
  transform: translate(0, -50%)
}

.c2:before {
  background: radial-gradient(circle, #ff5050 10%, #7cfc7500 70%)
}

.c3:before {
  background: radial-gradient(circle, #14baf8 10%, #14baf800 70%)
}

.c:before {
  animation: calc(var(--new-timing) / 2) ScaleGr ease-in-out
}

@keyframes ScaleGr {

  0%,
  70%,
  100% {
    transform: translate(0, -50%) scale(1)
  }

  80% {
    transform: translate(0, -50%) scale(.8)
  }

  90% {
    transform: scale(1.2)
  }
}

.c2:before {
  animation-delay: calc(var(--new-timing) * .15)
}

.c3:before {
  animation-delay: calc(var(--new-timing) * .1)
}

.rays {
  width: var(--new-bg-size);
  height: var(--new-bg-size);
  z-index: 0;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  opacity: .3;
  animation: calc(var(--new-timing) * 2.25) Rt linear infinite reverse;
  background-image: url(/2025/i/rays.svg);
  z-index: 5;
  display: block;
  position: absolute
}

section#home {
  z-index: 10
}

section#lineup {
  z-index: 11
}

section#activities {
  z-index: 12
}

section#partners {
  z-index: 13
}

section#contacts {
  z-index: 14
}

section:not(.live) * {
  animation-play-state: paused !important
}

#partners h3 {
  text-align: center;
  text-transform: uppercase;
  color: var(--new-pink);
  line-height: 1.1em;
  letter-spacing: .1em;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  background: var(--winter-RGB);
  -webkit-background-clip: text;
  background-size: 100% auto
}

#partners:before,
#partners:after {
  display: none
}

b.partner {
  display: block;
  position: relative;
  width: 100%;
  height: 0;
  padding: 50% 0 0
}

b.partner a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

b.partner img {
  max-width: 100%;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  object-fit: contain;
  width: 90%;
  height: auto
}

#partners .row {
  padding: 2rem 0
}

.orgs {
  display: flex;
  align-content: center;
  align-items: stretch;
  text-align: center;
  justify-content: space-around;
  flex-direction: row;
  flex-wrap: nowrap
}

.orgs img {
  display: block;
  position: relative;
  margin: 0 auto;
  max-width: 90%
}

.orgs .org {
  display: block;
  width: auto;
  text-align: center;
  padding: .5rem
}

.orgs a {
  transition: all .25s ease-in-out;
  display: block
}

.orgs a:hover {
  transform: scale(1.1)
}

.container,
section .container {
  max-width: 100% !important;
  width: 1320px
}

.place-details {
  font-size: 1rem;
  text-transform: none;
  font-weight: normal;
  font-size: 14px;
  background: var(--winter-sapphire-evening);
  padding: 12px 24px 24px;
  border-radius: 0;
  box-shadow: 0 3px 24px #FFFFFF59;
  backdrop-filter: brightness(1) blur(64px) hue-rotate(350deg);
  border-radius: 0;
}

.place-details h3 {
  text-transform: uppercase;
  color: #fff;
}

.place-details p {
  margin: 0 auto .5em
}

.place-details ul {
  padding: 0 0 0 16px
}

.hex.hex-big {
  width: 100%;
  display: block;
  height: 0;
  padding: 110% 0 0;
  position: relative;
  background-color: #FFFFFF7F;
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%)
}

.hex.hex-big .hex-img {
  position: absolute;
  top: 50%;
  left: 50%
}

.container.akcia {
  padding: 1.5rem 2rem 0;
  margin: 1.5rem auto 0;
  border-top: 1px dashed #FFFFFF7F
}

#rules article {
  display: block;
  padding: 0 1.5rem;
  position: relative;
  z-index: 50
}

#rules article h1,
#rules article h2,
#rules article h3 {
  color: #1EE
}

#rules article p {
  margin: 0 auto .25em
}

.mdl#rules:before {
  opacity: .1
}

.rules-button-wrapper.is-akcia {
  text-align: center
}

.rules-button-wrapper.is-akcia .rules-btn {
  background: var(--winter-RGB);
  color: #fff;
  border: 0 none;
  box-shadow: 0 3px 6px #0000003F
}

.contacts .location a {
  text-decoration: none;
  font-size: 1.25rem;
  display: block;
  padding: 0 0 0 36px;
  position: relative;
  color: #fff;
  font-weight: 800
}

.contacts .location a:before {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  width: 12px;
  height: 12px;
  border: 3px solid var(--s-green);
  border-radius: 16px 16px 0 16px;
  transform: rotate(45deg) translate(0, -80%)
}

@media(max-width:1080px) {

  body,
  html {
    font-size: 16px
  }

  .mainTitle i {
    display: block;
    position: absolute;
    width: 25vmin;
    max-width: 25vmin
  }

  .mainTitle i.p4 {
    max-width: 40vmin;
    width: 40vmin
  }

  .icon.p7 {
    top: auto;
    right: -16px;
    bottom: 40%
  }

  .icon.p3 {
    bottom: auto;
    left: auto;
    right: 8px;
    top: 0
  }

  .icon.p2 {
    left: 50%;
    top: 40%
  }

  .info-row {
    flex-direction: column;
    align-content: center
  }

  .icon.p5 {
    bottom: auto;
    left: auto;
    right: 8px;
    top: 15%;
    bottom: auto
  }

  .info-row>div {
    flex: 0 1 100%;
    width: 100%
  }

  .theData {
    height: auto;
    display: block;
    padding: 0;
    bottom: 160px
  }

  .theData .dateTime,
  .theData .linx {
    position: relative;
    top: auto;
    left: auto;
    -webkit-transform: translate(0);
    -ms-transform: translate(0);
    transform: translate(0);
    width: 100%;
    margin: 1rem auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }

  .theData .dateTime {
    display: flex;
    width: 300px;
    flex-direction: column;
    transform: scale(1)
  }

  .theData .linx {
    text-align: right;
    width: 200px;
    position: relative;
    flex: 0 1 64px
  }

  .theMain .icon {
    opacity: 1;
    max-width: 15vmin !important;
    max-height: 15vmin !important
  }

  .theMain .icon.p3 {
    max-width: 10vmin !important;
    top: 70%;
    right: 50%
  }

  .theData .date,
  .theData .place,
  .theData .time {
    margin: 0 auto .25em;
    font-size: 20px
  }

  .artist-card a i {
    font-size: 10px !important
  }

  nav .menu li a {
    color: #fff
  }

  #partners b {
    margin: 0 0 2rem;
    display: block
  }

  #partners b img {
    max-width: 180px;
    display: block;
    margin: 0 auto 1rem
  }

  b.partner {
    padding: 25% 0 0
  }

  .artists-wrap h3 .apply-btn {
    position: relative;
    top: auto;
    left: auto;
    transform: translate(0, 0);
    display: block;
    margin: .5em auto
  }
}

@media(max-width:992px) {
  .soloma-timeline {
    flex-wrap: wrap;
    padding: 16px 0
  }

  .soloma-timeline:before {
    left: 50%;
    top: 0;
    z-index: 99;
    transform: translate(-50%, -50%)
  }

  .artist-card a {
    width: auto;
    position: relative;
    text-align: center
  }

  .mdl .artistImg img {
    max-height: 70vmin
  }
}

@media(max-width:768px) {
  .hex:first-child {
    margin: 0 auto
  }

  .hex {
    width: 50%;
    flex: 0 1 50%
  }

  .hex:nth-child(3n) {
    margin: -14% 0 0 25%
  }

  .hex:nth-child(6n - 1),
  .hex:nth-child(6n - 2) {
    margin: -14% 0 0
  }

  .hex:last-of-type {
    margin: auto
  }

  .mdl .artistImg {
    width: 280px
  }
}

@media(max-width:640px) {
  #expandMenu {
    display: block;
    visibility: visible
  }

  nav .menu li a {
    font-size: 10px
  }

  .m24logo {
    width: 100px
  }

  ul.menu {
    display: block;
    position: absolute;
    right: auto;
    left: -20px;
    width: 80vw;
    height: auto;
    top: 72px;
    -webkit-transform: translate(-100%, 0);
    -ms-transform: translate(-100%, 0);
    transform: translate(-100%, 0);
    text-align: left;
    padding: 2rem 1rem 2rem 2.5rem;
    background-color: var(--s-black);
    -webkit-transition: all .75s cubic-bezier(.86, 0, .07, 1);
    -o-transition: all .75s cubic-bezier(.86, 0, .07, 1);
    transition: all .75s cubic-bezier(.86, 0, .07, 1);
    height: calc(100vh - 72px)
  }

  ul.menu li {
    display: block;
    font-size: 1rem;
    margin: 0 auto 1.5em
  }

  ul.menu li a {
    font-size: 1rem
  }

  .m24logo {
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
  }

  nav #mobileMenu:not(:checked)~ul.menu {
    visibility: hidden;
    opacity: 0
  }

  label#expandMenu {
    visibility: visible;
    opacity: 1
  }

  nav #mobileMenu:checked~ul.menu {
    visibility: visible;
    opacity: 1;
    display: block;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
    -webkit-transition: all .25s ease-in-out .25s;
    -o-transition: all .25s ease-in-out .25s;
    transition: all .25s ease-in-out .25s
  }

  footer p {
    padding: .5rem 0 .5rem;
    color: #fff;
    text-align: center
  }

  footer {
    padding: 0 0 1.5rem
  }

  .artist-card b {
    font-size: 16px
  }

  .artist-card i {
    bottom: 16px
  }

  .linx span.m24 {
    width: 60px;
    height: 60px;
    margin-left: 1rem
  }

  .container {
    max-width: 100%
  }

  .mdl p {
    font-size: 13px
  }

  .container--tabs .nav-tabs {
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }

  .container--tabs .nav-tabs>li {
    -webkit-box-flex: 0;
    -ms-flex: 0 25%;
    flex: 0 25%
  }

  .container--tabs .nav-tabs>li>a {
    font-size: 14px
  }

  nav li .apply-btn:before {
    right: auto;
    left: 0
  }
}

@media(max-width:1366px) {
  #s-gallery ul li {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 20%;
    flex: 0 0 20%
  }
}

@media(max-width:1080px) {
  #s-gallery ul li {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33.33%;
    flex: 0 0 33.33%
  }

  #s-gallery.testGall ul li {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 20%;
    flex: 0 0 20%
  }
}

@media(max-width:800px) {
  #s-gallery ul li {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%
  }
  
  .pt5 {
  width: 20vmin;
  height: 20vmin;
  left: -5%;
  bottom: 50%
}

.pt6 {
  width: 20vmin;
  height: 20vmin;
  right: 5%;
  bottom: 15%;
  -webkit-transform: rotate(15deg);
  transform: rotate(15deg)
}

.pt7 {
  width: 15vmin;
  height: 15vmin;
  left: 2%;
  top: 5%
}

.pt3 {
  width: 20vmin;
  height: 15vmin;
  left: 50%;
  bottom: 45%
}

.pt4 {
  width: 30vmin;
  height: 10vmin;
  top: 64px;
  left: 40%
}

.pt1 {
  width: 20vmin;
  height: 20vmin;
  right: 11px;
  top: 96px;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg)
}

.pt2 {
  width: 20vmin;
  height: 20vmin;
  left: 50%;
  top: 150px
}

  
}

@media(max-width:1080px) {
  .theMain .icon {
    opacity: 1;
    max-width: 15vmin !important;
    max-height: 15vmin !important
  }

  .theMain .icon.p3 {
    max-width: 10vmin !important;
    top: 70%;
    right: 50%
  }

  .theData .date,
  .theData .place,
  .theData .time {
    margin: 0 auto .25em;
    font-size: 20px
  }

  .artist-card a i {
    font-size: 10px !important
  }
}

@media(max-width:640px) {
  #logo {
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0)
  }
}

section#home.go .pt,
section#home.go #snowCanvas,
section#home.go .rays,
section#home.go.live .c {
  visibility: hidden;
  display: none
}

section#home.go * {
  animation-play-state: paused
}

section#home.go.live .pt,
section#home.go.live #snowCanvas,
section#home.go.live .rays,
section#home.go.live .c {
  visibility: visible;
  display: block
}

section#home.go.live * {
  animation-play-state: running
}