/* Compatibility and small-phone composition shared by both entrances. */
body {
  overflow-x: hidden;
  overflow-x: clip;
}
.no-js-note {
  display: none;
}
.loading {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.bar {
  top: 0;
  right: 0;
  left: 0;
}
.world {
  height: 100vh;
  height: 100lvh;
}
.pin {
  height: 100vh;
  height: 100svh;
}
.entry-screen__frame {
  min-height: 100vh;
  min-height: var(--screen-height, 100vh);
  min-height: 100svh;
}
.entry-screen__mark {
  width: 150px;
  width: clamp(130px, 15vw, 210px);
}
.entry-screen__silent[hidden] {
  display: none;
}
.is-economy .veil::after {
  animation: none;
}
.is-economy .entry-screen__word {
  filter: none;
}
.is-basic .veil,
.is-basic .flash,
.is-basic .player,
.is-basic .nudge,
.is-basic .desk__form,
.is-basic .desk__fire,
.is-basic .desk__save {
  display: none;
}
.is-basic .desk__body {
  display: block;
}
.is-basic .world {
  display: none;
}
.is-basic .loading:not(.entry-screen) {
  display: grid;
}
.is-basic body {
  background-color: #07050c;
  color: #f4eff9;
  font-family: Arial, sans-serif;
  font-family: var(--text);
  background-attachment: scroll;
}
.is-basic .entry-screen {
  background-color: #08090d;
  color: #f3f0e9;
}
.is-basic .bar {
  padding-inline: 16px;
}
.is-basic .entry-screen__word,
.is-basic .entry-screen__letter {
  animation: none;
}
.is-basic .no-js-note {
  display: block;
}
@supports not (height: 1svh) {
  .sec {
    height: var(--h, 200vh);
  }
  .sec--arrival {
    --h: 170vh;
  }
  .sec--inside {
    --h: 150vh;
  }
  .sec--gigs {
    --h: 260vh;
  }
  .sec--lineup {
    --h: 300vh;
  }
  .sec--drop {
    --h: 300vh;
  }
  .sec--desk {
    --h: 230vh;
  }
  .ch--street {
    --h: 240vh;
  }
  .ch--doors {
    --h: 170vh;
  }
  .ch--build {
    --h: 220vh;
  }
  .ch--drop {
    --h: 300vh;
  }
  .ch--front {
    --h: 200vh;
  }
  .ch--up {
    --h: 160vh;
  }
  .ch--home {
    --h: 420vh;
  }
  .ch--drop .beat {
    top: 18vh;
  }
  .desk {
    max-height: 46vh;
  }
  .no-gl .sec {
    height: auto;
  }
}
@supports not (font-size: clamp(10px, 1vw, 20px)) {
  :root {
    --gutter: 20px;
  }
  .entry-screen__frame {
    padding: 22px 24px;
  }
  .entry-screen__city {
    font: 500 13px/1 var(--head);
  }
  .entry-screen__word {
    font:
      400 48px/1.12 "Rubik Glitch",
      var(--display);
  }
  .entry-screen__mark {
    width: 130px;
  }
  .beat__title,
  .arrival__lede {
    font-size: 32px;
  }
  .sec__title {
    font-size: 30px;
  }
  .card__title {
    font-size: 24px;
  }
  .beat {
    bottom: 100px;
  }
}
@media (max-width: 699px) {
  .entry-screen__mark {
    width: 154px;
  }
  .is-economy .bar,
  .is-economy .player {
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
  .is-basic .sec {
    padding: 90px var(--gutter) 24px;
  }
  .is-basic .beat {
    max-width: 100%;
  }
}
@media (max-height: 740px) {
  .entry-screen__mark {
    width: 125px;
  }
}
@media (max-height: 620px) and (max-width: 699px) {
  .entry-screen__mark {
    width: 104px;
  }
  .entry-screen__eyebrow {
    font-size: 10px;
  }
}
@media (max-width: 360px) {
  .night .beat__title {
    font-size: 30px;
  }
  .night .beat__body {
    font-size: 14px;
    line-height: 1.5;
  }
  .entry-screen__enter {
    width: min(250px, 100%);
  }
}
