@media (max-width: 960px) {
    .ss-booking-page .safety-booking-wrapper {
        flex-direction: column;
    }

    .ss-booking-page .safety-sidebar {
        width: 100%;
        max-width: 100%;
        flex: 1 1 100%;
    }

    .ss-booking-page .attendee-row,
    .ss-booking-page .participant-header-row {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .ss-booking-page .panel-body {
        padding: 18px;
    }
    
    /* Booking summary responsive styles */
    .ss-booking-page .ss-summary-hero {
        grid-template-columns: 1fr;
        padding: 24px;
    }
    
    .ss-booking-page .ss-summary-layout {
        flex-direction: column;
    }
    
    .ss-booking-page .ss-summary-sidebar {
        width: 100%;
        flex: 1 1 auto;
    }
    
    .ss-booking-page .ss-sticky {
        position: relative;
        top: auto;
    }
    
    .ss-booking-page .ss-dl-grid,
    .ss-booking-page .ss-split {
        grid-template-columns: 1fr;
    }
    
    .ss-booking-page .ss-info {
        grid-template-columns: 1fr;
        gap: 4px;
    }
}

@media (max-width: 768px) {
    .ss-booking-page .ss-tax-branch-row {
        grid-template-columns: 1fr;
    }

    .ss-booking-page .ss-address-grid {
        grid-template-columns: 1fr;
    }

    .ss-booking-page .ss-copy-address {
        border: none;
        padding: 0;
        background: transparent;
        color: #1f8c4a;
        text-decoration: underline;
    }

    .ss-booking-page .ss-hero-stats {
        display: none;
    }

    /* Mobile: stack form rows */
    .ss-booking-page .panel-body .form-row {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .ss-booking-page .panel-body .form-row > [class*="col-md-"] {
        grid-column: auto;
    }
    
    /* Booking summary mobile styles */
    .ss-booking-page .ss-summary-hero {
        padding: 20px;
    }
    
    .ss-booking-page .ss-card {
        padding: 18px;
        margin-bottom: 16px;
    }
    
    .ss-booking-page .ss-table-wrap {
        border-radius: 12px;
    }
    
    .ss-booking-page .ss-table thead th,
    .ss-booking-page .ss-table tbody td {
        padding: 10px 12px;
    }
}
