.booking-schedule-main { display: flex; flex-direction: column; gap: var(--space-5); }

.hero-cell { max-width: 640px; margin: 0 auto; text-align: center; display: flex; flex-direction: column; gap: var(--space-3); }
.status-key { display: flex; flex-wrap: wrap; gap: var(--space-2); justify-content: center; font-size: var(--fs-sm); }

.week-grid { display: grid; grid-template-columns: repeat(7, minmax(0,1fr)); gap: var(--space-3); }
.day-cell { display: flex; flex-direction: column; gap: var(--space-2); }

.schedule-table th, .schedule-table td { white-space: nowrap; }

.format-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: var(--space-3); }
.format-cell { display: flex; flex-direction: column; gap: var(--space-2); }

.capacity-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: var(--space-3); }
.capacity-cell { display: flex; flex-direction: column; gap: var(--space-2); }

.status-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: var(--space-3); }
.status-cell { display: flex; flex-direction: column; gap: var(--space-2); }

.process-row { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: var(--space-3); }
.step { display: flex; flex-direction: column; gap: var(--space-2); }

.feature-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: var(--space-3); }

.cta-container { display: flex; justify-content: center; }
.cta-box { max-width: 520px; text-align: center; display: flex; flex-direction: column; gap: var(--space-3); }

.notes { font-size: var(--fs-sm); }

@media (max-width: 900px) {
  .week-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .format-grid, .capacity-grid, .status-grid, .process-row, .feature-grid { grid-template-columns: 1fr; }
}
