html.lenis,
html.lenis body {
    height: auto;
}

html {
    height: 100%;
}

body {
    color: white;
    text-rendering: optimizeLegibility;
    font-family: ggsansRegular;
    margin: 0;
}

* {
    color-scheme: dark;
}

a {
    text-decoration: none;
    color: rgb(222, 197, 255);
}

a:hover {
    text-decoration: underline
}

.button {
    display: flex;
    align-items: center;
    justify-content: center;

    color: #23272a;
    background-color: #ffffffde;
    backdrop-filter: blur(5px);

    border-radius: 40px;
    padding: 7px 14px;
    font-size: 16px;
    line-height: 24px;
    transition: all .2s;
    width: max-content;
    text-decoration: none !important;
    font-weight: 600;
}

.button:hover {
    transform: scale(1.05);
}

.button:active {
    transform: scale(0.95);
}

.button-back {
    margin-top: 1.5rem;
    width: 4rem;
    text-align: center;
    height: 2rem;
}

.material-symbols-outlined {
    margin-right: 0.3rem;
}

.flex-center {
    display: flex;
    align-items: center;
    justify-content: center;
}

.content {
    z-index: 0;
    width: 90%;
    max-width: 800px;
    margin-top: 3rem;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    padding-bottom: 1rem;
}

.content .text-content {
    max-width: 22rem;
}

.content .text {
    max-width: 22rem;
    margin-top: 4rem;
    padding-bottom: 6px;
    position: relative;
    text-align: left;
    font-size: 30px;
}

.content .text h1 {
    color: rgba(225, 225, 225, 0.05);
    filter: drop-shadow(2px 4px 6px black) brightness(1.3);

    font-family: 'Raleway';
    font-weight: 900;
    margin-bottom: 0;

    background-image: url('/files/img/space.jpg');
    background-repeat: repeat;
    background-clip: text;

    mask-size: 200%;
    mask-image: linear-gradient(-75deg, rgba(0, 0, 0, .6) 30%, #000 50%, rgba(0, 0, 0, .6) 70%);
    -webkit-text-stroke: 1px rgba(225, 225, 225, 0.308);

    animation: shine 2s infinite, animate 10s ease-in-out infinite alternate;
}

@keyframes shine {
    from {
        -webkit-mask-position: 150%;
    }

    to {
        -webkit-mask-position: -50%;
    }
}

@keyframes animate {
    from {
        background-position-x: center;
    }

    to {
        background-position-x: right;
    }
}

.content .small-text {
    font-family: ggsansRegular;
    font-size: 20px;
}

.content .top-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

.content .showcase {
    background-color: #181818;
    transform-style: preserve-3d;
    width: 400px;
    height: 400px;
    border-radius: 10px;
    transform: perspective(1000px);
    box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.6);
}

.content .showcase-text {
    background-image: url("/files/img/showcase_text.png");
    width: 400px;
    height: 400px;
    margin-left: 1rem;
    transform: translateZ(0px);
    transition: 500ms transform;
}

.content .showcase-text:hover {
    transform: translateZ(50px) !important;
}

.content .download-buttons {
    margin-top: 2rem;
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}

.content .download-buttons a {
    font-size: large;
    padding: 16px 32px;
    font-weight: 600;
    width: 11rem;
    margin-top: 20px;
    cursor: pointer;
}

/* Download dev */
.content .download-buttons a:nth-child(2) {
    margin-top: 1rem;
    background-color: #ffffff3f;
    backdrop-filter: blur(5px);
    color: white;
}

.disabled {
    opacity: 0.5;
    cursor: not-allowed !important;
}

/* Analytics */
.content.analytics {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    margin-top: 1rem;
    gap: 0.5rem;
}

.content.analytics h1 {
    text-align: center;
    width: 200px;
    margin: 0;
    opacity: 0;
    transition: 700ms all;
}

.content.analytics p {
    font-family: monospace;
    margin: 0;
    margin-top: 0.4rem;
}

.content.analytics h1 span .odometer-numbers {
    font-family: system-ui;
}

.social-content h1 {
    display: flex;
    align-items: center;
}

.social-content h1 span {
    font-size: 30px;
    margin-right: 0.5rem;
    color: #cae2ff;
}

.social-content h3 {
    font-family: ProductSans;
    font-weight: 300;
}

.social-content #discord {
    display: block;
}

.social-content .social-links {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 1rem;
}

.social-content .social-links a {
    margin-top: 0rem;
    width: 160px;
}

.social-content .social-links img {
    width: 20px;
    margin-right: 0.5rem;
}

#discord {
    text-align: center;
    margin-bottom: -1.5rem;
}


/* Text block */
.text-block {
    width: 90%;
    max-width: 800px;
    margin: auto;
    margin-bottom: 2rem;
}

.text-block h1 {
    display: flex;
    align-items: center;
    text-transform: uppercase;
    justify-content: center;
}

.text-block h1 span {
    font-size: 30px;
    margin-right: 0.5rem;
    color: #cae2ff;
}

.text-block h3 {
    font-weight: 300;
    text-align: left;
    display: flex;
    align-items: center;
    justify-content: center;
}

.text-block h3 a {
    display: contents;
}

.footer {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    height: 75px;
    background-color: #13151649;
    backdrop-filter: blur(5px);
    padding: 2rem 0 2rem 0;
    margin-top: 2rem;
}

.footer h1 {
    margin: 0.5rem 0;
    font-size: 1.7em;
}

/* adaptivity */
@media only screen and (max-width: 500px) {
    .content .showcase {
        width: 200px;
        height: 200px;
    }

    .content .showcase-text {
        width: 200px;
        height: 200px;
        background-size: cover;
    }

    .content .top-content {
        justify-content: center
    }

    .content .text {
        font-size: 20px;
    }

    .content .text h1 {
        text-align: center;
    }

    .content .small-text {
        text-align: center;
    }
}

@media only screen and (max-width: 870px) {
    .content .top-content {
        flex-direction: column
    }
}

@media only screen and (max-width: 590px) {
    .social-content .social-links .button {
        font-size: 12px;
    }
}


/* fonts */
@font-face {
    font-family: ProductSans;
    src: url("/files/fonts/ProductSansRegular.woff2") format("woff2");
}

@font-face {
    font-family: ProductSansBold;
    src: url("/files/fonts/ProductSansBold.woff2") format("woff2");
}

@font-face {
    font-family: ggsansRegular;
    src: url("/files/fonts/ggsansRegular.woff2") format("woff2");
}

@font-face {
    font-family: ggsansBold;
    src: url("/files/fonts/ggsansBold.woff2") format("woff2");
}

@font-face {
    font-family: Raleway;
    src: url("/files/fonts/Raleway-Black.woff2") format("woff2");
}