* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    list-style: none;
    font-family: "Poppins", sans-serif;
}

body {
    background-color: #000;
    color: #fff;
    font-size: 16px;
    overflow: hidden;
}

header {
    position: fixed;
    width: 90vw;
    left: 50%;
    transform: translateX(-50%);
    display: grid;
    align-items: center;
    grid-template-columns: 1fr 600px;
    gap: 10%;
    z-index: 2;

    & img {
        width: 250px;
    }

    & nav {
        & ul {
            display: grid;
            grid-template-columns: repeat(3, 200px);

            & li {
                & a {
                    text-decoration: none;
                    color: #fff;

                    &:hover {
                        color: #000;
                        text-transform: uppercase;
                    }
                }
            }
        }
    }

    & .hidden {
        display: none;
    }
}

section {
    background-image: radial-gradient(#7f3d9e, #6d00d9);
    height: 100vh;
    position: relative;

    & .veiculo-option {
        position: absolute;
        top: 260px;
        left: 200px;

        & select {
            background: transparent;
            width: 150px;
            height: 60px;
            border: 3px solid #000;
            border-radius: 10px;
            color: #beff1b;
            font-size: 15px;
            cursor: pointer;

            & option {
                color: black;
                width: 7rem;
                border-radius: 10px;
            }

            &:hover {
                border: 3px solid #beff1b;
            }
        }
    }

    & .list {
        width: 70vw;
        height: 100%;
        margin: auto;
        position: relative;

        & .item {
            position: absolute;
            inset: 0;

            & .car-img {
                position: absolute;
                top: 50%;
                transform: translateY(-60%);
                width: 70%;

                & img {
                    width: 100%;
                    transform: rotate(-30deg);
                }

                &::before {
                    content: '';
                    position: absolute;
                    background-color: #000;
                    width: 100%;
                    height: 100px;
                    top: 150%;
                    left: 50px;
                    border-radius: 50%;
                    filter: blur(50px);
                }
            }

            & .content {
                position: absolute;
                right: 100px;
                width: 70%;
                height: 100%;
                display: flex;
                flex-direction: column;
                justify-content: center;
                align-items: end;
                gap: 20px;

                & .car-information {
                    font-weight: bold;
                }

                & h2 {
                    font-size: 8em;
                    font-family: "League Gothic", sans-serif;
                }

                & .description {
                    color: #d9d9d9;
                    font-size: 12px;
                    text-align: right;
                    max-width: 400px;
                }

                & .information {
                    border-radius: 30px;
                    height: 35px;
                    width: 120px;
                    text-transform: uppercase;
                    border: 2px solid #791fd3;
                    background-color: #beff1b;
                    color: #000;
                    cursor: pointer;
                    font-weight: bold;
                    font-family: "League Gothic", sans-serif;
                }
            }
        }

        &::before {
            content: '';
            position: absolute;
            height: 200px;
            width: 100%;
            top: 50%;
            border-top: 1px solid #fff;
        }
    }

    & .arrows {
        width: 70vw;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -25px);
        display: flex;
        justify-content: space-between;

        & button:nth-child(1) {
            & img {
                transform: scale(-1);
            }
        }

        & button {
            top: 60%;
            width: 50px;
            height: 50px;
            border-radius: 50%;
            border: none;
            cursor: pointer;

            & img {
                width: 30px;
                margin-top: 4px;
                cursor: pointer;
            }

            &:hover {
                background-color: #beff1b;
            }
        }
    }

    & .indicators {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translateX(-50%);
        height: 200px;
        width: 90vw;
        display: flex;
        flex-direction: column;
        justify-content: end;
        gap: 15px;

        & .number {
            font-size: 5em;
            font-family: "League Gothic", sans-serif;
            position: absolute;
            left: 45%;
        }

        & ul {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
            position: relative;
            left: -70px;
            width: 20%;

            & li {
                width: 50px;
                height: 5px;
                background-color: #beff1b;
                border-radius: 5px;
                transition: 0.5;
            }

            & .active {
                background-color: #fff;
            }
        }
    }
}

section {

    & .list {
        --calculation: 1;

        & .item {
            transform: translateX(calc(100vw * var(--calculation)));
            transition: 0.5s;
            opacity: 0;

            & .car-img {
                & img {
                    transform: rotate(0);
                    transition: 0.5s;
                    transition-delay: 0.3s;
                }
            }

            & .content {

                & .car-information,
                h2,
                .description,
                .information {
                    transform: translateX(calc(200px * var(--calculation)));
                    transition: 0.7s;
                    transition-delay: 0.3s;
                    opacity: 0;
                }

                & h2 {
                    transition-delay: 0.5s;
                }

                & .description {
                    transition-delay: 0.7s;
                }

                & .information {
                    transition-delay: 0.9s;
                }
            }
        }

        & .active {
            transform: translateX(0);
            transition: 0.5s;
            opacity: 1;

            & .car-img {
                & img {
                    transform: rotate(-30deg);
                }
            }

            & .content {

                & .car-information,
                h2,
                .description,
                .information {
                    transform: translateX(0);
                    opacity: 1;
                }
            }
        }
    }
}

/* MEDIA QUERIE */
@media (max-width: 420px) {
    body {
        position: fixed;
        width: 420px;
        height: 910px;

        & header {
            position: absolute;

            & img {
                width: 34vw;
            }

            & nav {

                & ul {
                    & li {
                        display: none;
                    }
                }
            }

            & .hidden {
                width: 45vw;
                display: flex;
                cursor: pointer;
                justify-content: end;
                position: relative;
                left: 180px;
                top: -32px;

                & i {
                    font-size: 20px;
                }
            }

            & .open-menu {
                & ul {
                    align-items: center;
                    display: flex;
                    flex-direction: column;
                    position: absolute;
                    left: -2px;
                    width: 100%;
                    top: 40px;
                    color: #fff;
                    box-shadow: 0px 4px 10px #000;

                    & li {
                        display: block;

                        & a {
                            &:hover {
                                color: #000;
                                text-transform: uppercase;
                            }
                        }
                    }
                }
            }
        }

        section {

            & .veiculo-option {
                top: 150px;
                left: 20px;

                & select {
                    width: 5rem;
                    height: 35px;
                    border-radius: 4px;
                    padding-left: 2px;
                    -webkit-appearance: none;
                    /* Remove o ícone padrão do select no Safari e Chrome */
                    -moz-appearance: none;
                    /* Remove o ícone padrão do select no Firefox */
                    appearance: none;
                    /* Remove o ícone padrão do select no Edge e IE */
                    background: transparent;
                    /* Torna o fundo transparente para ocultar o ícone */

                    & i {
                        user-select: none;
                    }
                }
            }

            & .list {
                &::before {
                    border-top: none;
                }

                & .item {
                    & .car-img {
                        position: relative;
                        top: 500px;

                        &::before {
                            content: none;
                        }

                        & img {
                            position: absolute;
                            top: -250px;
                            width: 70vw;
                            transform: none;
                            height: 200px;
                            object-fit: contain;
                        }
                    }

                    & .content {

                        & .car-information {
                            font-size: 80px;
                            position: absolute;
                            font-size: 2rem;
                            left: 105px;
                            top: 200px;
                        }

                        & .description {
                            position: relative;
                            top: 150px;
                            left: 45px;
                            font-size: 10px;
                            text-align: justify;
                        }

                        & .information {
                            position: relative;
                            top: 150px;
                            align-items: center;
                        }
                    }
                }
            }

            & .arrows {
                display: none;
            }

            & .indicators {
                & .number {
                    position: relative;
                    top: -160px;
                    font-size: 3rem;
                    left: 158px;
                }

                & ul {
                    position: absolute;
                    top: 40px;
                    left: 120px;
                    width: auto;

                    & li {
                        width: 10px;
                    }
                }
            }
        }
    }
}