@font-face {
    font-family: "D3 Circuitism";
    src:
        local("D3 Circuitism"),
        url("D3Circuitism-x310.ttf") format("truetype");
}

@font-face {
    font-family: "Ferrite Core DX Black";
    src:
        local("Ferrite Core DX Black"),
        url("FerriteCoreDX-Black.otf") format("opentype");
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
}

nav {
    width: 100%;
    height: 100vh;

    position: relative;

    background-color: #0D75C7;

    overflow: hidden;
    clip-path: inset(0 0 0 0); /* so annoying... the "scroll down" box won't clip without this */
    z-index: 1;

    & > div.pattern {
        position: absolute;
        width: calc(100% - 16px);
        height: 96px;

        padding: 8px;

        background-clip: content-box;
    
        background-image: repeating-linear-gradient(45deg, transparent, transparent 16px, #eee 16px, #eee 32px);
    }

    & > ul.buttons {
        display: flex;
        flex-direction: column;
        justify-content: center;

        position: absolute;
        left: 24px;

        height: 100vh;

        margin: 0;
        padding: 0;


        & > li {
            user-select: none;
            list-style-type: none;
            cursor: pointer;

            font-family: "D3 Circuitism";
            font-size: 128px;

            position: relative;
            left: 24px;

            transform: skewX(-20deg);

            color: #eee;

            transition:
                font-size 0.2s,
                left 0.1s,
                transform 0.2s;

            &:hover {
                left: 48px;
                font-size: 196px;
                transform: skewX(0deg);
            }
        }
    }

    & > div.bottom {
        position: absolute;
        left: 8px;
        bottom: -96px;

        font-family: "Ferrite Core DX Black";
        font-size: 312px;

        user-select: none;
        
        color: #eee;
        -webkit-text-stroke: 2px #eee;
        -webkit-text-fill-color: transparent;
    }

    & > a.scroll {
        display: flex;
        align-items: center;
        gap: 8px;

        padding-left: 10px;
        padding-right: 10px;
        padding-top: 8px;
        padding-bottom: 8px;

        background-color: #0D75C7;

        position: fixed;
        right: 8px;
        bottom: 8px;
        
        border: 2px dashed #eee;
        text-decoration: none;

        & svg {
            fill: #eee;
        }

        & span {
            font-family: "Inter";
            font-size: 16px;
            font-weight: 900;
            letter-spacing: 1px;
            color: #eee;
        }
    }
}

main {
    background-color: #eee;

    overflow: hidden;

    min-height: 100vh;
    
    font-family: "Inter";
    font-size: 24px;
    letter-spacing: -1.5px;

    padding-bottom: 72px; /* Give footer some space :) */
    box-sizing: border-box;

    h1, h2, h3, h4, h5, h6, p {
        padding-left: 24px;
        padding-right: 24px;
        margin: 0 auto;
        max-width: 1000px;
    }

    h1, h2, h3, h4, h5, h6 {
        margin-top: 16px;
        margin-bottom: 16px;

        &::before {
            padding-left: 8px;
            padding-right: 12px;
            content: "•";
        }
    }

    h1 {
        font-size: 64px;
        font-weight: 900;

        letter-spacing: -5px;
        word-spacing: 8px;
    }

    h2 {
        font-size: 48px;
        font-weight: 800;

        letter-spacing: -4px;
        word-spacing: 6px;
    }

    hr {
        border: 0px none;
        height: 8px;
        background-image: repeating-linear-gradient(45deg, transparent, transparent 4px, #000 4px, #000 8px);
    }
    
    & footer {
        background-color: #eee;
        position: fixed;
        bottom: 0;
        width: 100%;
    
        margin-top: auto;
        font-size: 16px;

        & hr {
            margin-top: 0;
        }

        & p {
            margin-top: 8px;
            margin-bottom: 8px;
        }

        & strong {
            font-size: 20px;
            font-weight: 900;
            letter-spacing: -1px;
        }
    }

    & p:not(:last-child) {
        margin-bottom: 8px;
    }

    & a {
        color: oklch(50% 0.16 250);

        &:visited {
            color: oklch(50% 0.16 300);
        }
    }
}

@supports (initial-letter: 5) {
    main > p::first-letter {
        font-weight: 300;
        initial-letter: 2;
        margin-right: 0.2em;
    }
}

