@media (max-width: 768px) {
    .banner-text {
        color: white;
        font-size: 2rem;
        font-weight: bold;
        margin-bottom: 20px;
    }

    .desktopMap {
        display: none;
    }

    .mobile-map {
        display: block;
        width: 100%;
        height: 440px;
        border: none;
    }

    .mobileHero {
        z-index: 999;
    }

    .mobileContainer {
        position: fixed;
        bottom: 0;
        left: 0;
        background-color: white;
        width: 100%;
        border-radius: 10px;
        transform: translateY(0%);
        transition: all 0.3s ease;
    }

    .mobileContainer.hide {
        transform: translateY(85%);
    }

    .mobileNavigate {
        position: absolute;
        top: 10px;
        left: calc(50% - 30px);
        width: 60px;
        height: 10px;
        border: none;
        display: flex;
        justify-content: center;
        overflow: hidden;
        z-index: 9999;
        pointer-events: auto;
        background-color: white;
    }

    .mobileNavigate img {
        height: 4px;
    }
}

@media (min-width: 768px) {
    .mobile-map {
        display: none;
    }

    .mobileNavigate {
        display: none;
    }
}

@media (max-width: 991.98px) {
    :root {
        --web-navbar-height: 94px;
    }
}

@media (max-width: 767.98px) {
    html,
    body {
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
        overscroll-behavior-x: none;
        background: #f5faf7;
    }

    body {
        position: relative;
        -webkit-tap-highlight-color: transparent;
    }

    body > * {
        max-width: 100%;
    }

    img,
    iframe,
    video {
        max-width: 100%;
    }

    .container,
    .container-fluid {
        width: 100%;
        max-width: 100%;
        padding-left: 14px;
        padding-right: 14px;
        overflow-x: hidden;
    }

    .row {
        max-width: 100%;
        margin-left: 0;
        margin-right: 0;
    }

    .btn,
    button,
    .form-control,
    .form-select {
        min-height: 46px;
    }

    .form-control,
    .form-select {
        border-radius: 8px;
        font-size: 15px;
    }

    .carousel-control-prev,
    .carousel-control-next {
        display: none;
    }

    .suggestions-container,
    .how-works-section,
    .app-download-section {
        padding-left: 14px;
        padding-right: 14px;
    }

    .suggestion-grid,
    .download-grid,
    .feature-grid {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }

    .suggestion-card,
    .download-card,
    .home-feature,
    .contact-card {
        border-radius: 8px;
    }

    .suggestion-card {
        min-height: 180px;
    }

    .download-card {
        padding: 18px;
    }
}

@media (max-width: 575.98px) {
    :root {
        --web-navbar-height: 92px;
    }
}
