/* Imports */

@font-face {
    font-family: "Space Grotesk";
    font-style: normal;
    font-weight: 300 700;
    font-display: swap;
    src: url(../../sources/fonts/Space_Grotesk.woff2) format("woff2");
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


:root {
/* Font Variables */

--f-text: "Space Grotesk", sans-serif;
--f-headings: "Space Grotesk", sans-serif;
}


/* Set font-family and basic color for all styles */

p,
a,
li {
    font-family: var(--f-text);
    color: var(--c-text);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--f-headings);
    color: var(--c-text);
}


/* Set individual styles for headlines and text */

h1 {
    font-size: 6rem;
    line-height: 1;

    font-weight: 700;

    margin-bottom: .5em;
}

h2 {
    font-size: 4rem;
    line-height: 1.125;

    font-weight: 500;

    margin-bottom: .5em;
}

h3 {
    font-size: 3rem;
    line-height: 1.125;

    font-weight: 550;

    margin-bottom: .5em;
}

h4 {
    font-size: 1.25rem;
    font-weight: 600;

    margin-bottom: .5em;
    margin-top: 1.25em;

    color: var(--c-text);
    opacity: .75;
}

p {
    font-size: 1.25rem;
    line-height: 1.35;

    font-weight: 300;

    margin-bottom: .5em;
}

strong {
    font-weight: 500;
}

a {
    font-size: 1.25rem;
    font-weight: 300;
    margin-bottom: .5em;
    text-underline-offset: .1em;
    color: var(--c-highlight);
    transition: color .5s cubic-bezier(.4,.01,.25,1);
}

a:hover {
    color: var(--c-highlight-darker);
}

a:focus {
    color: var(--c-highlight-darker);
}

/* Change text selection color */

::selection {
    background-color: hsla(var(--c-highlight-h), var(--c-highlight-s), var(--c-highlight-l), .5);
}

::-moz-selection {
    background-color: hsla(var(--c-highlight-h), var(--c-highlight-s), var(--c-highlight-l), .5);
}