.hero-roulette {
  position: relative;
}

.hero-roulette__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  gap: var(--space-40);
  align-items: center;
}

.hero-roulette__content {
  max-width: 640px;
}

.hero-roulette__image-wrapper {
  position: relative;
  max-width: 480px;
  margin-left: auto;
}

.hero-roulette__image {
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-lg);
}

.hero-roulette__meta {
  margin-top: var(--space-24);
}

.hero-roulette__meta p {
  margin-top: var(--space-12);
}

.section {
  position: relative;
}

.section--what__bullets {
  margin-top: var(--space-24);
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--space-24);
}

.section--what__steps {
  display: flex;
  flex-direction: column;
  gap: var(--space-12);
  font-size: var(--text-sm);
}

.section--what__steps li {
  display: flex;
  gap: var(--space-12);
  align-items: flex-start;
  color: var(--color-text-muted);
}

.section--what__step-label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.8rem;
  height: 1.8rem;
  border-radius: var(--radius-full);
  background: var(--color-primary-soft);
  color: #fff;
  font-size: var(--text-xs);
  font-weight: 600;
}

.section--crew__features,
.section--table__points,
.section--scenography__themes,
.section--groups__list,
.section--rules__list,
.section--booking__list {
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
  font-size: var(--text-sm);
}

.section--crew__features li::before,
.section--table__points li::before,
.section--scenography__themes li::before,
.section--groups__list li::before,
.section--rules__list li::before,
.section--booking__list li::before {
  content: "\2022";
  color: var(--color-accent);
  margin-right: 0.4rem;
}

.section--table__image-wrapper,
.section--scenography__image-wrapper {
  max-width: 520px;
}

.section--table__image,
.section--scenography__image {
  border-radius: var(--radius-xl);
  box-shadow: var(--shadow-md);
}

.section--extras__inner {
  max-width: 1120px;
}

.section--extras__grid {
  margin-top: var(--space-32);
}

.section--testimonials__grid {
  gap: var(--space-24);
}

.section--testimonials__quote {
  font-size: var(--text-lg);
  color: var(--color-text);
  margin-bottom: var(--space-12);
}

.section--testimonials__author {
  font-size: var(--text-sm);
  color: var(--color-text-muted);
}

.section--booking__note {
  margin-top: var(--space-16);
  font-size: var(--text-xs);
}

.section--booking__note a {
  text-decoration: underline;
}

@media (max-width: 992px) {
  .hero-roulette__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .hero-roulette__image-wrapper {
    margin: 0 auto;
  }

  .section--what__bullets {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 768px) {
  .hero-roulette__meta {
    margin-top: var(--space-16);
  }

  .section--extras__grid,
  .section--testimonials__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}
