   /* =============================================
           GLOBAL OVERRIDES
        ============================================= */
        *, *::before, *::after { box-sizing: border-box; }

        body {
            font-family: 'Plus Jakarta Sans', sans-serif;
            background: #f5f6f8;
        }

        /* =============================================
           CAROUSEL HEADER
        ============================================= */
        .carousel-header {
            position: relative;
        }

        .carousel-header .carousel-item img {
            width: 100%;
            height: 480px;
            object-fit: cover;
        }

        .carousel-header::after {
            content: '';
            position: absolute;
            inset: 0;
            background: linear-gradient(to bottom, rgba(0,0,0,0.25) 0%, rgba(0,0,0,0.55) 100%);
            pointer-events: none;
        }

        /* =============================================
           SEARCH FILTER BAR
        ============================================= */
        .search-section {
            background: #fff;
            box-shadow: 0 4px 24px rgba(0,0,0,0.08);
            padding: 0;
            margin-top: -2px;
            position: relative;
            z-index: 10;
        }

        .search-inner {
            max-width: 1100px;
            margin: 0 auto;
            padding: 1.25rem 1.5rem;
            display: flex;
            align-items: center;
            gap: 1rem;
            flex-wrap: wrap;
        }

        .search-inner .search-label {
            font-size: 12px;
            font-weight: 600;
            color: #888;
            text-transform: uppercase;
            letter-spacing: 0.08em;
            white-space: nowrap;
        }

        .search-inner select,
        .search-inner input[type="search"] {
            font-family: 'Plus Jakarta Sans', sans-serif;
            font-size: 14px;
            border: 1.5px solid #e5e7eb;
            border-radius: 10px;
            padding: 10px 14px;
            background: #fafafa;
            color: #1a1a2e;
            outline: none;
            transition: border-color 0.2s;
        }

        .search-inner select:focus,
        .search-inner input[type="search"]:focus {
            border-color: #0F6E56;
            background: #fff;
        }

        .search-inner select { min-width: 180px; }
        .search-inner input[type="search"] { flex: 1; min-width: 220px; }

        .search-inner .btn-search {
            font-family: 'Plus Jakarta Sans', sans-serif;
            font-size: 14px;
            font-weight: 600;
            padding: 10px 28px;
            border-radius: 10px;
            background: #0F6E56;
            color: #fff;
            border: none;
            cursor: pointer;
            transition: background 0.2s;
            white-space: nowrap;
        }

        .search-inner .btn-search:hover { background: #085041; }

        /* =============================================
           AVAILABLE REVIEW CENTERS SECTION
        ============================================= */
        .bk-section {
            max-width: 1100px;
            margin: 0 auto;
            padding: 3.5rem 1.5rem 5rem;
        }

        .bk-section-header {
            display: flex;
            align-items: flex-end;
            justify-content: space-between;
            flex-wrap: wrap;
            gap: 1rem;
            margin-bottom: 2rem;
        }

        .bk-section-header-left h2 {
            font-family: 'DM Serif Display', serif;
            font-size: clamp(26px, 4vw, 38px);
            font-weight: 400;
            color: #1a1a2e;
            margin: 0 0 4px;
            line-height: 1.2;
        }

        .bk-section-header-left p {
            font-size: 14px;
            color: #6b7280;
            margin: 0;
        }

        .bk-legend {
            display: flex;
            align-items: center;
            gap: 14px;
            flex-wrap: wrap;
        }

        .bk-legend-item {
            display: flex;
            align-items: center;
            gap: 5px;
            font-size: 12px;
            color: #6b7280;
        }

        .bk-legend-dot {
            width: 8px;
            height: 8px;
            border-radius: 50%;
        }

        /* Filter chips */
        .bk-filters {
            display: flex;
            gap: 8px;
            flex-wrap: wrap;
            margin-bottom: 1.25rem;
        }

        .bk-chip {
            font-family: 'Plus Jakarta Sans', sans-serif;
            font-size: 12px;
            font-weight: 600;
            padding: 7px 16px;
            border-radius: 50px;
            border: 1.5px solid #e5e7eb;
            background: #fff;
            color: #6b7280;
            cursor: pointer;
            transition: all 0.18s;
            white-space: nowrap;
        }

        .bk-chip.active {
            background: #0F6E56;
            color: #fff;
            border-color: #0F6E56;
        }

        .bk-chip:hover:not(.active) {
            background: #f0faf6;
            border-color: #0F6E56;
            color: #0F6E56;
        }

        /* Count */
        .bk-count {
            font-size: 13px;
            color: #6b7280;
            margin-bottom: 1.25rem;
        }

        .bk-count strong { color: #1a1a2e; font-weight: 600; }

        /* Grid */
        .bk-grid {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(310px, 1fr));
            gap: 1.25rem;
        }

        /* Card */
        .bk-card {
            background: #fff;
            border-radius: 16px;
            overflow: hidden;
            border: 1.5px solid #e9edf2;
            transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
        }

        .bk-card:hover {
            transform: translateY(-4px);
            box-shadow: 0 12px 40px rgba(0,0,0,0.10);
            border-color: #c7dfd8;
        }

        /* Card image area */
        .bk-card-thumb {
            position: relative;
            height: 140px;
            display: flex;
            align-items: center;
            justify-content: center;
            overflow: hidden;
        }

        .bk-card-thumb svg {
            position: relative;
            z-index: 1;
        }

        /* Badge */
        .bk-badge {
            position: absolute;
            top: 12px;
            left: 12px;
            font-size: 10px;
            font-weight: 700;
            padding: 4px 11px;
            border-radius: 50px;
            letter-spacing: 0.06em;
            text-transform: uppercase;
            z-index: 2;
        }

        .bk-badge.open    { background: #dcfce7; color: #166534; }
        .bk-badge.filling { background: #fef3c7; color: #92400e; }
        .bk-badge.full    { background: #fee2e2; color: #991b1b; }

        /* Card mode badge */
        .bk-mode-badge {
            position: absolute;
            top: 12px;
            right: 12px;
            font-size: 10px;
            font-weight: 600;
            padding: 4px 10px;
            border-radius: 50px;
            background: rgba(255,255,255,0.85);
            color: #374151;
            z-index: 2;
            backdrop-filter: blur(4px);
        }

        /* Card body */
        .bk-card-body {
            padding: 1.1rem 1.25rem 0.75rem;
        }

        .bk-card-type {
            font-size: 10px;
            font-weight: 700;
            letter-spacing: 0.1em;
            text-transform: uppercase;
            color: #9ca3af;
            margin-bottom: 4px;
        }

        .bk-card-name {
            font-size: 16px;
            font-weight: 700;
            color: #1a1a2e;
            margin-bottom: 10px;
            line-height: 1.35;
        }

        .bk-card-meta {
            display: flex;
            flex-direction: column;
            gap: 5px;
            margin-bottom: 14px;
        }

        .bk-card-meta-row {
            display: flex;
            align-items: center;
            gap: 7px;
            font-size: 12.5px;
            color: #6b7280;
        }

        .bk-card-meta-row i {
            font-size: 13px;
            color: #9ca3af;
            width: 14px;
            flex-shrink: 0;
        }

        /* Seats bar */
        .bk-seats {
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .bk-seats-bar {
            flex: 1;
            height: 6px;
            background: #f3f4f6;
            border-radius: 10px;
            overflow: hidden;
        }

        .bk-seats-fill {
            height: 100%;
            border-radius: 10px;
            transition: width 0.5s ease;
        }

        .bk-seats-text {
            font-size: 11px;
            font-weight: 600;
            color: #6b7280;
            white-space: nowrap;
        }

        /* Card footer */
        .bk-card-footer {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 0.85rem 1.25rem;
            border-top: 1.5px solid #f3f4f6;
            margin-top: 0.85rem;
        }

        .bk-price {
            display: flex;
            flex-direction: column;
        }

        .bk-price-amount {
            font-size: 20px;
            font-weight: 700;
            color: #1a1a2e;
            line-height: 1;
        }

        .bk-price-label {
            font-size: 11px;
            color: #9ca3af;
            margin-top: 2px;
        }

        .bk-btn {
            font-family: 'Plus Jakarta Sans', sans-serif;
            font-size: 13px;
            font-weight: 600;
            padding: 9px 20px;
            border-radius: 50px;
            border: none;
            cursor: pointer;
            transition: all 0.18s;
        }

        .bk-btn.open {
            background: #0F6E56;
            color: #fff;
        }

        .bk-btn.open:hover { background: #085041; }

        .bk-btn.filling {
            background: #d97706;
            color: #fff;
        }

        .bk-btn.filling:hover { background: #b45309; }

        .bk-btn.full {
            background: #f3f4f6;
            color: #9ca3af;
            cursor: not-allowed;
        }

        /* Empty state */
        .bk-empty {
            display: none;
            text-align: center;
            padding: 4rem 1rem;
            color: #9ca3af;
        }

        .bk-empty i { font-size: 42px; margin-bottom: 1rem; display: block; }
        .bk-empty p { font-size: 15px; margin: 0; }

        /* =============================================
           RESPONSIVE
        ============================================= */
        @media (max-width: 768px) {
            .bk-section { padding: 2rem 1rem 3rem; }
            .bk-grid { grid-template-columns: 1fr; }
            .search-inner { flex-direction: column; align-items: stretch; }
            .search-inner select,
            .search-inner input[type="search"] { width: 100%; }
            .bk-section-header { flex-direction: column; align-items: flex-start; }
        }

        @media (max-width: 480px) {
            .bk-filters { gap: 6px; }
            .bk-chip { font-size: 11px; padding: 6px 12px; }
        }