.hero--rb {
  position: relative;
}
.hero-inner--rb {
  align-items: stretch;
}
.hero-copy {
  position: relative;
  z-index: 1;
  max-width: 34rem;
}
.hero-media--rb {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--space-lg);
}
.hero-title--rb {
  background: linear-gradient(135deg, #f97373, #fecaca);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.hero-meta--rb {
  margin-top: var(--space-lg);
}
.hero-image-frame {
  max-width: 32rem;
  margin-left: auto;
}
.hero-image {
  object-fit: cover;
}
.ticket-card--rb {
  margin-bottom: var(--space-lg);
}
.ticket-main-copy {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}
.ticket-kicker {
  font-size: var(--text-xs);
  letter-spacing: var(--tracking-wide);
  text-transform: uppercase;
  color: var(--color-text-muted);
}
.ticket-title {
  font-family: var(--font-display);
  font-size: var(--text-2xl);
  letter-spacing: var(--tracking-tight);
}
.ticket-subtitle {
  color: var(--color-text-soft);
}
.ticket-list {
  list-style: none;
  padding-left: 0;
  margin: var(--space-sm) 0 0;
}
.ticket-list li + li {
  margin-top: 0.25rem;
}
.rb-intro-footer {
  margin-top: var(--space-xl);
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-md);
  align-items: center;
  justify-content: space-between;
}
.rb-oprawa-grid {
  align-items: center;
}
.rb-oprawa-copy,
.rb-oprawa-media,
.rb-scenario-copy,
.rb-scenario-media,
.rb-audience-grid,
.rb-audience-cta,
.section--rb-summary .card {
  min-width: 0;
}
.rb-list {
  margin: 0 0 var(--space-md);
  padding-left: 1.1rem;
}
.rb-list li {
  position: relative;
}
.rb-oprawa-highlight {
  margin-top: var(--space-lg);
}
.rb-oprawa-note {
  max-width: 30rem;
}
.rb-scenario-card {
  margin-top: var(--space-md);
}
.rb-steps {
  margin: 0;
  padding-left: 1.25rem;
  counter-reset: rb-step;
}
.rb-steps li {
  margin-bottom: var(--space-lg);
}
.rb-steps h3 {
  font-size: var(--text-lg);
  margin-bottom: var(--space-xs);
}
.rb-steps p {
  margin: 0;
}
.rb-audience-grid {
  margin-top: var(--space-xl);
}
.rb-audience-card .rb-list {
  padding-left: 1.1rem;
}
.rb-audience-cta {
  margin-top: var(--space-2xl);
}
.rb-audience-cta-inner {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1.4fr);
  gap: var(--space-xl);
  align-items: center;
  padding: var(--space-xl);
  border-radius: var(--radius-card);
  background: radial-gradient(circle at top, rgba(248, 113, 113, 0.25), transparent 60%), var(--color-bg-glass);
  border: 1px solid var(--color-border-accent);
  box-shadow: var(--shadow-elevated), var(--shadow-glow-red);
  backdrop-filter: blur(var(--blur-glass-soft));
  -webkit-backdrop-filter: blur(var(--blur-glass-soft));
}
.rb-audience-cta-title {
  font-family: var(--font-display);
  font-size: var(--text-2xl);
  letter-spacing: var(--tracking-tight);
}
.rb-audience-cta-text {
  color: var(--color-text-soft);
}
.rb-audience-cta-actions {
  justify-content: flex-end;
}
.section--rb-summary .card {
  max-width: var(--container-md);
  margin-inline: auto;
}
.section--rb-intro .card,
.section--rb-oprawa .card,
.section--rb-scenario .card,
.section--rb-audience .card,
.section--rb-summary .card {
  border-radius: 1.5rem;
}
@media (max-width: 1023.98px) {
  .hero-inner--rb {
    gap: var(--space-xl);
  }
  .hero-media--rb {
    max-width: 32rem;
    margin-inline: auto;
  }
}
@media (max-width: 899.98px) {
  .rb-audience-cta-inner {
    grid-template-columns: minmax(0, 1fr);
  }
  .rb-audience-cta-actions {
    justify-content: flex-start;
  }
}
@media (max-width: 767.98px) {
  .hero {
    padding-block: var(--space-3xl);
  }
  .hero-image-frame {
    max-width: 100%;
  }
  .ticket-card--rb {
    margin-bottom: var(--space-md);
  }
  .rb-intro-footer {
    flex-direction: column;
    align-items: flex-start;
  }
  .rb-audience-cta-inner {
    padding: var(--space-lg);
  }
}
@media (max-width: 479.98px) {
  .section {
    padding-block: var(--space-2xl);
  }
  .rb-steps li {
    margin-bottom: var(--space-md);
  }
}
.fade-in-up[data-animate],
.fade-in[data-animate],
.scale-in[data-animate] {
  will-change: transform, opacity;
}
