@media (max-width: 768px) {

    /* ================================
       SEÇÃO INSIDE — RESET GERAL
    ================================ */
    #inside {
        position: relative !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        max-width: 100vw !important;
        overflow-x: hidden !important;
        box-sizing: border-box !important;
        transform: none !important;
        margin: 0 !important;
        padding: 0 !important;
        /* Garante altura de tela cheia (fallback → dvh) */
        min-height: var(--inside-vh, 100vh) !important;
        min-height: var(--inside-vh, 100dvh) !important;
    }
    
        /* ================================
       TÍTULO — acima das fases
    ================================ */
        .inside__titulo {
            position: absolute;
            top: calc(13vh + env(safe-area-inset-top, 0px));
            left: 0;
            width: 100%;
            text-align: center;
            z-index: 99;
            font-family: 'Syncopate', sans-serif;
            font-size: clamp(0.65rem, 2vh, 0.85rem);
            font-weight: 700;
            color: rgba(255, 255, 255, 0.7);
            letter-spacing: 5px;
            text-transform: uppercase;
            pointer-events: none;
            user-select: none;
            padding-bottom: 0.8vh;
            border-bottom: 1px solid rgba(242, 86, 29, 0.2);
        }

            .inside__titulo span {
                color: #F2561D;
            }
    

    /* ================================
       FASE 1 — visível por padrão
       JS esconde com .hidden
    ================================ */
    .inside__gear {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        height: var(--inside-vh, 100vh) !important;
        height: var(--inside-vh, 100dvh) !important;
        min-height: var(--inside-vh, 100vh) !important;
        min-height: var(--inside-vh, 100dvh) !important;
        margin: 0 !important;
        padding: 0 !important;
        box-sizing: border-box !important;
    }

        .inside__gear.hidden {
            display: none !important;
            height: 0 !important;
            overflow: hidden !important;
        }

    /* ================================
       FASE 2 — oculta por padrão
       JS mostra com .active
       Fixed fullscreen (como desktop) — não depende do fluxo com body travado.
    ================================ */
    .inside__video {
        display: none !important;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        z-index: 50000 !important;
        background: #000 !important;
        box-sizing: border-box !important;
        isolation: isolate !important;
    }

        .inside__video.active {
            display: flex !important;
            position: fixed !important;
            top: 0 !important;
            left: 0 !important;
            right: 0 !important;
            bottom: 0 !important;
            z-index: 50000 !important;
            align-items: stretch !important;
            justify-content: center !important;
            width: 100% !important;
            height: var(--inside-vh, 100vh) !important;
            height: var(--inside-vh, 100dvh) !important;
            min-height: var(--inside-vh, 100vh) !important;
            min-height: var(--inside-vh, 100dvh) !important;
            max-height: none !important;
            overflow: hidden !important;
        }

        .inside__video.active video,
        #insideVideoEl {
            display: block !important;
            position: absolute !important;
            top: 0 !important;
            left: 0 !important;
            width: 100% !important;
            height: 100% !important;
            min-height: 100% !important;
            max-height: none !important;
            object-fit: cover !important;
            object-position: center center !important;
            z-index: 1 !important;
        }

        .inside__video__skip {
            position: absolute !important;
            bottom: max(24px, env(safe-area-inset-bottom, 0px)) !important;
            right: max(20px, env(safe-area-inset-right, 0px)) !important;
            z-index: 50001 !important;
        }

    /* Vídeo ativo: título fica atrás */
    #inside:has(.inside__video.active) .inside__titulo {
        z-index: 1 !important;
    }

    /* Órbita ativa: seção = exatamente 1 viewport, sem overflow vertical */
    #inside:has(.inside__orbit.active) {
        height: var(--inside-vh, 100dvh) !important;
        max-height: var(--inside-vh, 100dvh) !important;
        min-height: var(--inside-vh, 100dvh) !important;
        overflow: hidden !important;
    }

    /* ================================
       FASE 3 — oculta por padrão
       JS mostra com .active
    ================================ */
    .inside__orbit {
        display: none !important;
        height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
    }

        .inside__orbit.active {
            display: flex !important;
            flex-direction: column !important;
            align-items: center !important;
            justify-content: flex-start !important;
            position: relative !important;
            width: 100% !important;
            height: var(--inside-vh, 100dvh) !important;
            max-height: var(--inside-vh, 100dvh) !important;
            min-height: 0 !important;
            padding-top: calc(15vh + env(safe-area-inset-top, 0px)) !important;
            padding-bottom: max(1.2vh, env(safe-area-inset-bottom, 0px)) !important;
            padding-left: 0 !important;
            padding-right: 0 !important;
            left: 0 !important;
            right: 0 !important;
            transform: none !important;
            margin: 0 !important;
            box-sizing: border-box !important;
            overflow: hidden !important;
        }

    .inside__orbit__container {
        position: relative !important;
        width: 100% !important;
        overflow: hidden !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 0.4vh !important;
        flex: 1 1 auto !important;
        min-height: 0 !important;
        height: 100% !important;
        max-height: 100% !important;
        left: 0 !important;
        right: 0 !important;
        transform: none !important;
        padding: 0 !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }

    /* ================================
       CANVAS — partículas fase 1
    ================================ */
    #orbitCanvasBack,
    #orbitCanvasFront {
        display: block !important;
        position: absolute !important;
        top: 50% !important;
        left: 50% !important;
        transform: translate(-50%, -50%) !important;
        width: 220px !important;
        height: 220px !important;
        pointer-events: none !important;
        z-index: 2 !important;
    }

    /* ================================
       ESCONDE ELEMENTOS DESKTOP
    ================================ */
    .inside__ball,
    .inside__info,
    .inside__saibamais {
        display: none !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }

    /* ================================
       BOTÕES NAV — removidos no mobile
    ================================ */
    .inside__nav {
        display: none !important;
    }

    /* ================================
       BOLA MOBILE
    ================================ */
    .inside__mobile__ball {
        width: clamp(68px, 11vh, 100px) !important;
        height: clamp(68px, 11vh, 100px) !important;
        border-radius: 50% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        z-index: 9 !important;
        position: relative !important;
        flex-shrink: 0 !important;
    }

        .inside__mobile__ball img {
            width: 100% !important;
            height: 100% !important;
            object-fit: contain !important;
            pointer-events: none !important;
            user-select: none !important;
            display: block !important;
        }

    /* ================================
       CONTADOR
    ================================ */
    .inside__mobile__counter {
        font-family: 'Montserrat', sans-serif !important;
        font-size: clamp(0.6rem, 1.6vh, 0.7rem) !important;
        font-weight: 700 !important;
        letter-spacing: 3px !important;
        color: rgba(255, 255, 255, 0.4) !important;
        text-transform: uppercase !important;
        margin-top: 0.6vh !important;
        margin-bottom: 0 !important;
        display: block !important;
        text-align: center !important;
        flex-shrink: 0 !important;
    }

        .inside__mobile__counter span {
            color: #F2561D !important;
            font-size: clamp(0.75rem, 2vh, 0.9rem) !important;
        }

    /* ================================
       CARD TRACK
    ================================ */
    .inside__mobile__card__track {
        width: 100vw !important;
        max-width: 100% !important;
        overflow: hidden !important;
        flex: 1 1 auto !important;
        min-height: 0 !important;
        max-height: 30vh !important;
        margin-top: 0.6vh !important;
        margin-bottom: 0.6vh !important;
        position: relative !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-self: stretch !important;
    }

    .inside__mobile__card__inner {
        display: flex !important;
        flex-wrap: nowrap !important;
        transition: transform 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
        will-change: transform !important;
        width: 100% !important;
    }

    .inside__mobile__card {
        min-width: 100% !important;
        width: 100% !important;
        padding: 0 20px !important;
        box-sizing: border-box !important;
        flex-shrink: 0 !important;
    }

    .inside__mobile__card__content {
        background: rgba(255, 255, 255, 0.04) !important;
        border: 1px solid rgba(242, 86, 29, 0.3) !important;
        border-radius: 20px !important;
        padding: clamp(12px, 2vh, 20px) clamp(14px, 4vw, 20px) !important;
        text-align: center !important;
        backdrop-filter: blur(8px) !important;
        -webkit-backdrop-filter: blur(8px) !important;
        position: relative !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
        max-height: 28vh !important;
    }

        .inside__mobile__card__content::before {
            content: '' !important;
            position: absolute !important;
            top: 0 !important;
            left: 0 !important;
            right: 0 !important;
            height: 2px !important;
            background: linear-gradient(90deg, transparent, #F2561D, transparent) !important;
            opacity: 0 !important;
            transition: opacity 0.4s ease !important;
        }

        .inside__mobile__card__content.ativo::before {
            opacity: 1 !important;
        }

    .inside__mobile__card__numero {
        font-family: 'Syncopate', sans-serif !important;
        font-size: clamp(1.6rem, 4.5vh, 2.5rem) !important;
        font-weight: 700 !important;
        color: rgba(242, 86, 29, 0.15) !important;
        line-height: 1 !important;
        margin-bottom: 0.6vh !important;
        display: block !important;
    }

    .inside__mobile__card__titulo {
        font-family: 'Syncopate', sans-serif !important;
        font-size: clamp(0.75rem, 2vh, 0.9rem) !important;
        font-weight: 700 !important;
        color: #fff !important;
        text-transform: uppercase !important;
        letter-spacing: 2px !important;
        margin-bottom: 0.8vh !important;
        display: block !important;
    }

    .inside__mobile__card__texto {
        font-family: 'Montserrat', sans-serif !important;
        font-size: clamp(0.72rem, 1.85vh, 0.82rem) !important;
        color: rgba(255, 255, 255, 0.7) !important;
        line-height: 1.45 !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 4 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
    }

    .inside__mobile__card__saibamais {
        position: relative !important;
        margin-top: 1vh !important;
        min-width: clamp(120px, 36vw, 138px) !important;
        min-height: clamp(38px, 5.5vh, 46px) !important;
        border: 1px solid #f2561d !important;
        border-radius: 999px !important;
        padding: 0 24px !important;
        background: linear-gradient(145deg, #252525 0%, #050505 48%, #161616 100%) !important;
        color: #fff !important;
        cursor: pointer !important;
        font-family: 'Syncopate', sans-serif !important;
        font-size: clamp(0.58rem, 1.5vh, 0.68rem) !important;
        font-weight: 700 !important;
        letter-spacing: 1.5px !important;
        line-height: 1 !important;
        text-transform: uppercase !important;
        text-shadow: 0 1px 2px rgba(0, 0, 0, 0.38) !important;
        box-shadow: none !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        animation: insideSaibaMaisPulse 2s ease-in-out infinite !important;
        transition: transform 0.22s ease, border-color 0.22s ease, filter 0.22s ease !important;
    }

        .inside__mobile__card__saibamais::before {
            content: "" !important;
            position: absolute !important;
            inset: 5px 12px auto 12px !important;
            height: 38% !important;
            border-radius: inherit !important;
            background: linear-gradient(180deg, rgba(255, 255, 255, 0.26), rgba(255, 255, 255, 0)) !important;
            pointer-events: none !important;
        }

        .inside__mobile__card__saibamais:active {
            border-color: #ff7c45 !important;
            filter: brightness(1.18) !important;
            transform: translateY(2px) scale(0.99) !important;
        }

    /* ================================
       DOTS
    ================================ */
    .inside__mobile__dots {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 6px !important;
        margin-top: 0.5vh !important;
        justify-content: center !important;
        flex-shrink: 0 !important;
        padding: 0 20px !important;
    }

    .inside__mobile__dot {
        width: 6px !important;
        height: 6px !important;
        border-radius: 50% !important;
        background: rgba(255, 255, 255, 0.2) !important;
        transition: all 0.3s ease !important;
        flex-shrink: 0 !important;
    }

        .inside__mobile__dot.ativo {
            width: 20px !important;
            border-radius: 3px !important;
            background: #F2561D !important;
        }

    /* ================================
       WRAPPER ENGRENAGEM — embaixo
    ================================ */
    .inside__mobile__gear__wrapper {
        position: relative !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        margin-top: 0.5vh !important;
        flex-shrink: 0 !important;
    }

    /* ================================
       HINT — "Gire para navegar"
    ================================ */
    .inside__mobile__gear__hint {
        display: flex !important;
        align-items: center !important;
        gap: 6px !important;
        margin-bottom: 0.5vh !important;
        opacity: 1 !important;
        transition: opacity 0.5s ease !important;
    }

        .inside__mobile__gear__hint.oculto {
            opacity: 0 !important;
            pointer-events: none !important;
        }

        .inside__mobile__gear__hint span {
            font-family: 'Montserrat', sans-serif !important;
            font-size: 0.65rem !important;
            font-weight: 600 !important;
            letter-spacing: 2px !important;
            color: rgba(242, 86, 29, 0.7) !important;
            text-transform: uppercase !important;
        }

        .inside__mobile__gear__hint svg {
            width: 18px !important;
            height: 18px !important;
            fill: none !important;
            stroke: rgba(242, 86, 29, 0.7) !important;
            stroke-width: 2 !important;
            animation: hint__pulse 1.5s ease-in-out infinite !important;
        }

    /* ================================
       ENGRENAGEM — maior, embaixo
    ================================ */
    .inside__orbit__gear {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        margin: 0 auto !important;
        width: clamp(108px, 19vh, 170px) !important;
        height: clamp(108px, 19vh, 170px) !important;
        object-fit: contain !important;
        cursor: grab !important;
        touch-action: none !important;
        user-select: none !important;
        -webkit-user-drag: none !important;
        filter: drop-shadow(0 0 20px rgba(242, 86, 29, 0.4)) !important;
        z-index: 10 !important;
        display: block !important;
        transform-origin: center center !important;
    }

    /* ================================
       ANIMAÇÕES
    ================================ */
    @keyframes hint__pulse {
        0%, 100% {
            opacity: 0.5;
            transform: rotate(0deg);
        }

        50% {
            opacity: 1;
            transform: rotate(15deg);
        }
    }

    @keyframes encaixe__pulse {
        0% {
            transform: scale(1);
        }

        40% {
            transform: scale(1.15);
        }

        70% {
            transform: scale(0.95);
        }

        100% {
            transform: scale(1);
        }
    }

    .inside__mobile__ball.pulsar {
        animation: encaixe__pulse 0.4s ease !important;
    }

    @keyframes gear__tick {
        0% {
            filter: drop-shadow(0 0 20px rgba(242, 86, 29, 0.4));
        }

        50% {
            filter: drop-shadow(0 0 40px rgba(242, 86, 29, 1));
        }

        100% {
            filter: drop-shadow(0 0 20px rgba(242, 86, 29, 0.4));
        }
    }

    .inside__orbit__gear.tick {
        animation: gear__tick 0.35s ease !important;
    }
}
