.booking-preview {
  margin: 0 auto;
  border: 1px solid var(--border-card);
  border-radius: var(--radius-lg);
  overflow: hidden;
}
.booking-preview img { display: block; width: 100%; height: auto; }
.booking-service .case-feature h3 { margin-top: 0; }
.booking-faq h2, .booking-contact h2 {
  font-size: clamp(26px, 3vw, 36px);
  line-height: 1.2;
  letter-spacing: -.035em;
  margin-bottom: 20px;
}
.booking-faq details { border-bottom: 1px solid var(--border-card); }
.booking-faq summary {
  padding: 16px 4px;
  cursor: pointer;
  font-weight: 600;
}
.booking-faq summary::marker { color: var(--gold); }
.booking-faq p {
  margin-bottom: 16px;
  color: var(--text-muted);
  font-size: 14px;
  line-height: 1.8;
}
.booking-contact { align-self: start; }
.booking-contact p + p { margin-top: 1em; }
