/* SMARTESST MENU MOBILE FINAL V17
   Menu mobile próprio e estável. Neutraliza visualmente menus antigos.
   Afeta apenas home/login pública quando a classe é aplicada pelo JS. */

.sst-v17-mobile-menu {
    display: none;
}

@media (max-width: 900px) {
    body.sst-menu-mobile-final-v17 {
        overflow-x: hidden !important;
    }

    body.sst-menu-mobile-final-v17 .sst-mobile-menu-clone-v15,
    body.sst-menu-mobile-final-v17 .sst-v17-original-nav-hidden,
    body.sst-menu-mobile-final-v17 .sst-v17-original-link-hidden {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        height: 0 !important;
        max-height: 0 !important;
        overflow: hidden !important;
        pointer-events: none !important;
    }

    body.sst-menu-mobile-final-v17 header,
    body.sst-menu-mobile-final-v17 .topbar,
    body.sst-menu-mobile-final-v17 .navbar,
    body.sst-menu-mobile-final-v17 .home-header,
    body.sst-menu-mobile-final-v17 .landing-header {
        min-height: 150px !important;
        height: auto !important;
        padding-bottom: 12px !important;
        overflow: hidden !important;
        background: rgba(231, 241, 247, .94) !important;
        display: flex !important;
        flex-wrap: wrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 8px 10px !important;
    }

    body.sst-menu-mobile-final-v17 .sst-v17-mobile-menu {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 5px 8px !important;
        order: 999 !important;
        flex: 0 0 100% !important;
        width: calc(100% - 28px) !important;
        max-width: calc(100% - 28px) !important;
        min-width: 0 !important;
        margin: 4px auto 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        background: transparent !important;
        border: 0 !important;
        box-shadow: none !important;
    }

    body.sst-menu-mobile-final-v17 .sst-v17-mobile-menu a {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        min-height: 32px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 6px 4px !important;
        margin: 0 !important;
        color: #263548 !important;
        font-size: 13px !important;
        line-height: 1.1 !important;
        font-weight: 900 !important;
        letter-spacing: -0.03em !important;
        text-align: center !important;
        text-decoration: none !important;
        white-space: normal !important;
        overflow: hidden !important;
        text-shadow: none !important;
        border-radius: 8px !important;
        box-sizing: border-box !important;
    }

    body.sst-menu-mobile-final-v17 .sst-v17-mobile-menu a span {
        display: block !important;
        max-width: 100% !important;
        overflow: hidden !important;
    }

    body.sst-menu-mobile-final-v17 .hero,
    body.sst-menu-mobile-final-v17 .hero-section,
    body.sst-menu-mobile-final-v17 .landing-hero,
    body.sst-menu-mobile-final-v17 .login-hero,
    body.sst-menu-mobile-final-v17 .sst-hero-principal-v10,
    body.sst-menu-mobile-final-v17 .sst-hero-principal-v11 {
        min-height: calc(100svh - 150px) !important;
    }
}

@media (max-width: 380px) {
    body.sst-menu-mobile-final-v17 .sst-v17-mobile-menu {
        width: calc(100% - 18px) !important;
        max-width: calc(100% - 18px) !important;
        gap: 4px 5px !important;
    }

    body.sst-menu-mobile-final-v17 .sst-v17-mobile-menu a {
        font-size: 12px !important;
        padding-left: 2px !important;
        padding-right: 2px !important;
    }
}