*,
::after,
::before {
    box-sizing: border-box
}

html {
    -webkit-tap-highlight-color: transparent;
    overflow-y: scroll;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%
}

a,
body,
h1,
h2,
h3,
h4,
h5,
h6,
.link {
    color: var(--primary)
}

body {
    font-family: -apple-system, BlinkMacSystemFont, segoe ui, Roboto, Oxygen, Ubuntu, Cantarell, open sans, helvetica neue, sans-serif;
    font-size: 18px;
    line-height: 1.6;
    word-break: break-word;
    background: var(--theme)
}

h1,
h2,
h3,
h4,
h5,
h6 {
    line-height: 1.2
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
    margin-top: 0;
    margin-bottom: 0
}

:root {
    --main-width: 780px;
    --main-padding: 1.4em;
    --header-top-gap: 2rem;
    --header-bottom-gap: 2rem;
    --font-body: 'Literata', Georgia, Cambria, 'Noto Serif', 'Droif Serif', ui-serif, serif;
    --h1-margin-top: 2rem;
    --h1-margin-bottom: 1.5rem;
    --h2-margin-top: 2rem;
    --h2-margin-bottom: 1.5rem;
    --hx-margin-top: 1.5rem;
    --hx-margin-bottom: 1rem;
    --p-margin-top: 1rem;
    --p-margin-bottom: 1rem;
    --h1-font-size: 2em;
    --h2-font-size: 1.8em;
    --hx-font-size: 1.3em;
    --p-font-size: 1em;
    --p-line-height: 1.5em;
    --social-icons-bottom-margin: 3rem;
    --footer-height: 3rem;
    --content-height: calc(100vh - var(--footer-height))
}

@media screen and (max-width:1024px) {
    :root {
        --main-width: 750px;
        --header-top-gap: 1rem
    }
}

@media screen and (max-width:640px) {
    :root {
        --header-top-gap: 1rem;
        --social-icons-bottom-margin: 0rem
    }
}

@font-face {
    font-family: literata;
    src: url(/fonts/Literata/Literata-Light.woff2)format('woff2');
    font-weight: light;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: literata;
    src: url(/fonts/Literata/Literata-LightItalic.woff2)format('woff2');
    font-weight: light;
    font-style: italic;
    font-display: swap
}

@font-face {
    font-family: literata;
    src: url(/fonts/Literata/Literata-SemiBold.woff2)format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: literata;
    src: url(/fonts/Literata/Literata-SemiBoldItalic.woff2)format('woff2');
    font-weight: 700;
    font-style: italic;
    font-display: swap
}

html {
    scroll-behavior: smooth
}

body {
    font-family: var(--font-body);
    margin: auto;
    max-width: var(--main-width);
    padding-left: var(--main-padding);
    padding-right: var(--main-padding);
    color: var(--content-primary);
    background: var(--background);
    min-height: var(--content-height) !important
}

h1 {
    margin-top: var(--h1-margin-top);
    margin-bottom: var(--h1-margin-bottom);
    font-size: var(--h1-font-size)
}

h2 {
    margin-top: var(--h2-margin-top);
    margin-bottom: var(--h2-margin-bottom);
    font-size: var(--h2-font-size)
}

h3,
h4,
h5,
h6 {
    font-size: var(--hx-font-size);
    margin-top: var(--hx-margin-top);
    margin-bottom: var(--hx-margin-bottom)
}

p {
    margin-top: var(--p-margin-top);
    margin-bottom: var(--p-margin-bottom);
    font-size: var(--p-font-size);
    line-height: var(--p-line-height)
}

a, .link {
    text-decoration: underline
}

header {
    padding-top: var(--header-top-gap);
    margin-bottom: var(--header-bottom-gap)
}

h1 {
    font-size: 2.6em;
    font-weight: 700;
    margin-bottom: 0;
    margin-top: 0
}

h1 a, h1 .link {
    text-decoration: none
}

.social-icons {
    padding: 12px 0;
    margin-bottom: var(--social-icons-bottom-margin)
}

.social-icons a, .social-icons .link {
    text-decoration: none
}

.social-icons a:not(:last-of-type) {
    margin-inline-end: 12px
}

.social-icons a svg, .social-icons .link svg {
    height: 20px;
    width: 20px
}

:root {
    --content-primary: rgb(36, 36, 36);
    --background: rgb(255, 255, 255)
}

@media (prefers-color-scheme: dark) {
    :root {
        --content-primary: rgb(218, 218, 218);
        --background: rgb(20, 20, 20)
    }

    input {
        color-scheme: dark
    }
}
