/* Shared mobile polish for Central Clinic */
.mobile-quick-bar,
.mobile-sticky-cta {
    display: none;
}

@media (max-width: 991.98px) {
    .navbar.navbar-light {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
        padding-top: 0.65rem !important;
        padding-bottom: 0.65rem !important;
    }

    .navbar-brand h1 {
        font-size: 1.35rem !important;
    }

    .navbar .btn.btn-primary.py-2.px-4 {
        display: none !important;
    }

    .mobile-sticky-cta {
        display: flex;
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 1040;
        background: rgba(255, 255, 255, 0.96);
        backdrop-filter: blur(12px);
        -webkit-backdrop-filter: blur(12px);
        border-top: 1px solid rgba(15, 31, 46, 0.08);
        padding: 0.65rem 0.85rem calc(0.65rem + env(safe-area-inset-bottom));
        gap: 0.65rem;
        box-shadow: 0 -8px 24px rgba(9, 30, 62, 0.08);
    }

    .mobile-sticky-cta a {
        flex: 1;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 0.45rem;
        padding: 0.85rem 0.75rem;
        border-radius: 12px;
        font-family: 'Jost', sans-serif;
        font-weight: 600;
        font-size: 0.95rem;
        text-decoration: none;
        transition: background 0.2s ease, color 0.2s ease;
    }

    .mobile-sticky-cta .sticky-call {
        background: #152536;
        color: #fff;
    }

    .mobile-sticky-cta .sticky-book {
        background: #186A3B;
        color: #fff;
    }

    body {
        padding-bottom: 5.5rem;
    }

    .back-to-top {
        bottom: 5.75rem !important;
        right: 1rem !important;
    }

    .page-header {
        padding: 2.25rem 0 !important;
    }

    .page-header h1 {
        font-size: 1.75rem !important;
    }

    .container-fluid.py-5 {
        padding-top: 2.75rem !important;
        padding-bottom: 2.75rem !important;
    }

    .contact-info-box {
        min-height: 0 !important;
        padding: 1.5rem 1.25rem !important;
        border-radius: 14px !important;
    }

    .contact-info-box h4 {
        font-size: 1.1rem;
    }

    .map-wrapper iframe {
        min-height: 260px;
        border-radius: 14px;
    }

    /* Generic tab scroll only when not the services price tabs */
    .nav-tabs:not(#serviceTabs) {
        gap: 8px !important;
        justify-content: flex-start !important;
        overflow-x: auto;
        flex-wrap: nowrap !important;
        padding-bottom: 0.35rem;
        -webkit-overflow-scrolling: touch;
    }

    .nav-tabs:not(#serviceTabs) .nav-link {
        white-space: nowrap;
        padding: 0.65rem 1rem !important;
        font-size: 0.9rem !important;
    }

    .case-gallery {
        grid-template-columns: 1fr !important;
        gap: 1.25rem !important;
        padding: 0.5rem !important;
    }

    .case-item {
        border-radius: 14px !important;
    }

    .appointment-form {
        padding: 1.5rem !important;
        border-radius: 16px !important;
        margin: 0 0.5rem;
    }

    .form-title {
        font-size: 1.55rem !important;
    }
}
