/* Base Resets */
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
    background-color: #000000;
    color: #e6e6e6;
    font-family: 'Courier New', Courier, monospace;
    overflow-x: hidden;
    overflow-y: scroll; /* Allows for manual scrolling or auto-scrolling */
    height: 100vh;
}

/* The Crawl Mechanism */
.crawl-container {
    position: absolute;
    width: 100%;
    bottom: -100%; /* Start off-screen at the bottom */
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    animation: scrollCrawl 60s linear infinite; /* Adjust duration to control speed */
}

/* Pause the animation on hover so users can read or click */
.crawl-container:hover {
    animation-play-state: paused;
}

/* Keyframes for the scrolling effect */
@keyframes scrollCrawl {
    0% {
        bottom: -100%;
        transform: translateZ(0);
    }
    100% {
        bottom: 100%; /* Roll all the way off the top */
        transform: translateZ(0);
    }
}

/* Typography & Spacing */
.logo-title {
    margin-bottom: 20vh;
    font-size: 1.5rem;
    letter-spacing: 0.5rem;
    color: #ffffff;
}

.logo-title h1 {
    font-size: 3rem;
    margin-bottom: 1rem;
}

.credits {
    width: 80%;
    max-width: 600px;
    padding-bottom: 40vh; /* Smooth exit space */
}

.role-block {
    margin-bottom: 8vh;
}

.role-block h2 {
    font-size: 1rem;
    letter-spacing: 0.2rem;
    color: #888888;
    margin-bottom: 0.5rem;
    text-transform: uppercase;
}

.role-block p {
    font-size: 1.2rem;
    font-weight: bold;
    letter-spacing: 0.1rem;
}

.logo-block {
    margin-top: 10vh;
}

.big-text {
    font-size: 4rem;
    font-weight: bold;
    color: #ffffff;
    margin-bottom: 1rem;
}