/* Base font styles */
@font-face {
    font-family: "Montserrat";
    src: local("Montserrat"),
        url("/static/epiphany/fonts/Montserrat-Regular.ttf"), format("truetype");
    font-display: swap;
}

@font-face {
    font-family: "Nunito";
    src: local("Nunito"), url("/static/epiphany/fonts/Nunito-Regular.ttf"),
        format("truetype");
    font-display: swap;
}

@font-face {
    font-family: "Sometype Mono";
    src: local("Sometype Mono"),
        url("/static/epiphany/fonts/SometypeMono-Regular.ttf"),
        format("truetype");
    font-display: swap;
}

@font-face {
    font-family: "Source Code Pro";
    src: local("Source Code Pro"),
        url("/static/epiphany/fonts/SourceCodePro-Regular.ttf"),
        format("truetype");
    font-display: swap;
}

html {
    overflow-x: hidden; /* Prevent horizontal scrolling */
    line-height: 1.5; /* Provides good readability */
    max-width: 100%;
    font-family: "Sometype Mono", "Source Code Pro", "Montserrat", "Nunito",
        serif;
}

body {
    background-color: #001626;
    color: #ced4da;
    overflow-x: hidden; /* Prevent horizontal scrolling */
}

/* Heading levels */
h1 {
    font-size: 2em; /* 32px */
    font-weight: bold;
    margin: 0.67em 0;
}

h2 {
    font-size: 1.5em; /* 24px */
    font-weight: bold;
    margin: 0.75em 0;
}

h3 {
    font-size: 1.17em; /* ~18.72px */
    font-weight: bold;
    margin: 0.83em 0;
}

h4 {
    font-size: 1em; /* 16px */
    font-weight: bold;
    margin: 1.12em 0;
}

h5 {
    font-size: 0.83em; /* ~13.28px */
    font-weight: bold;
    margin: 1.5em 0;
}

h6 {
    font-size: 0.67em; /* ~10.72px */
    font-weight: bold;
    margin: 1.67em 0;
}

/* Paragraphs */
p {
    font-size: 1rem; /* 16px */
    margin: 1em 0;
}

/* Lists */
ul,
ol {
    font-size: 1rem; /* 16px */
    margin: 1em 0;
    padding-left: 1.5em; /* Indent list items */
}

li {
    margin-bottom: 0.5em; /* Space between list items */
}

/* Links */
a {
    font-size: 1rem; /* 16px */
    text-decoration: none;
}

/* Small text */
small {
    font-size: 0.8rem; /* ~12.8px */
}

/* Captions */
caption {
    font-size: 0.9rem; /* ~14.4px */
    text-align: center;
}

/* Code */
code {
    font-size: 0.9rem; /* ~14.4px */
    margin: 1em 0;
}
