* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* ALL */

html {
    scroll-behavior: smooth;
}

body {
    background-color: rgb(0, 0, 0);
}

div.black {
    height: 3em;
    background: black;
}

h1,
h2,
h3,
h4 {
    font-family: "Audiowide", sans-serif;
    text-align: center;
}

h1 {
    padding: 0.5em;
    font-size: 4em;
    color: rgb(111, 26, 239);
}

h2 {
    font-size: 2em;
    color: rgb(111, 26, 239);
}

h3 {
    background-color: black;
    color: white;
    padding: 1em;
    width: 60%;
    clip-path: polygon(15% 0, 100% 0, 100% 0, 100% 60%, 85% 100%, 0 100%, 0 100%, 0 40%);
}

a {
    font-family: "Audiowide", sans-serif;
    color: white;
    font-size: 1.5em;
    text-decoration: none;
}

a:hover {
    text-decoration: line-through;
}

/* HEADER */

header {
    background: url(img/en-background.png) center/cover no-repeat;
    height: 40vh;
}

img#logo {
    height: 8em;
    padding: 2em;
}

a#buy {
    background-color: rgb(111, 26, 239);
    padding: 1em;
}

h1.active {
    padding: 0.7em;
    color: white;
}

.topnav {
    overflow: hidden;
    position: relative;
}

.topnav #myLinks {
    display: none;
}

.topnav a {
    padding: 0.5em 0.5em 0.2em;
    display: block;
    text-align: center;
    background-color: rgb(46, 6, 106);
    border: 2px solid rgb(111, 26, 239);
}

.topnav a.icon {
    position: absolute;
    right: 0;
    top: 13px;
    margin: 1em 1em 0em;
}

.active {
    margin: 1%;
}

.topnav .icon .material-symbols-outlined {
    font-size: 1em;
    font-weight: 600;
}

/* MAIN */

main {
    background: url(img/bond-background.png) center/cover no-repeat;
    background-repeat: no-repeat;
    padding: 5em;
    height: 100vh;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    background-color: rgb(222, 222, 222);
}

p {
    padding: 5em;
    color: rgb(12, 235, 255);
    font-family: "Ubuntu Mono", monospace;
    font-weight: 700;
}

img {
    display: block;
}

article {
    align-items: center;
    justify-items: center;
}

article#characters {
    padding: 2em;
    background-color: rgb(67, 86, 73);
}

article#synopsis {
    background-color: rgb(43, 81, 91);
}

article#merch {
    background-color: rgb(65, 43, 91);
}

video {
    width: 60%;
    margin: 2em;
    padding: 1.5em;
    background: black;
}

div.black,
div#characters {
    display: flex;
    align-items: center;
    flex-direction: column;
}

/* CAROUSEL */

.carousel-container {
    width: 100%;
    overflow: hidden;
    position: relative;
}

.image-carousel {
    display: flex;
    width: fit-content;
    gap: 40px;
    animation: bannermove 20s linear infinite;
}

.image-carousel img {
    height: 15em;
    width: auto;
    margin: 5em 2em;
}

.image-carousel img:hover {
    box-shadow: 2px 2px 20px rgb(232, 232, 232);
}

@keyframes bannermove {
    0% {
        transform: translateX(0);
        /* Start position */
    }

    100% {
        transform: translateX(-50%);
        /* Move left by 50% of the container's total width (half of the images) */
    }
}

/* FOOTER */

footer {
    background-color: black;
    color: white;
    padding: 2em;
}

a#fervid {
    font-family: "Climate Crisis", sans-serif;
    font-weight: 400;
    font-size: 2em;
}

h3#footer {
    width: 100%;
    font-size: 3em;
    padding-bottom: 0;
    color: rgb(67, 86, 73);
}

h4 {
    padding: 1em;
}

h5 {
    padding: 1em;
    font-family: "Ubuntu Mono", monospace;
    font-weight: 400;
    color: rgb(67, 86, 73);
}

article#footer {
    display: flex;
    justify-content: center;
}

@media screen and (min-width: 900px) {

    div.black {
        height: 5em;
    }

    /* NAV */

    nav>ul {
        list-style-type: none;
        justify-items: center;
        opacity: 90%;
        background-color: rgb(46, 6, 106);
        padding: 1.5em;
        border: 4px solid rgb(111, 26, 239);
    }

    ul {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    #navbar {
        padding: 3em 3em 0em;
        justify-content: center;
    }

    #nav {
        position: sticky;
        top: 0;
        display: grid;
        grid-template-columns: 1fr 2.5fr;
        z-index: 1000;
    }

    nav.mobile-container {
        display: none;
    }

    header {
        height: 100vh;
    }

    /* MAIN */

    main {
        height: 150vh;
    }

    article#characters {
        display: flex;
        justify-content: center;
    }

    article#main {
        display: grid;
        grid-template-columns: 1.5fr 1fr;
    }

    p {
        font-size: 2em;
    }

    h1 {
        font-size: 8em;
    }

    h2 {
        font-size: 4em;
    }

    h3 {
        font-size: 2em;
    }

    h4 {
        font-size: 1.5em;
    }

    h5 {
        font-size: 1em;
    }

    .image-carousel img {
        height: 30em;
    }
}

@media screen and (max-width: 900px) {
    #nav {
        display: none;
    }
}