:root {
    --bg-color: rgb(230,240,240);
    --color: black;
}

@font-face {
    font-family: marist;
    src: url('/assets/fonts/ABC-Marist/OTF/ABCMarist-Book.otf');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: marist;
    src: url('/assets/fonts/ABC-Marist/OTF/ABCMarist-BookItalic.otf');
    font-weight: normal;
    font-style: italic;
}

* {
    box-sizing:border-box;
}

img {
    width:100%;
}

html {
    height:100%;
}

body {
    font-family: marist, Times, serif;
    font-weight: normal;
    font-size: 22px;
    letter-spacing: 0.15px;
    line-height:1.4em;
    color: var(--color);
    background-color:var(--bg-color);

    margin:0;
    padding:0;
    overflow:hidden;
}

/* TYPOGRAPHIC STYLINGS */
h1, h2, p, strong {
    margin: 0;
    padding: 0;
    line-height: normal;
    font-size: inherit;
    font-weight: inherit;
    position:relative;
}

/* SPACING */
.unit {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1em;
  align-content: start;
}


i {
    font-style: italic;
}

a {
    text-decoration: none;
    color: var(--color);
}

.icon, a {
    cursor: pointer;
}

a:hover {
    text-decoration: underline;
}

/* CONTAINER */
.container {
    padding:1em;
    width:100%;
    height:100dvh;

    overflow-y:scroll;

    display: grid;
    grid-template-columns: 1fr;
    justify-content: center;
    justify-items: center;
    position:relative;
}

/* SCROLLBAR */
::-webkit-scrollbar {
    width: 8px;
}
  
::-webkit-scrollbar-track {
    background: transparent; 
}
   
::-webkit-scrollbar-thumb {
    background: var(--color); 
}

.wrapper {
    width:100%;
    max-width: 800px;
}

/* STORIES */
.story {
    margin-bottom:4em;
}

.text {
    margin-top:10em;
}

.section-container, .chapter-container {
    margin: 10em 0 1em 0;
}

.return-to-top {
    position:fixed;
    z-index:10;
    bottom: .5em;
    right: .5em;
    display:none;
    background-color:rgb(230,240,240);
    padding:.25em;
    border:1px solid black;
}

/* GENERAL */
.visible {
    display:block;
}


/* MEDIA QUERIES */
@media screen and (max-width: 800px) {

    .story {
        margin-bottom:10em;
    }

    body {
        font-size: 20px;
    }
}