:root {
    /* backgrounds */
    --color-background: #ffffff;
    --color-background-alternative: #2b2b2b;
    --color-background-alternative-light: #dbd9d9;
    /* accents */
    --color-primary: #b66ba9; /* Bodacious */
    --color-primary-alternative: #F7CFE1; /* Cherry blossom */
    /* neutral */
    --color-neutral: #ebe1e9;
    --color-neutral-alternative: #6b6569;
    --color-text-neutral: #2b2b2b;
    --color-text-neutral-alternative: #f1f1f1;
}

body {
    margin: 0px;
    padding: 0px;
    padding: 0px;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: start;
    background-color: var(--color-background);
}

h1 {
    color: var(--color-primary);
    font-size: 2rem; /* 32px */
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}

h2 {
    color: var(--color-text-neutral);
    font-size: 1.5rem; /* 24px */
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}

h3 {
    color: var(--color-text-neutral);
    font-size: 1rem; /* 16px */
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}

h4, p, span, a {
    color: var(--color-text-neutral);
    font-size: 0.875rem; /* 14px */
    margin: 0px;
    line-height: 1.6;
}

html, body {
    font-family: 'DM Sans', Helvetica, sans-serif;
}
a {
    text-decoration: none;
}
a:hover {
    color: var(--color-primary);
    text-decoration: underline;
}

/* DARK MODE */
@media (prefers-color-scheme: dark) {
    body {
        background: var(--color-background-alternative);
    }

    h1 {
        color: var(--color-primary-alternative);
    }

    h2, h3, h4, p, span, a {
        color: var(--color-text-neutral-alternative);
    }
        a:hover {
            color: var(--color-primary-alternative);
        }
}

