@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Montserrat:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

/* Variables */

:root {
    /* Colors */
    --black-background: #000000;
    --white-primary: #FFF;
    --pr-blue: #AFC3E5;

    --grey-primary: #8F8F8F;
    --grey-secondary: #444444;

    /* Font Weight */
    --bold-fw: 700;
    --semi-bold-fw: 600;
    --medium-fw: 500;
    --regular-fw: 400;

    /* Section Padding */
    --section-padding: 40px;

    /* Cursors */
    --pointer-cursor: pointer;

}

/* Reset defaults */

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

li {
    list-style: none;
}

/* General Styles */

body {
    color: var(--white-primary);
    background-color: var(--black-background);
    font-family: Montserrat, Inter, Roboto;
    overflow-x: clip;
}

nav {
    display: flex;
    justify-content: center;
}

menu {
    z-index: 2;
    position: fixed;
    display: flex;
    gap: 24px;
    margin-top: 20px;
    padding: 10px 28px;

    a {
        text-decoration: none;
    }
}

footer {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 60px 20px;
    border-top: 2px solid hsla(0, 0%, 56%, 0.18);

    gap: 51px;

    h2 {
        text-align: center;
    }

    .sub-headline {
        max-width: 680px;
        text-align: center;
    }

    .social-links {
        gap: 52px;
        flex-wrap: wrap;
        justify-content: center;
    }

    .social-link {
        a {
            padding: 10px 20px;
            border-radius: 8px;
            border: 1px solid var(--grey-secondary);
            display: flex;
            align-items: center;
            gap: 9px;
        }

        a:hover {
            background-color: var(--pr-blue);
            cursor: var(--pointer-cursor);
            transition: 0.3s;
        }

        p {
            color: var(--white-primary);
        }
    }

    .social-icon {
        width: 27px;
    }

    .copyright {
        margin-top: 16px;
        text-align: center;
    }
}

a {
    color: inherit;
    text-decoration: none;
}

/* Text Styles */

h1,
h2,
h3,
p {
    font-weight: var(--medium-fw);
}

h1 {
    font-size: calc(128rem / 16);
    /* 128px */
}

h2 {
    font-size: calc(60rem / 16);
    /* 60px */
}

h3 {
    font-size: calc(24rem / 16);
    /* 24px */
}

p {
    font-size: 1rem;
    /* 16px */
    color: var(--grey-primary);
}

/* Other Styles */

.line {
    /* background-color: hsla(0, 0%, 56%, 0.18); */
    background: linear-gradient(to right, #D9D9D9, #737373);
    opacity: 27%;
    height: 1px;
    width: 100%;
}

.glow-circle {
    z-index: -1;
    position: absolute;
    background-color: white;
    border-radius: 50%;
    filter: blur(180px);
}

.glass-effect {
    border: solid var(--grey-secondary) 1px;
    border-radius: 20px;
    background-color: hsla(0, 0%, 0%, 0.18);
    backdrop-filter: blur(4px);
}

.glass-effect.white {
    color: #000;
    border-color: #CECECE;
    background-color: hsla(0, 0%, 100%, 0.18);
}

.social-links {
    display: flex;
}

.gradient-layer {
    position: fixed;
    z-index: 1;
    width: 100%;
    height: 80px;
    background: linear-gradient(hsla(0, 0%, 0%, 1), hsla(0, 0%, 0%, 0));
    color: transparent;
    -webkit-text-fill-color: transparent;
}

@supports (background-clip: text) or (-webkit-background-clip: text) {
    .gradient-text {
        background: linear-gradient(to right, #fff 0%, #919191 100%);
        -webkit-background-clip: text;
        background-clip: text;
        color: transparent;
        -webkit-text-fill-color: transparent;
    }
}

@media (max-width: 600px) {
    h1 {
        font-size: calc(60rem/16);
    }

    h2 {
        font-size: calc(40rem/16);
    }

    h3 {
        font-size: calc(20rem/16);
    }

    p {
        font-size: calc(14rem/16);
    }

    footer {
        .social-icon {
            width: 20px;
        }

        .copyright {
            font-size: 14px;
        }
    }
}