.ra-booking-form{
  max-width: 720px;
  margin: 28px auto;
  background: #fff;
  border-radius: 16px;
  padding: 18px;
  box-shadow: 0 10px 24px rgba(0,0,0,.08);
}
.ra-booking-form h2{ margin-top: 0; }

.ra-camera-preview{ margin: 0 0 14px; }
.ra-camera-preview__card{
  display:flex; gap:12px; align-items:center;
  padding:12px;
  border:1px solid #e7e7e7;
  border-radius:14px;
  background:#fff;
  box-shadow:0 10px 24px rgba(0,0,0,.06);
}
.ra-camera-preview__img{
  width:84px; height:84px; object-fit:cover; border-radius:12px; flex:0 0 84px;
}
.ra-camera-preview__body{ min-width:0; }
.ra-camera-preview__title{
  font-weight:800; font-size:1.05rem; line-height:1.25; margin-bottom:4px;
}
.ra-camera-preview__meta{
  color:#555; line-height:1.55; font-size:.95rem;
}
.ra-camera-preview__summary{
  margin-top:6px; color:#333; font-size:.95rem;
}

.ra-bf-row{ margin: 12px 0; display:flex; flex-direction:column; gap:6px; }
.ra-bf-row input,
.ra-bf-row select{
  padding: 12px 14px;
  border: 1px solid #ddd;
  border-radius: 12px;
  font: inherit;
  min-height: 48px;
  line-height: 1.4;
  background:#fff;
  box-sizing:border-box;
}
.ra-bf-row select{
  padding-right: 40px;
  white-space: normal;
}
.ra-bf-row input::placeholder{ color:#98a2b3; opacity:1; }

.ra-bf-grid{ display:grid; gap:12px; grid-template-columns: 1fr 1fr; }
@media (max-width: 640px){
  .ra-bf-grid{ grid-template-columns: 1fr; }
  .ra-camera-preview__card{ align-items:flex-start; }
}
.ra-bf-note{ color:#666; font-size: 13px; margin-top:10px; }
