/* Booking page styles */
.hero { padding: var(--space-12) 0 var(--space-6); }
.hero-inner p { color: var(--color-muted); }

.booking-grid { display: grid; grid-template-columns: 1.6fr 1fr; gap: var(--space-8); margin-bottom: var(--space-10); }
@media (max-width: 980px) { .booking-grid { grid-template-columns: 1fr; } }

.booking-form .form-step + .form-step { margin-top: var(--space-8); }
.form-step > legend { font-size: var(--font-size-xl); margin-bottom: var(--space-3); }
.muted { color: var(--color-muted); margin-bottom: var(--space-4); }
.help-text { color: var(--color-gray-600); font-size: var(--font-size-xs); display: inline-block; margin-top: var(--space-2); }

.grid-2 { display: grid; gap: var(--space-6); grid-template-columns: repeat(2, 1fr); }
@media (max-width: 720px) { .grid-2 { grid-template-columns: 1fr; } }

.payment-options { display: grid; grid-template-columns: repeat(2, minmax(160px, 1fr)); gap: var(--space-4); margin-bottom: var(--space-4); }
.radio-item { display: flex; align-items: center; gap: var(--space-2); }
.ideal-bank { margin-top: var(--space-2); }

.terms { display: flex; align-items: flex-start; gap: var(--space-3); margin-top: var(--space-4); }
.terms label a { text-decoration: underline; }

.actions { display: flex; gap: var(--space-3); margin-top: var(--space-6); }

.booking-summary { position: sticky; top: 90px; height: fit-content; }
.summary-list { display: grid; gap: var(--space-3); }
.summary-list .row { display: flex; justify-content: space-between; gap: var(--space-4); }
.summary-list dt { color: var(--color-muted); }
.summary-list dd { margin: 0; font-weight: 500; }
.prices { display: grid; gap: var(--space-3); }
.price-line { display: flex; justify-content: space-between; align-items: baseline; }
.price-line.muted { color: var(--color-muted); }
.price-line.total { font-size: var(--font-size-lg); border-top: 1px solid var(--color-border); padding-top: var(--space-3); }
.secure-note { color: var(--color-muted); font-size: var(--font-size-sm); margin-top: var(--space-3); }

.confirmation { margin-top: var(--space-10); }
.confirmation-details { margin-top: var(--space-4); }
.confirmation-actions { display: flex; gap: var(--space-3); margin-top: var(--space-6); }

.policy-support { margin-bottom: var(--space-12); }
.support-cta { display: flex; gap: var(--space-3); margin-top: var(--space-4); }
