@media (max-width: 1024px) {
    .form-content {
        flex-direction: column-reverse;
    }

    .order-summary {
        width: 100%;
        position: static;
        margin-bottom: 30px;
    }
}

@media (max-width: 768px) {
    .payment{display:block;}
    .payment label{width:100%;margin-bottom:15px;}
    .progress-line{top:14px;}
        .booking-box{
         	padding: 15px 15px;
        }
        .map-box {
          border-top-right-radius:0;
          border-bottom-left-radius: 25px;
          border-bottom-right-radius: 25px;
        }
        .address-dropdown button{
            padding: 5px 0;
        }
        .seat-options{gap:5px;}
        .card{padding:15px 10px;}
        .seat-options .seat-card{padding:10px 5px;}
        .seat-options .title{font-size:12px;}
        .seat-options .desc{font-size:10px;}
    .progress-bar {
        margin-bottom: 40px;
    }

    .progress-circle {
        width: 32px;
        height: 32px;
        font-size: 13px;
    }

    .progress-label {
        font-size: 11px;
    }

    .form-section {
        padding: 30px 20px;
    }

    .order-summary {
        padding: 25px 20px;
    }

    .section-title {
        font-size: 13px;
    }

    .summary-title {
        font-size: 18px;
        margin-bottom: 25px;
    }

    .form-row {
        grid-template-columns: 1fr;
        gap: 15px;
    }

    .button-group {
        flex-direction: column;
    }

    .btn {
        width: 100%;
        padding: 14px 24px;
    }

    .summary-item {
        padding: 15px;
    }

    .item-name {
        font-size: 13px;
        padding-right: 20px;
    }

    .remove-item {
        width: 20px;
        height: 20px;
        font-size: 14px;
        top: 12px;
        right: 12px;
    }
}

@media (max-width: 480px) {
    .progress-bar {
        margin-bottom: 0px;
    }

    .progress-step {
        flex: 1;
        min-width: 0;
    }

    .progress-circle {
        width: 28px;
        height: 28px;
        font-size: 12px;
        margin-bottom: 8px;
    }

    .progress-label {
        font-size: 9px;
        line-height: 1.2;
    }

    .form-section {
        padding: 25px 15px;
        border-radius: 8px;
    }

    .order-summary {
        padding: 20px 15px;
        border-radius: 8px;
    }

    .section-title {
        font-size: 12px;
        margin-bottom: 20px;
    }

    .summary-title {
        font-size: 16px;
        margin-bottom: 20px;
    }

    .question {
        font-size: 14px;
    }

    .radio-options {
        gap: 15px;
    }

    .info-text {
        font-size: 12px;
    }

    .no-code-link {
        padding: 12px 0;
        font-size: 12px;
    }

    .btn {
        padding: 12px 20px;
        font-size: 13px;
    }

    .summary-item {
        padding: 12px;
    }

    .item-name {
        font-size: 12px;
    }

    .item-level {
        font-size: 10px;
        padding: 3px 10px;
    }

    .item-price {
        font-size: 14px;
    }

    .summary-row {
        font-size: 13px;
    }

    .summary-row.total {
        font-size: 16px;
    }

    .shipping-note {
        display: block;
        margin-left: 0;
        margin-top: 2px;
    }
}

@media (max-width: 360px) {
    .progress-label {
        font-size: 8px;
    }

    .progress-circle {
        width: 24px;
        height: 24px;
        font-size: 11px;
    }

    .form-section,
    .order-summary {
        padding: 20px 12px;
    }
}