﻿/* ============================================
   LETTERBOX — Steam Web
   Duas faixas de letreiro animadas (CSS puro)
   Sem <marquee> — loop infinito via translateX
   ============================================ */

.letterbox {
    position: relative;
    background-color: #00010D;
    padding: 80px 0;
    overflow: hidden;
    /* Gradiente lateral para profundidade cinematográfica */
    -webkit-mask-image: linear-gradient( to right, transparent 0%, #000 6%, #000 94%, transparent 100% );
    mask-image: linear-gradient( to right, transparent 0%, #000 6%, #000 94%, transparent 100% );
}

/* ---------- FAIXAS ---------- */
.letterbox__track {
    overflow: hidden;
    width: 100%;
    cursor: default;
    user-select: none;
}

.letterbox__track--left {
    margin-bottom: 20px;
}

.letterbox__track--right {
    margin-top: 0;
}

/* ---------- INNER (container animado) ---------- */
.letterbox__inner {
    display: inline-flex;
    white-space: nowrap;
    align-items: center;
    gap: 0;
}

/* Faixa esquerda → desloca para a esquerda */
.letterbox__track--left .letterbox__inner {
    animation: lb-scroll-left 22s linear infinite;
}

/* Faixa direita → desloca para a direita */
.letterbox__track--right .letterbox__inner {
    animation: lb-scroll-right 26s linear infinite;
}

/* ---------- PAUSE ON HOVER ---------- */
.letterbox__track:hover .letterbox__inner {
    animation-play-state: paused;
}

/* ---------- TEXTO ---------- */
.letterbox__item {
    font: 800 clamp(48px, 6vw, 90px) / 1 system-ui, -apple-system, 'Segoe UI', Roboto, Arial;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: #ffffff;
    padding: 0 12px;
    transition: color 0.35s cubic-bezier(.16,1,.3,1);
}

/* Variante outline (texto vazado) */
.letterbox__item--outline {
    color: transparent;
    -webkit-text-stroke: 1.5px #ffffff;
    text-stroke: 1.5px #ffffff;
}

/* Hover: texto sólido vira laranja, outline preenche com laranja */
.letterbox__track:hover .letterbox__item {
    color: #F2561D;
}

.letterbox__track:hover .letterbox__item--outline {
    color: transparent;
    -webkit-text-stroke-color: #F2561D;
}

/* ---------- SEPARADOR ✦ ---------- */
.letterbox__sep {
    font-size: clamp(20px, 2.5vw, 36px);
    color: #F2561D;
    padding: 0 8px;
    line-height: 1;
    opacity: 0.85;
    flex-shrink: 0;
    transition: transform 0.35s cubic-bezier(.16,1,.3,1);
}

.letterbox__track:hover .letterbox__sep {
    transform: rotate(90deg);
}

/* ---------- KEYFRAMES ---------- */

/* Move exatamente 50% (metade = 1 cópia completa do conteúdo) */
@keyframes lb-scroll-left {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}

@keyframes lb-scroll-right {
    0% {
        transform: translateX(-50%);
    }

    100% {
        transform: translateX(0);
    }
}

/* ---------- RESPONSIVO ---------- */
@media (max-width: 768px) {
    .letterbox {
        padding: 50px 0;
        -webkit-mask-image: linear-gradient( to right, transparent 0%, #000 3%, #000 97%, transparent 100% );
        mask-image: linear-gradient( to right, transparent 0%, #000 3%, #000 97%, transparent 100% );
    }

    .letterbox__item {
        padding: 0 8px;
    }

    .letterbox__track--left {
        margin-bottom: 14px;
    }

        /* Velocidade ligeiramente maior no mobile para compensar tela menor */
        .letterbox__track--left .letterbox__inner {
            animation-duration: 16s;
        }

    .letterbox__track--right .letterbox__inner {
        animation-duration: 20s;
    }
}
