.splash-tv-overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 999;
    transform: scale(1);
    pointer-events: none;
    background-size: 100%;
    background-image: url('../assets/interface/scene/overlay/static.gif');
    transition: opacity 0.2s;
}

.splash-tv-overlay--hidden {
    opacity: 0;
}

.splash-tv-overlay--visible {
    opacity: 0.1;
}


.typewriter-letter {
    opacity: 0;
}

.cutscene-text-box--hidden--new {
    transform: translateY(-100%);
    /* animation-delay: 100ms; */
    opacity: 0;
}

.cutscene-text-box--hidden--fade {
    opacity: 0;
    transition: opacity 0.3s;
}

.cutscene-text-box--hidden--bottom {
    transform: translateY(100%);
    /* animation-delay: 100ms; */
    opacity: 0;
}

.cutscene-next-button--hidden--out {
    opacity: 0;
    transform: translateY(0%);
    pointer-events: none;
}

.cutscene-text-box--visible--new {
    transform: translateY(0%);
    /*  animation: 0.05s 1 slideInBounceDown linear;
    animation-delay: 100ms; */
    opacity: 1;
}

.cutscene-character-sprite--bounce {
    /* animation: 0.2s 1 dialogueBounce linear; */
}

.icon-clickable--splash {
    color: rgba(var(--off-black), 1);
    background-color: rgba(var(--gold), 1);
    display: inline-block;
    padding: 0.5% 1%;
    border-radius: 100vmin;
    transform: scale(0.5) translate(-20%, -80%);
    opacity: 0.5;
}

.icon-clickable--splash:hover {
    opacity: 1;
}

.promo-container {
    transition: transform 0.1s;
}

.promo-container:hover {
    transform: scale(1.1);
}



@keyframes slideInBounceDown {
    0% {
        transform: translateY(0%);
    }
  
    50% {
        transform: translateY(10%);
    }
  
    100% {
        transform: translateY(0%);
    }
  }

  @keyframes dialogueBounce {
    0% {
        transform: translateY(0%);
    }
  
    50% {
        transform: translateY(-3%);
    }
  
    100% {
        transform: translateY(0%);
    }
  }
  
.bumper-container {
    width: 100vw;
    height: 100vh;
    background-color: rgba(var(--teal), 1);
    z-index: 999;
    transition: opacity 0.5s;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    position: fixed;
}

.bumper-container--visible {
    opacity: 1;
    pointer-events: auto;
}

.bumper-container--hidden {
    opacity: 0;
    pointer-events: none;
}

.bumper-container--preview {
    width: 100vw;
    height: 100vh;
    background-color: rgba(var(--off-black), 1);
    z-index: 999;
    transition: opacity 0.25s;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    position: fixed;
}

.bumper-logo {
    position: absolute;
    top: 45%;
    left: 49%;
    transform: translate(-50%, -50%);
    background-image: url('../assets/branding/logo/logo-main.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 50% 45%;
    width: 35vmax;
    height: 35vmax;
    max-width: 40rem;
}

.bumper-logo--hidden {
    transform: translate(-50%, -60%) scale(1);
    opacity: 0;
}

.bumper-logo--visible {
    transform: translate(-50%, -50%) scale(1);
    /* animation: 0.7s 1 logoBounceWiggle ease-out;
    animation-delay: 100ms; */
    transition: transform 200ms, opacity 200ms;
    opacity: 1;
}

.bumper-logo--out {
    transform: translate(-50%, -50%) scale(2);
    opacity: 0;
    transition: transform 300ms, opacity 300ms;
}

@keyframes logoBounceWiggle {
    0% {
        transform: translate(-50%, -50%) scale(1);
    }

    15% {
        transform: translate(-50%, -50%) scale(1.3);
    }

    45% {
        transform: translate(-50%, -50%) scale(0.95);
    }

    75% {
        transform: translate(-50%, -50%) scale(1.02);
    }

    100% {
        transform: translate(-50%, -50%) scale(1);
    }
}

.splash--hidden--fade {
    opacity: 0;
    transition: opacity 500ms;
    pointer-events: none;
    user-select: none;
}

.free-container {
    width: 80%;
    height: 70%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 3% 1.8%;
}

.free-resource {
    width: 28.3%;
    height: 48%;
    background-color: rgba(var(--off-white), 1);
    border-radius: 0.5rem;
    background-size: 95%;
    background-position: center center;
    background-repeat: no-repeat;
    transition: opacity 0.2s;            
}

.free-resource-selected {
    transform: scale(0.95);  
    background-color: rgba(var(--gold), 1);
    pointer-events: none;
}

.free-resource:active {
    transform: scale(0.95);   
}

.free-resource-hidden {
    opacity: 0.1;
    pointer-events: none;
}

.free-resource:hover {
    background-color: rgba(var(--gold), 1);
}

.splash-text-link {
    color: rgba(var(--off-black), 1);
    background-color: rgba(var(--gold), 1);
    padding: 0.5% 1%;
    border-radius: 1vmin;
}

.splash-text-link:hover {
    background-color: rgba(var(--off-white), 1);
}