.bn-slide-deck {
  max-width: 1480px;
  margin-inline: auto;
  touch-action: pan-y pinch-zoom;
}
.bn-slide-deck > .bn-stage[hidden] { display: none; }
.bn-slide-deck img { -webkit-user-drag: none; user-select: none; }
.bn-slide-deck .hero.bn-stage { min-block-size: clamp(386px, 35vw, 520px); }
.bn-stage[data-event="hamburg"] h1 {
  font-size: clamp(48px, 6.3vw, 98px);
}
.bn-stage[data-event="hamburg"] h1 > span:first-child { display: block; }
.bn-stage[data-event="hamburg"] h1 > span:not(:first-child) { display: inline; }

/* The original panoramic artwork sits on a second, offset sheet of paper. */
.bn-stage[data-event="poznan"] {
  --poster-stock: #fff0bd;
  background: linear-gradient(115deg, #ffb507 10%, #ffca4f 100%);
  color: #211924;
}
.bn-stage[data-event="poznan"] .bn-live i { background: #714421; }
.bn-stage[data-event="poznan"] .primary {
  background: #211924;
  color: white;
}
.bn-stage[data-event="poznan"] .bn-hero-actions a:focus-visible { outline-color: #211924; }
.bn-stage[data-event="hamburg"] {
  --poster-stock: #ff8b9f;
  background: linear-gradient(112deg, #5f1027 8%, #941232 60%, #b4193d 100%);
}
.bn-stage[data-event="domiy-warsaw"] {
  --poster-stock: #efc453;
  background: #f7e9c7;
  color: #342a23;
}
.bn-stage[data-event="domiy-warsaw"] .bn-live i { background: #795c14; }
.bn-stage[data-event="domiy-warsaw"] .primary { background: #302a31; color: white; }
.bn-stage[data-event="domiy-warsaw"] .bn-hero-actions a:focus-visible { outline-color: #302a31; }
.bn-stage[data-event="shumei-wroclaw"] {
  --poster-stock: #b4cf83;
  background: #123720;
}
.bn-stage[data-event="nariman-warsaw"] {
  --poster-stock: #95dcea;
  background: linear-gradient(115deg,#301440,#682e72);
}
.bn-stage[data-event="timati-poznan"] {
  --poster-stock: #b7e251;
  background: linear-gradient(115deg,#172420,#354339);
}
.bn-stage[data-event="kirkorov-wroclaw"] {
  --poster-stock: #efc586;
  background: linear-gradient(115deg,#34172a,#6a2944);
}
.bn-stage[data-event="zakhar-krakow"] {
  --poster-stock: #e4a65a;
  background: linear-gradient(115deg,#182642,#284979);
}
.bn-tour-art {
  display: grid;
  align-content: center;
  justify-items: end;
  gap: 14px;
  padding: 26px clamp(28px, 3.7vw, 62px) 26px 12px;
  isolation: isolate;
}
.bn-tour-art .bn-motif {
  inset: -15% -12% -20% 16%;
  width: auto;
  z-index: -1;
  opacity: .14;
}
.bn-tour-poster {
  position: relative;
  width: 100%;
  margin: 0;
  isolation: isolate;
}
.bn-tour-poster::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--poster-stock);
  border-radius: 8px;
  transform: translate(3px, 5px) rotate(2deg);
}
.bn-tour-poster > img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  border-radius: 8px;
}
.bn-tour-art .bn-date-sticker {
  position: relative;
  inset: auto;
  display: inline-flex;
  align-items: baseline;
  gap: .35em;
  min-width: 0;
  padding: 6px 11px;
  border-radius: 7px;
  transform: rotate(-4deg);
  color: #202030;
  box-shadow: 0 2px 0 #161b3026;
}
.bn-tour-art .bn-date-sticker b { font-size: clamp(23px, 2.2vw, 36px); }
.bn-tour-art .bn-date-sticker span { margin: 0; color: inherit; font-size: 11px; }

.bn-carousel-bar {
  max-width: 1480px;
  margin: 0 auto;
  padding: 6px clamp(5px, 1.2vw, 20px) 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.bn-slide-dots,
.bn-slide-tools {
  display: flex;
  align-items: center;
}
.bn-slide-dots { max-width:100%; flex-wrap:wrap; }
.bn-slide-tools { margin-inline-start:auto; }
.bn-carousel-bar button {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #192b56;
  cursor: pointer;
}
.bn-slide-dots button::after {
  content: "";
  width: 29px;
  height: 5px;
  border-radius: 6px;
  background: #aab1c2;
  transform: scaleX(.48);
}
.bn-slide-dots button[aria-current="true"]::after {
  background: var(--blue);
  transform: scaleX(1);
}
.bn-slide-tools { gap: 4px; }
.bn-slide-tools button { border: 1px solid #d5dce9; }
.bn-slide-tools .ico { width: 19px; height: 19px; }
.bn-slide-tools .bn-carousel-toggle { border-color: transparent; }
.bn-carousel-toggle::after {
  content: "";
  display: block;
  box-sizing: border-box;
  width: 9px;
  height: 12px;
  border-inline: 3px solid currentColor;
}
.bn-carousel-toggle[data-paused]::after {
  width: 0;
  height: 0;
  margin-left: 2px;
  border: solid transparent;
  border-width: 6px 0 6px 9px;
  border-left-color: currentColor;
}
@media (hover: hover) {
  .bn-slide-tools button:hover { background: #edf2ff; color: var(--blue); }
  .bn-slide-dots button:hover::after { background: var(--blue); }
  .bn-stage[data-event="poznan"] .primary:hover { background: #3b2c37; }
}

@media (max-width: 700px) {
  .bn-slide-deck .hero.bn-stage { min-block-size: 0; }
  .bn-slide-deck .bn-stage .bn-scene {
    height: clamp(220px, 58vw, 300px);
    min-height: 0;
  }
  .bn-tour-art {
    grid-template-rows: minmax(0, 1fr) auto;
    align-items: center;
    justify-items: center;
    padding: 15px 19px 1px;
    gap: 7px;
  }
  .bn-tour-art .bn-motif { inset: -10% -15% 0 5%; }
  .bn-tour-poster {
    width: fit-content;
    max-width: 100%;
    max-height: 100%;
    min-height: 0;
    display: flex;
  }
  .bn-tour-poster > img { width: auto; max-width: 100%; max-height: 100%; }
  .bn-tour-art .bn-date-sticker { justify-self: end; padding: 3px 8px; }
  .bn-tour-art .bn-date-sticker b { font-size: 21px; }
  .bn-tour-art .bn-date-sticker span { font-size: 10px; }
  .bn-slide-deck .bn-intro { padding-block: 16px 21px; }
  .bn-slide-deck .bn-stage h1 {
    font-size: clamp(35px, 8vw, 48px);
    line-height: .99;
    min-block-size: 1.98em;
    margin-block: 9px 10px;
  }
  .bn-slide-deck .bn-stage h1 > span:first-child { display: block; }
  .bn-slide-deck .bn-hero-actions { margin-top: 13px; }
  .bn-carousel-bar { padding: 4px 2px 0; }
}
@media (max-width: 400px) {
  .bn-slide-dots button { width: clamp(26px, 7.6vw, 30px); }
  .bn-slide-dots button::after { width: 22px; }
}
@media (max-width: 430px) {
  .bn-slide-deck .bn-hero-actions {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
    align-items: center;
    gap: 10px;
  }
  .bn-slide-deck .bn-hero-actions a {
    min-width: 0;
    min-height: 48px;
    line-height: 1.15;
    white-space: normal;
  }
  .bn-slide-deck .bn-hero-actions .primary { padding: 6px 10px; gap: 6px; }
  .bn-slide-deck .bn-hero-actions .ico { flex-shrink: 0; }
}
@media (prefers-reduced-motion: no-preference) {
  .bn-spotlight { --slide-entry: 18px; }
  .bn-spotlight[data-direction="prev"] { --slide-entry: -18px; }
  .bn-stage.is-current .bn-scene { animation: bn-arrive-slide .43s cubic-bezier(.2,.74,.18,1); }
  .bn-stage.is-current .bn-intro { animation: bn-arrive-copy .35s ease-out; }
  .bn-tour-art .bn-date-sticker { animation: none; }
  .bn-slide-dots button::after { transition: transform .22s ease-out; }
  .bn-slide-tools button:active { transform: scale(.94); }
  @keyframes bn-arrive-slide { from { opacity: .62; transform: translateX(var(--slide-entry)); } }
  @keyframes bn-arrive-copy { from { opacity: .82; transform: translateX(calc(var(--slide-entry) * .45)); } }
}
