/* ═══════════════════════════════════════════════════════════════
    BIHAR KHEL SEWA — RESPONSIVE STYLES
    custom.responsive.css · Breakpoints for tablet and mobile
═══════════════════════════════════════════════════════════════ */

/* ─── LARGE TABLET / SMALL LAPTOP (≤ 1200px) ─── */
@media (max-width: 1200px) {
    .bks-hero {
        padding: 100px 36px 64px;
    }

    .bks-hero-visual {
        display: none;
    }

    .bks-hero-content {
        max-width: 100%;
    }

    .bks-nav {
        padding: 0 32px;
    }

    .bks-sport-strip,
    .bks-browse-section,
    .bks-facilities-section,
    .bks-how-section,
    .bks-features-section,
    .bks-trust-section,
    .bks-districts-section,
    .bks-footer {
        padding-left: 32px;
        padding-right: 32px;
    }

    .bks-filter-bar {
        padding-left: 32px;
        padding-right: 32px;
    }

    .bks-browse-hero {
        padding-left: 32px;
        padding-right: 32px;
    }

    .bks-results-section {
        padding-left: 32px;
        padding-right: 32px;
    }

    .bks-auth-right {
        padding: 40px 36px;
    }

    .bks-footer-top {
        grid-template-columns: repeat(2, 1fr);
        gap: 36px;
    }

    .bks-features-strip {
        grid-template-columns: repeat(2, 1fr);
    }

    .bks-testimonials-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .bks-steps {
        grid-template-columns: repeat(2, 1fr);
        gap: 48px;
    }

    .bks-steps::before {
        display: none;
    }
}

/* ─── TABLET (≤ 1024px) ─── */
@media (max-width: 1024px) {
    .bks-nav {
        padding: 0 24px;
    }

    .bks-nav-links {
        display: none;
    }

    .bks-nav-search {
        max-width: 260px;
    }

    .bks-hamburger {
        display: flex;
    }

    .bks-hero {
        padding: 100px 24px 60px;
    }

    .bks-hero-title {
        letter-spacing: -1.5px;
    }

    .bks-filter-grid {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }

    .bks-filter-grid .btn-filter {
        grid-column: 1 / -1;
    }

    .bks-sports-grid {
        grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
    }

    .fsd-content {
        grid-template-columns: 1fr;
    }

    .fsd-sidebar {
        position: static;
    }

    .fsd-book-card {
        max-width: 480px;
    }
}

/* ─── MOBILE (≤ 768px) ─── */
@media (max-width: 768px) {

    /* Nav */
    .bks-nav {
        padding: 0 18px;
        height: 60px;
    }

    .bks-nav-search {
        display: none;
    }

    .bks-user-name {
        display: none;
    }

    .bks-logo-sub {
        display: none;
    }

    .bks-mobile-menu {
        top: 60px;
    }

    /* Hero */
    .bks-hero {
        min-height: auto;
        padding: 90px 18px 56px;
        margin-top: 60px;
    }

    .bks-hero-title {
        font-size: 38px;
        letter-spacing: -1px;
    }

    .bks-hero-desc {
        font-size: 15px;
    }

    .bks-hero-actions {
        gap: 10px;
    }

    .btn-hero,
    .btn-hero-outline {
        padding: 12px 22px;
        font-size: 14px;
    }

    .bks-hero-stats {
        gap: 28px;
    }

    .bks-stat-num {
        font-size: 28px;
    }

    /* Sections */
    .bks-sport-strip,
    .bks-browse-section,
    .bks-facilities-section,
    .bks-how-section,
    .bks-features-section,
    .bks-trust-section,
    .bks-districts-section {
        padding-left: 18px;
        padding-right: 18px;
        padding-top: 56px;
        padding-bottom: 56px;
    }

    .bks-section-header {
        flex-direction: column;
        align-items: flex-start;
        margin-bottom: 28px;
    }

    /* Browse hero */
    .bks-browse-hero {
        padding: 56px 18px 36px;
        margin-top: 60px;
    }

    /* Filter bar */
    .bks-filter-bar {
        padding: 16px 18px;
        position: static;
    }

    .bks-filter-grid {
        grid-template-columns: 1fr;
    }

    /* Results */
    .bks-results-section {
        padding: 24px 18px;
    }

    .bks-view-toggle {
        display: none;
    }

    /* Facility grid */
    .bks-facility-grid {
        grid-template-columns: 1fr;
    }

    /* List view */
    .bks-facility-list-item {
        flex-direction: column;
    }

    .bks-facility-list-img {
        width: 100%;
        height: 180px;
    }

    /* Sport strip */
    .bks-strip-inner {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 6px;
        -webkit-overflow-scrolling: touch;
    }

    .bks-strip-label {
        display: none;
    }

    /* Sports grid */
    .bks-sports-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    /* How section */
    .bks-steps {
        grid-template-columns: 1fr;
        gap: 36px;
    }

    .bks-how-header {
        margin-bottom: 40px;
    }

    /* Features */
    .bks-features-section {
        padding-left: 18px;
        padding-right: 18px;
        padding-bottom: 56px;
    }

    .bks-features-strip {
        grid-template-columns: 1fr 1fr;
        padding: 28px 20px;
        gap: 20px;
    }

    /* Testimonials */
    .bks-testimonials-grid {
        grid-template-columns: 1fr;
    }

    /* Districts */
    .bks-districts-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    /* Footer */
    .bks-footer {
        padding: 48px 18px 28px;
    }

    .bks-footer-top {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .bks-footer-bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px;
    }

    .bks-footer-bottom-links {
        flex-wrap: wrap;
        gap: 14px;
    }

    /* Auth */
    .bks-auth-wrapper {
        grid-template-columns: 1fr;
        margin-top: 60px;
    }

    .bks-auth-left {
        display: none;
    }

    .bks-auth-right {
        padding: 36px 20px;
        min-height: calc(100vh - 60px);
    }

    /* Booking modal */
    .booking-modal-content {
        margin: 0;
        border-radius: 16px 16px 0 0;
        max-height: 92vh;
    }

    .booking-modal {
        align-items: flex-end;
        padding: 0;
    }

    /* Back to top */
    .bks-back-top {
        bottom: 18px;
        right: 18px;
    }

    /* Notice bar */
    .bks-notice-bar {
        height: 32px;
    }

    .bks-notice-label {
        font-size: 10px;
        padding: 2px 6px;
    }

    .fsd-gallery {
        padding: 24px 20px;
    }

    .fsd-gallery-main {
        height: 280px;
    }

    .fsd-content {
        padding: 24px 20px;
        gap: 20px;
    }

    .fsd-card {
        padding: 20px;
    }

    .fsd-hero-name {
        font-size: 1.8rem;
    }

    .fsd-book-card {
        max-width: 100%;
    }
}

/* ─── SMALL MOBILE (≤ 480px) ─── */
@media (max-width: 480px) {
    .bks-hero-title {
        font-size: 32px;
    }

    .bks-hero-badge {
        font-size: 10px;
        padding: 5px 11px;
    }

    .bks-hero-stats {
        gap: 20px;
    }

    .bks-stat-num {
        font-size: 24px;
    }

    .bks-stat-num .plus {
        font-size: 16px;
    }

    .bks-features-strip {
        grid-template-columns: 1fr;
    }

    .bks-sports-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .bks-districts-grid {
        grid-template-columns: 1fr;
    }

    .btn-hero {
        width: 100%;
        justify-content: center;
    }

    .btn-hero-outline {
        width: 100%;
        justify-content: center;
    }

    .bks-hero-actions {
        flex-direction: column;
    }

    .bks-auth-right {
        padding: 28px 16px;
    }

    .bks-auth-box {
        max-width: 100%;
    }

    .bks-filter-grid .bks-form-input,
    .bks-filter-grid .bks-form-select {
        font-size: 13px;
    }
}