/*Urbanist fonts*/
@font-face {
    font-family: "Urbanist";
    font-weight: 700;
    src: url("/fonts/Urbanist-Bold.woff2") format("woff2");
}
@font-face {
    font-family: "Urbanist";
    font-weight: 600;
    src: url("/fonts/Urbanist-Medium.woff2") format("woff2");
}
@font-face {
    font-family: "Urbanist";
    font-weight: 500;
    src: url("/fonts/Urbanist-Regular.woff2") format("woff2");
}
@font-face {
    font-family: "Urbanist";
    font-weight: 300;
    src: url("/fonts/Urbanist-Light.woff2") format("woff2");
}
@font-face {
    font-family: "Urbanist";
    font-weight: 200;
    src: url("/fonts/Urbanist-ExtraLight.woff2") format("woff2");
}
@font-face {
    font-family: "Urbanist";
    font-weight: 100;
    src: url("/fonts/Urbanist-Thin.woff2") format("woff2");
}

/*JetBrains Mono fonts*/
@font-face {
    font-family: "JetBrains";
    font-weight: 500;
    src: url("/fonts/JetBrainsMono-Regular.ttf") format("truetype");
}

html {
    font-family: system-ui, sans-serif;
    background-color: #f6f6f6;
    margin: 0;
    padding: 0;
}
html * {
    box-sizing: border-box;
}
body {
    margin: 0;
    padding: 0;
    position: relative;
    min-height: 100%;
}
html,
body {
    height: 100vh;
    overflow-y: scroll;
}
code,
pre {
    font-family: JetBrains;
    font-weight: 500;
}
main {
    padding: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: Urbanist;
    color: #4b4b4b;
}
h2 {
    font-size: 2.3rem;
    font-weight: 400;
    margin-top: 20pt;
    margin-bottom: 16pt;
}
h3 {
    font-size: 1.9rem;
    font-weight: 200;
    margin-top: 10pt;
    margin-bottom: 6pt;
}
h4 {
    font-size: 1.4rem;
    font-weight: 200;
    margin-top: 10pt;
    margin-bottom: 8pt;
}
h5 {
    font-size: 1.2rem;
    font-weight: 200;
    margin-top: 2pt;
    margin-bottom: 2pt;
}
header h1,
header h2 {
    margin-top: 0;
    margin-bottom: 0;
}
a {
    color: black;
}
a:visited {
    color: rgb(67, 16, 97);
}
li {
    margin-bottom: 4pt;
}
main {
    margin: auto;
    max-width: 950px;
    padding-left: 10pt;
    padding-right: 10pt;
}
img {
    max-width: 100%;
}
.row {
    display: flex;
}
.column {
    display: flex;
    flex-direction: column;
}
.invisible {
    display: none !important;
}
.visually-hidden {
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
}
.instructions img {
    display: block;
}
