main {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: column;
    flex: 1;

    /* Herosection */
    .hero-overlay {
        position: absolute;
        inset: 0;

        background: linear-gradient(90deg, rgba(1, 0, 22, 0.95) 0%, rgba(1, 0, 22, 0.85) 30%, rgba(1, 0, 22, 0.4) 60%, rgba(1, 0, 22, 0) 100%);
    }
    #hero {
        background-image: url("../assets/img/nion_forge_hero.jpg");
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        min-height: 70dvh;
        width: 100%;
        margin-bottom: 0;

        display: flex;
        justify-content: center;

        padding-top: 80px;

        #tsparticles {
            position: absolute;
            inset: 0;
            z-index: 0;
            pointer-events: none;
        }

        .hero-content {
            padding: 0 80px;
            display: flex;
            flex-direction: column;
            z-index: 1;

            .hero-logo {
                width: 500px;
                left: -80px;
            }

            .hero-primary-text {
                font-size: 24px;
                font-weight: 600;
                text-transform: uppercase;
                color: #00eaff;
                margin-bottom: 20px;
            }

            .hero-secondary-text {
                font-size: 22px;
                font-weight: 400;
                margin-bottom: 20px;
            }

            .hero-button-container {
                display: flex;
                flex-direction: row;
                padding: 30px 0;
                gap: 30px;
            }
        }
    }
    #hero::after {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        height: 250px;
        background: linear-gradient(to bottom, rgba(1, 0, 22, 0), rgba(1, 0, 22, 1));
        pointer-events: none;
    }

    /* game section */
    .game-section {
        padding: 0 80px;
        display: flex;
        flex-direction: column;

        .game-section-content {
            display: flex;
            flex-direction: row;
            justify-content: space-around;
            gap: 40px;

            div {
                width: 70%;
                p {
                    font-weight: 100;
                    line-height: 1.5;
                    color: #d8d8e6;
                }
            }
            .game-section-image {
                width: 30%;
                object-fit: contain;
            }
        }
    }

    /* media section*/
    .game-media {
        padding: 0 80px;
        h2 {
            text-align: center;
        }
    }

    /* roadmap section*/
    .game-roadmap {
        padding: 0 80px;

        h2 {
            text-align: right;
        }
        img {
            width: 100%;
            box-shadow: 0 0 30px rgba(0, 234, 255, 0.08);
            border: 1px solid rgba(0, 234, 255, 0.15);
            transition: transform 0.2s ease;
        }
        img:hover {
            transform: scale(1.005);
        }
    }

    .game-team {
        padding: 0 80px;
        h2 {
            text-align: center;
        }
        p {
            font-size: clamp(16px, 2dvw, 22px);
            font-weight: 100;
            text-align: center;
        }
        a {
            color: #00ff9d;
        }
        a:hover {
            color: #ff9600;
        }
    }

    .game-community {
        padding: 0 80px;
        font-weight: 600;
        p {
            font-size: clamp(16px, 3dvw, 24px);
            font-weight: 100;
        }
    }
}

/* mobile */
@media (max-width: 767px) {
    main {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        flex-direction: column;
        flex: 1;

        /* Herosection */
        .hero-overlay {
            position: absolute;
            inset: 0;

            background: linear-gradient(90deg, rgba(1, 0, 22, 0.95) 0%, rgba(1, 0, 22, 0.85) 30%, rgba(1, 0, 22, 0.4) 60%, rgba(1, 0, 22, 0) 100%);
        }
        #hero {
            min-height: 55dvh;
            .hero-content {
                padding: 0 20px;
                align-items: center;
                .hero-logo {
                    width: clamp(300px, 80dvw, 500px);
                    left: 0;
                }

                .hero-primary-text {
                    font-size: 20px;
                    text-align: center;
                    margin-bottom: 12px;
                }

                .hero-secondary-text {
                    font-size: 16px;
                    text-align: center;
                }

                .hero-button-container {
                    flex-direction: column;
                    padding: 20px 0;
                    gap: 14px;
                    span {
                        font-size: 16px;
                    }
                }
            }
        }

        /* game section */
        .game-section {
            padding: 0 20px;
            .game-section-content {
                flex-direction: column;
                align-items: center;
                justify-content: flex-start;
                gap: 40px;

                div {
                    width: 100%;
                }
                .game-section-image {
                    width: 50%;
                }
            }
        }

        /* media section*/
        .game-media {
            padding: 0 20px;
        }

        /* roadmap section*/
        .game-roadmap {
            padding: 0 20px;
            h2 {
                text-align: center;
            }
        }

        .game-team {
            padding: 0 20px;
        }

        .game-community {
            padding: 0 20px;
        }
    }
}
