.hero--booking {
  padding-top: var(--space-80);
}

.hero__layout--booking {
  align-items: center;
}

.hero__visual-frame--booking {
  padding: 0;
}

.hero-booking-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: var(--radius-xl);
}

.booking-form {
  position: relative;
}

.booking-steps {
  display: flex;
  flex-direction: column;
  gap: var(--space-12);
  font-size: var(--font-size-sm);
}

.booking-list,
.booking-prep-list,
.booking-schedule-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
  font-size: var(--font-size-sm);
}

.booking-consent {
  display: flex;
  align-items: flex-start;
  gap: var(--space-8);
  font-size: var(--font-size-xs);
}

.booking-consent input[type="checkbox"] {
  margin-top: 0.2rem;
}

.booking-submit {
  width: 100%;
}

.booking-helper-final {
  font-size: var(--font-size-xs);
}

.prep-image-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
}

.prep-image-frame {
  width: 100%;
  border-radius: var(--radius-xl);
  overflow: hidden;
  box-shadow: var(--shadow-md);
  border: 1px solid var(--color-border-strong);
}

.prep-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.booking-offer-grid,
.booking-schedule-grid,
.booking-faq-security-grid {
  gap: var(--space-32);
}

@media (max-width: 900px) {
  .hero--booking {
    padding-top: var(--space-64);
  }

  .booking-submit {
    width: 100%;
  }

  .booking-consent {
    align-items: center;
  }
}

@media (max-width: 640px) {
  .booking-consent {
    flex-direction: row;
  }
}
