.hero {
    min-height: 100vh;
    min-height: 100dvh;
    width: 100vw;
    top: 0;
    margin-top: -10vh;
    position: relative;
    margin-left: 0;
}

    .hero .list .item {
        position: absolute;
        inset: 0 0 0 0;
        overflow: hidden;
        opacity: 0;
        transition: 1s;
    }

        .hero .list .item img,
        .hero .list .item video {
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

        .hero .list .item::after {
            content: '';
            width: 100vw;
            min-height: 100vh;
            min-height: 100dvh;
            position: absolute;
            left: 0;
            bottom: 0;
            background: rgba(0,0,0,.7);
            background-image: url('../images/logos/Icon_White-01.svg');
            background-size: cover;
            background-position: center;
        }

        .hero .list .item .content {
            position: absolute;
            display: flex;
            flex-direction: column;
            justify-items: start;
            left: 50%;
            top: 20vh;
            transform: translateX(-49%);
            width: 90vw;
            max-width: var(--grid-max);
            z-index: 1;
        }

            .hero .list .item .content > * {
                flex-basis: 100%;
            }

            .hero .list .item .content h1 {
                margin: 0;
                color: var(--color-motion-orange);
            }

                .hero .list .item .content h1::before {
                    content: 'Motion in \A';
                    font-size: var(--s3);
                    color: var(--color-light);
                    white-space: pre;
                }

            .hero .list .item .content p {
                font-size: var(--s1);
                color: var(--color-light);
                line-height: var(--s2);
            }

        .hero .list .item .linkbutton {
            margin-top: var(--s2);
            max-width: 150px;
            text-align: center;
            justify-content: center;
            justify-self: center;
        }

        .hero .list .item.active {
            opacity: 1;
            z-index: 10;
        }

@keyframes showHeroTile {
    to {
        transform: translateX(0);
        opacity: 1;
    }
}

.hero .list .item.active p:nth-child(1),
.hero .list .item.active h1,
.hero .list .item.active p:nth-child(3),
.hero .list .item.active p,
.hero .list .item.active button,
.hero .list .item.active .linkbutton {
    transform: translateX(30px);
    opacity: 0;
    animation: showHeroTile .5s .3s ease-in-out 1 forwards;
}

.hero .list .item.active h1 {
    animation-delay: .5s;
}

.hero .list .item.active p:nth-child(3), .hero .list .item.active p {
    animation-delay: .6s;
}

.hero .list .item.active button, .hero .list .item.active .linkbutton {
    animation-delay: .7s;
}

hero .heroNav {
    position: absolute;
    left: 50%;
    bottom: 5vh;
    transform: translateX(-49%);
    width: 90vw;
    max-width: var(--grid-max);
    z-index: 10;
}

    hero .heroNav nav {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
        grid-column-gap: 1rem;
        grid-row-gap: 0.5rem;
        justify-items: start;
        justify-content: space-around;
        align-items: center;
        align-content: space-around;
        position: relative;
        margin: 1.5vh auto;
    }

    hero .heroNav button {
        cursor: pointer;
        border: none;
        background: none;
        font-family: 'Gabarito';
        font-weight: bold;
        font-size: clamp(var(--s1), calc(var(--s2) * 0.75), var(--s2));
        text-decoration: none;
        color: #ffffff;
        transition: background-size .5s;
        margin-top: 0;
        padding: 0.5rem 1rem;
    }

        hero .heroNav button:hover {
            color: var(--color-motion-orange);
            text-decoration-color: var(--color-motion-orange);
            text-decoration: underline;
            text-underline-offset: 1rem;
        }

        hero .heroNav button.active {
            color: var(--color-motion-orange);
        }

        hero .heroNav button.item {
            white-space: nowrap;
        }

.half-hero {
    min-height: 50dvh;
    max-height: 50dvh;
    width: 100vw;
    margin-top: -10vh;
    margin-left: 0;
}

    .half-hero .list .item .content h1::before {
        content: '';
    }

    .half-hero .list .item .content h1 {
        opacity: 1;
        animation: none;
    }

    .half-hero .list .item {
        position: absolute;
        inset: 0 0 0 0;
        opacity: 1;
    }

@media (width <= 50em) {
    hero .heroNav nav {
        bottom: 0;
    }

    .hero .list .item .content {
        top: 15vh;
    }

        .hero .list .item .content p {
            font-size: var(--s0);
        }
}
