/*
 * Bareilly Taxi v1.0.5
 * Structural CSS. Uses IDs and high specificity because the site contains
 * older duplicate header CSS with different z-index values.
 */

@media (max-width:1050px) {

    /* Header row / hamburger */
    #masthead.bt-header .bt-header-row {
        display:flex !important;
        align-items:center !important;
        justify-content:space-between !important;
        width:100% !important;
    }

    #masthead.bt-header .bt-header-actions {
        margin-left:auto !important;
        display:flex !important;
        align-items:center !important;
        justify-content:flex-end !important;
        flex:0 0 46px !important;
        width:46px !important;
        min-width:46px !important;
    }

    #masthead.bt-header .bt-header-actions .bt-btn-call,
    #masthead.bt-header .bt-header-actions .bt-btn-whatsapp,
    #masthead.bt-header .bt-header-actions .bt-btn-book {
        display:none !important;
    }

    #masthead.bt-header .bt-menu-toggle {
        display:block !important;
        position:relative !important;
        width:44px !important;
        min-width:44px !important;
        height:42px !important;
        flex:0 0 44px !important;
        padding:0 !important;
        margin:0 !important;
        box-sizing:border-box !important;
        background:#fff !important;
        border:1px solid #dbe3ef !important;
        border-radius:10px !important;
        z-index:2147483646 !important;
        pointer-events:auto !important;
        touch-action:manipulation !important;
    }

    #masthead.bt-header .bt-menu-toggle span {
        display:none !important;
    }

    /* Yellow hamburger, three independent bars */
    #masthead.bt-header .bt-menu-toggle::before {
        content:"" !important;
        position:absolute !important;
        left:10px !important;
        top:10px !important;
        width:24px !important;
        height:3px !important;
        border-radius:3px !important;
        background:#f5b400 !important;
        box-shadow:0 7px 0 #f5b400, 0 14px 0 #f5b400 !important;
    }

    /*
     * Existing header source places the drawer INSIDE <header>.
     * Older header(4).css gives .bt-mobile-overlay z-index:10000 while
     * the original drawer has z-index:999. The overlay can therefore sit
     * above the drawer and make every link appear dead.
     *
     * These ID-specific rules put the drawer above ALL overlays.
     */
    #masthead.bt-header #bt-mobile-menu {
        position:fixed !important;
        top:0 !important;
        right:-110vw !important;
        left:auto !important;
        bottom:0 !important;
        width:360px !important;
        max-width:88vw !important;
        height:100vh !important;
        min-height:100vh !important;
        display:block !important;
        visibility:hidden !important;
        opacity:1 !important;
        overflow-y:auto !important;
        overflow-x:hidden !important;
        -webkit-overflow-scrolling:touch !important;
        pointer-events:none !important;
        transform:none !important;
        z-index:2147483645 !important;
        background:#fff !important;
        box-sizing:border-box !important;
        transition:right .25s ease,visibility 0s linear .25s !important;
    }

    body.bt-mobile-menu-open #masthead.bt-header #bt-mobile-menu {
        right:0 !important;
        visibility:visible !important;
        pointer-events:auto !important;
        z-index:2147483645 !important;
        transition:right .25s ease,visibility 0s linear 0s !important;
    }

    /* At phone width the drawer MUST cover the entire viewport. */
    #masthead.bt-header #bt-mobile-menu {
        width:100vw !important;
        max-width:100vw !important;
    }

    /* Overlay below drawer, above page */
    #masthead.bt-header .bt-mobile-overlay {
        position:fixed !important;
        inset:0 !important;
        z-index:2147483640 !important;
        display:none !important;
        visibility:hidden !important;
        opacity:0 !important;
        pointer-events:none !important;
    }

    body.bt-mobile-menu-open #masthead.bt-header .bt-mobile-overlay {
        display:block !important;
        visibility:visible !important;
        opacity:1 !important;
        pointer-events:auto !important;
        z-index:2147483640 !important;
    }

    /* Drawer contents are above overlay and clickable */
    body.bt-mobile-menu-open #masthead.bt-header #bt-mobile-menu *,
    body.bt-mobile-menu-open #masthead.bt-header #bt-mobile-menu a,
    body.bt-mobile-menu-open #masthead.bt-header #bt-mobile-menu button {
        pointer-events:auto !important;
    }

    body.bt-mobile-menu-open #masthead.bt-header #bt-mobile-menu a {
        position:relative !important;
        z-index:2147483645 !important;
        touch-action:manipulation !important;
    }
}

@media (max-width:767px) {
    #masthead.bt-header #bt-mobile-menu {
        width:100vw !important;
        max-width:100vw !important;
        right:-110vw !important;
    }

    body.bt-mobile-menu-open #masthead.bt-header #bt-mobile-menu {
        right:0 !important;
    }
}

/* Fixed CTA buttons */
.bt-v105-floating {
    position:fixed !important;
    right:18px !important;
    bottom:20px !important;
    z-index:2147483000 !important;
    width:150px !important;
    display:flex !important;
    flex-direction:column !important;
    gap:9px !important;
    pointer-events:auto !important;
}

.bt-v105-floating a {
    width:150px !important;
    min-height:46px !important;
    box-sizing:border-box !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    padding:10px 12px !important;
    border-radius:14px !important;
    border:1px solid rgba(255,255,255,.25) !important;
    text-decoration:none !important;
    font:800 14px/1.1 inherit !important;
    box-shadow:0 7px 22px rgba(0,0,0,.22) !important;
}

.bt-v105-call { background:#163b8f !important; color:#fff !important; }
.bt-v105-whatsapp { background:#16a34a !important; color:#fff !important; }
.bt-v105-book {
    background:#ffb703 !important;
    color:#10213f !important;
    animation:bt-v105-pulse 2.4s ease-in-out infinite !important;
}

@keyframes bt-v105-pulse {
    0%,70%,100% { transform:scale(1); }
    77% { transform:scale(1.045); box-shadow:0 0 0 6px rgba(255,183,3,.18),0 10px 28px rgba(0,0,0,.25); }
    84% { transform:scale(1); }
}

@media (max-width:767px) {
    .bt-v105-floating {
        right:12px !important;
        bottom:14px !important;
        width:132px !important;
        gap:7px !important;
    }

    .bt-v105-floating a {
        width:132px !important;
        min-height:43px !important;
        font-size:13px !important;
    }
}

@media (max-width:380px) {
    .bt-v105-floating {
        right:8px !important;
        bottom:10px !important;
        width:120px !important;
    }

    .bt-v105-floating a {
        width:120px !important;
        min-height:40px !important;
        font-size:12px !important;
    }
}

@media (prefers-reduced-motion:reduce) {
    .bt-v105-floating .bt-v105-book { animation:none !important; }
}
