@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Moul&family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');

:root {
    --green: rgb(115, 192, 115);
    --darkGrey: rgb(30, 30, 30);
    --blue: rgb(113, 182, 220);
    --red: rgb(161, 43, 43);
    --purple: rgb(166, 100, 208);
    --darkPurple: rgb(84, 47, 120);
    --orange: rgb(209, 132, 56);
}

html {
    margin: 0;
    padding: 0;
    width: 100vw;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

html::-webkit-scrollbar {
    /*Chrome, Safari, Edge*/
    display: none;
}

.rotated {
    transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    -o-transform: rotate(180deg);
}

.fa-angle-down {
    transition: all 0.5s ease;
}

@media (min-width: 768px) {
    body {
        height: auto;
        margin: 0;

        .mobile {
            display: none;
        }

        .rotated {
            transform: rotate(180deg);
            -webkit-transform: rotate(180deg);
            -ms-transform: rotate(180deg);
            -o-transform: rotate(180deg);
        }

        nav {
            position: fixed;
            top: 0px;
            display: flex;
            flex-direction: row;
            padding: 6px 32px;
            z-index: 100;
            height: 50px;
            align-items: center;
            width: calc(100vw - 64px);
            transition: 0.5s all ease;

            /* .dropdown {
                padding: 0;
                display: flex;
                flex-direction: column;
                gap: 12px;
                height: auto;

                .dropdown-items {
                    display: none;
                    flex-direction: column;
                    gap: 16px;
                    padding: 18px;
                    margin: 0 -18px;
                    border-radius: 5px;
                    width: fit-content;

                    a {
                        width: fit-content;
                    }
                }
            } */

            .link {
                font-size: 15pt;
                padding: 0;
                margin: auto 22px;
                font-family: 'Lato', sans-serif;
                text-decoration: none;
                z-index: 50;
                position: relative;
                height: auto;
            }

            .link::after {
                width: 0px;
                position: absolute;
                height: 2px;
                bottom: -3px;
                right: 0px;
                transition: ease all 0.4s;
                content: '';
                /* make the color match the different nav colors */
            }

            .link:hover::after {
                width: 100%;
                left: 0;
                right: auto;
            }

            .active::after {
                width: 100%;
            }

            img {
                height: 38px;
                margin-right: auto;
            }
        }

        .mobile-nav-button {
            display: none;
        }

        .mobile-menu {
            display: none;
        }

        h1 {
            text-align: left;
            font-family: "Lato", sans-serif;
            font-size: 7vw;
        }

        #page-loader {
            width: 100%;
            height: 0;
            background-color: white;
            transition: all ease 1.25s;
            position: fixed;
            display: none;
            bottom: 0;
            left: 0;
            z-index: 100;
        }
    }
}

@media (max-width: 768px) {

    body {
        margin: 0;
        padding: 0;
        width: 100vw;
        background-color: white;

        nav {
            display: none;
        }

        .desktop {
            display: none;
        }

        .logo {
            width: 40px;
            position: absolute;
            top: 18px;
            left: 32px;
        }

        .nav-button {
            position: fixed;
            right: 20px;
            top: 20px;
            z-index: 500;
            width: 50px;
            height: 50px;

            div {
                width: 30px;
                height: 3px;
                position: absolute;
                left: 10px;
                transition: all 1s ease;
                background-color: black;
            }

            .div1 {
                top: 18px;
            }

            .div2 {
                top: 29px;
            }
        }

        #background {
            width: 100vw;
            height: 100vh;
            top: 0;
            left: 0;
            position: fixed;
            z-index: 300;
            background-color: black;
            opacity: 0;
            transition: all 0.8s ease;
            display: none;
        }

        .mobile-menu {
            position: fixed;
            width: 0vw;
            height: 100vh;
            right: 0;
            top: 0;
            text-align: center;
            z-index: 400;
            display: none;
            flex-direction: column;
            justify-content: center;
            gap: 10vh;
            font-family: 'Lato', sans-serif;
            overflow: none;
            transition: all 1s ease;
            background-color: white;

            .pages {
                position: absolute;
                left: 10vw;
                top: 48vh;
                transform: translateY(-50%);
                text-align: left;
                width: auto;
                height: auto;
                display: flex;
                flex-direction: column;
                gap: 28px;

                a {
                    text-decoration: none;

                    h2 {
                        font-size: 8vw;
                        font-weight: 300;
                        margin: 0;
                        padding: 0;
                        opacity: 1;
                        transition: all ease .5s;
                        font-family: "Roboto", sans-serif;
                        color: black;
                    }
                }
            }

            .socials {
                width: 70vw;
                height: 10vw;
                background-color: transparent;
                bottom: 8vh;
                left: 50vw;
                position: absolute;
                transform: translateX(-50%);
                display: flex;
                gap: 25px;
                justify-content: center;

                a {
                    width: fit-content;
                    height: 100%;

                    img {
                        width: auto;
                        height: 100%;
                    }
                }
            }
        }

        h1 {
            text-align: center;
            font-family: "Helvetica", sans-serif;
            font-weight: 300;
            font-size: 10vw;
        }

    }
}