#gc-booking-wrapper { margin-top: 60px; padding: 40px; border: 1px solid #ddd; background: #fafafa; }
.booking-title { margin-bottom: 30px; text-align: center; }
.booking-row { display: flex; gap: 20px; margin-bottom: 20px; flex-wrap: wrap; }
.booking-field { flex: 1; }
.booking-field label { display: block; margin-bottom: 8px; font-weight: 600; }
.booking-checkbox { display: flex; align-items: center; gap: 8px; }
.booking-btn { background: #382f2d; color: #fff; border: 0; padding: 15px 40px; cursor: pointer; }
.booking-btn:hover { opacity: .9; }
#gc-booking-message { margin-top: 50px; font-size: 18px; }
.booking-success { margin-top: 50px; font-weight: 400; padding: 30px; background: #e7f8eb; color: #1b7a36; border: 1px solid #1b7a36; border-radius: 5px; }
.booking-success p {margin-bottom: 0.5rem;}
.booking-error { margin-top: 50px; padding: 15px; background: #fdeaea; color: #b30000; border: 1px solid #b30000; border-radius: 5px; }
#gc-enquiry-form { margin-top: 50px; /*padding: 30px; border: 1px solid #ddd; background: #fff; */ }
#gc-enquiry-result { margin-top: 20px; font-weight: 600; }
.booking-btn:disabled { opacity: .6; cursor: not-allowed; }
.gc-success { margin-top: 20px; padding: 15px; background: #d4edda; color: #155724; border: 1px solid #c3e6cb; border-radius: 5px; }
.gc-error { margin-top: 20px; padding: 15px; background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb; border-radius: 5px; }
.booking-confirmation { margin: 20px 0; }
.booking-confirmation label { display: flex; align-items: flex-start; gap: 12px; cursor: pointer; }
.booking-confirmation input { margin-top: 4px; width: 18px; height: 18px; flex-shrink: 0; }
.booking-confirmation span { line-height: 1.6; }


@media (max-width: 480px) {
    #gc-booking-wrapper {padding: 30px;}
    .booking-row {gap: 10px;}
    .booking-field { flex: 0 0 100%;}
    .booking-success {padding: 15px;}
}