@media (max-width:991.98px){
    .navbar-bosfor{ z-index:2001; }
    .navbar-bosfor .navbar-collapse{display:block !important;position:fixed;top:0;right:0;bottom:0;width:min(85vw, 300px);height:100vh !important;overflow-y:auto !important;background:var(--navy);padding:76px 20px 40px;border-top:none;box-shadow:4px 0 32px rgba(0, 0, 0, .32);z-index:2000;transform:translateX(105%);visibility:hidden;pointer-events:none;transition:transform .3s cubic-bezier(.4, 0, .2, 1), visibility .3s;}
    .navbar-bosfor .navbar-collapse.collapsing{height:100vh !important;transition:transform .3s cubic-bezier(.4, 0, .2, 1), visibility .3s !important;}
    .navbar-bosfor .navbar-collapse.nav-open{transform:translateX(0);visibility:visible;pointer-events:auto;}
    .navbar-bosfor .navbar-nav > .nav-item{ padding:0; border-bottom:1px solid rgba(255, 255, 255, .07); }
    .navbar-bosfor .navbar-nav > .nav-item:last-child{ border-bottom:none; }
    .navbar-bosfor .nav-link{ padding:13px 12px !important; border-radius:6; }
    .navbar-bosfor .nav-item.dropdown > .nav-link.dropdown-toggle{ display:flex; justify-content:space-between; align-items:center; }
    .navbar-bosfor .nav-link.dropdown-toggle::after{ margin-left:auto; transition:transform .2s; flex-shrink:0; }
    .lang-dropdown-menu.dropdown-menu-end[data-bs-popper]{left:0;right:auto;}
    .bosfor-nav-dropdown{ background:transparent; border:none; box-shadow:none; padding:10px 12px 8px 12px; }
    .bosfor-nav-dropdown .dropdown-item{ color:rgba(255, 255, 255, .72); font-size:13px; padding:12px 12px 10px 12px; border-radius:6px;}
    .bosfor-nav-dropdown .dropdown-item:hover{ background:rgba(255, 255, 255, .1); color:#fff; }
    .navbar-bosfor .navbar-nav .dropdown-toggle{ color:rgba(255, 255, 255, .85) !important; cursor:pointer; }
    .navbar-bosfor .nav-item.mob-open > .dropdown-menu{ display:block; position:static; float:none; }
    .navbar-bosfor .nav-item.mob-open > .nav-link.dropdown-toggle::after{ transform:rotate(180deg); }
    .navbar-bosfor .dropdown.ms-lg-3{padding-top:20px; border-top:1px solid rgba(255, 255, 255, .1); }
    .navbar-bosfor .navbar-nav > .nav-item.active{ background:rgba(255, 255, 255, .08); border-radius:8px; border-bottom-color:transparent; }
    .navbar-bosfor .navbar-nav > .nav-item.active > .nav-link{ color:#fff !important; font-weight:700; }
    .navbar-bosfor .navbar-nav > .nav-item.active + .nav-item{ border-top-color:transparent; }
}
@media (max-width:767.98px){
    .city-row{ flex-wrap:wrap; gap:6px 0 !important;position:relative;}
    .city-row #colFrom, .city-row #colTo{ flex:0 0 100% !important; }
    .city-row .swap-wrap{flex:0 0 100%;justify-content:center;padding:0;position:absolute;top:50%;right:50px;z-index:1;padding-top:.25rem !important;margin-top:-20px;}
    .swap-btn{width:38px;height:38px;border-radius:50%;background-color:var(--theme-color);color:var(--bs-white);border:2px solid var(--blue-mid);}
    .banner-slide{ min-height:460px; }
    .exp-bus-wrap{ min-height:auto; padding:24px; }
    .exp-bus{ width:260px; height:120px; }
    .route-dots{ max-width:260px; }
    .routes-masonry{grid-template-columns: 1fr 1fr;min-height:auto;}
    .rm-tall{ grid-column:1 / -1; order:-1; }
    .rm-tall .route-card{ height:auto; aspect-ratio:16/7; }
    .rm-col .route-card{ aspect-ratio:4/3; min-height:auto; }
    .bosfor-swiper-controls{ margin-top:20px; }
}
@media (max-width:575.98px){
    .hero{ padding:48px 0 0; min-height:auto; }
    .hero h1{ font-size:26px; }
    .search-box{ padding:18px 16px; }
    .bus-mockup{ height:200px; }
    .bus-body{ width:280px; height:120px; }
    .toast-bosfor{ left:16px; right:16px; bottom:16px; }
    .back-to-top{ left:16px; bottom:28px; }
    .back-to-top.at-bottom{ bottom:100px; }
    .bosfor-swiper-controls{ margin-top:16px; gap:10px; }
    .bosfor-sw-btn{ width:36px; height:36px; }
}