 .reservations-hero::before {
  background-image: url('/assets/images/reservations-hero.webp');
}

.reservations-steps-grid,
.reservations-packages-grid,
.reservations-time-grid,
.reservations-private-grid,
.reservations-poker-grid,
.reservations-preferences-grid,
.reservations-confirmation-grid,
.reservations-testimonials-grid,
.reservations-contact-grid {
  align-items: flex-start;
}

.reservations-list {
  margin-top: var(--space-12);
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
  font-size: var(--font-size-sm);
  color: var(--color-text-soft);
}

.reservations-list li::before {
  content: '\2022';
  margin-right: 0.5rem;
  color: var(--color-primary);
}

.reservations-ordered-list {
  margin-left: 1.25rem;
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
  font-size: var(--font-size-sm);
  color: var(--color-text-soft);
}

.reservations-ordered-list li::marker {
  color: var(--color-primary);
}

.reservations-private-image-wrapper {
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-soft);
}

.reservations-poker-icons {
  align-items: center;
}

.reservations-guarantee {
  margin-top: var(--space-16);
}

.reservations-support-image {
  margin-top: var(--space-24);
  border-radius: var(--radius-lg);
  overflow: hidden;
  box-shadow: var(--shadow-soft);
}

.reservations-form .label {
  display: flex;
  align-items: center;
  gap: var(--space-8);
}

.reservations-form input[type='checkbox'] {
  width: 16px;
  height: 16px;
}

.faq-item .faq-answer {
  display: none;
}

.faq-item.is-open .faq-answer {
  display: block;
}

.faq-item .faq-question span:last-child {
  transition: transform var(--transition-base);
}

.faq-item.is-open .faq-question span:last-child {
  transform: rotate(45deg);
}

@media (max-width: 900px) {
  .reservations-testimonials-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .reservations-hero {
    min-height: 80vh;
  }
}
