@font-face {
    font-family: "Dune Rise";
    src: url("css/Dune_Rise.ttf") format("truetype");
}

@font-face {
    font-family: "Gill Sans";
    src: url("css/Gill Sans.otf") format("opentype");
}

@font-face {
    font-family: "Hack";
    src: url("css/Hack-Regular.ttf") format("truetype");
}

/* Headings: responsive scaling */
h1 {
    font-family: "Dune Rise", sans-serif;
    font-size: clamp(28px, 5vw, 48px);
    font-weight: normal;
    border-bottom: 1px solid black;
    padding-bottom: 0.5em;
}

h2 {
    font-family: "Dune Rise", sans-serif;
    font-size: clamp(23px, 4.5vw, 40px);
    font-weight: normal;
    border-bottom: 1px solid black;
    padding-bottom: 0.5em;
}

h3 {
    font-family: "Dune Rise", sans-serif;
    font-size: clamp(20px, 4vw, 32px);
    font-weight: normal;
    border-bottom: 1px solid black;
    padding-bottom: 0.5em;
}

h4 {
    font-family: "Dune Rise", sans-serif;
    font-size: clamp(18px, 3.5vw, 28px);
    font-weight: normal;
    border-bottom: 1px solid black;
    padding-bottom: 0.5em;
}

#nav {
    font-family: "Dune Rise", sans-serif;
    font-size: clamp(14px, 2.5vw, 20px);
    text-decoration: none;
}

#cursor {
    text-decoration: underline;
}

a {
    text-decoration: none;
    color: #bf2449;
}
a:visited {
    color: #BF2449;
}

i {
    color: #BF2449;
}

/* Body text scales nicely on mobile */
body {
    font-family: "Gill Sans", sans-serif;
    font-size: clamp(16px, 3vw, 35px);
    color: black;
    font-weight: 100;
    background-color: white;
    transition: all 0.5s ease;
}

pre.src {
    font-family: "Hack", monospace;
    font-size: clamp(14px, 2.5vw, 20px);
    border-radius: 5px;
    background: rgba(19,32,27,0.87);
    color: #B8A991;
    border: 0;
    overflow-x: auto; /* handle mobile code scroll */
}

#content {
    padding: 1em;
    transition: all 0.5s ease;
}

.hacker-mode {
    font-size: 1.2em;
    color: #61ed81;
    background-color: rgba(19,32,27,0.87);
}

/* Extra tweak for very small screens */
@media (max-width: 480px) {
    body {
        line-height: 1.5;
    }
    h1, h2, h3, h4 {
        border-bottom: none; /* less clutter on tiny screens */
    }
}

img {
    margin-left: auto;
    margin-right: auto;
    height: auto;      /* maintain aspect ratio */
    display: block;    /* remove extra inline spacing */
}

#nav a.active {
    text-decoration: underline;
    cursor: default; /* shows it's current page */
}

.quick-start {
    display: inline-block;
    padding: 20px 40px;
    font-size: 24px;
    font-weight: bold;
    background-color: white;
    color: #bf2449;
    border: 2px solid #bf2449;
    border-radius: 12px;
    cursor: pointer;
    text-decoration: none;
    text-align: center;
    transition: background-color 0.3s;
}

.quick-start:hover {
    background-color: #bf2449;
    color: white;
}
