.lds-ring {
  display: inline-block;
  position: relative;
  width: 64px;
  height: 64px;
}
.lds-ring div {
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 51px;
  height: 51px;
  margin: 6px;
  border: 6px solid #000;
  border-radius: 50%;
  animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  border-color: #000 transparent transparent transparent;
}
.lds-ring div:nth-child(1) {
  animation-delay: -0.45s;
}
.lds-ring div:nth-child(2) {
  animation-delay: -0.3s;
}
.lds-ring div:nth-child(3) {
  animation-delay: -0.15s;
}
@keyframes lds-ring {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

sup {
    font-size: 0.6rem;
}

/* Just used to get to the correct position in the contents when returning, offset to get the correct story below the banner */
.content-marker {
    position: relative;
    top: -150px;
}

.baxters-prompt {
    text-align: center;
    font-size: 0.75rem;
}

#baxters-image {
    display: block;
    text-align: center;
    margin-bottom: 2rem;
}

#baxters-image img {
    width: 250px;
}

#placeholder {
    position: fixed;
    top: 50%;
    left: 50%;
    margin-left: -25px;
    margin-top: -25px; 
}

html {
    font-size: 18px;
    -webkit-text-size-adjust: none;
    -moz-text-size-adjust: none;
    -ms-text-size-adjust: none;
}
body {
    font-family: 'Lora', 'Times New Roman';
    color: #404040;
    padding: 0;
    margin: 0;
}

#story-content {
    padding: 100px 0;
    width: 550px;
    margin: 0 auto;
}

@media (max-width: 736px) {
    html {
        font-size: 36px;
    }
    #story-content {
        width: 90%;   
    }
    .contents-story-summary {
        width: 50%;
    }
}

.rudeword {
    background-color: #404040;
}

#story-content p, .story_paragraph_indent {
    text-align: justify;
}

.story_paragraph_indent {
    font-style: italic;
    padding-bottom: 0.5rem;
}

#story-starring {
    font-size: 0.9rem;
    text-align: center;
}

#story-author {
    text-align: center;
}

#story-title {
    font-size: 1.3rem;
    font-weight: bolder;
    text-align: center;
    position: -webkit-sticky;
    position: sticky;
    background-image: linear-gradient(white 70%, rgba(255, 255, 255, 0));
    padding: 15px 0 35px 0;
    margin: 0 auto;
    top: 0;
}

#story-image-outer {
    text-align: center;
    padding: 1rem 0;
}

#story-end {
    font-size: 1.2rem;
    text-align: center;
    padding-bottom: 1rem;
}

#story-next {
    text-align: center;
}

a {
    text-decoration: none;
    color: black;
    font-weight: bolder;
    outline: none;
}

a:hover {
    cursor: pointer;
    color: cornflowerblue;
    outline: none;
}

.story_chapter_heading {
    text-align: center;
    padding-top: 1rem;
}

.story_chapter_title {
    text-align: center;
    font-weight: bolder;
}

.story_context-shift {
    margin: 30px auto;
    border-top: 1px solid lightgray;
    text-align: center;
    position: relative;
    width: 200px;
}

.story_context-shift:before {
    content: '§';
    position: absolute;
    transform: translateY(-13px);
}

.story_note {
    font-style: italic;
    text-align: justify;
    opacity: 0.6;
}

#banner-image {
    text-align: center;
    background-image: linear-gradient(white 70%, rgba(255, 255, 255, 0));
    position: -webkit-sticky;
    position: sticky;
    padding: 1rem;
    top: 0;
}

.back-to-contents {
    text-align: center;
    padding-top: 1rem;
    padding-bottom: 2rem;
}

.contents-story {
    font-size: 1.2rem;
    text-align: center;
}

.contents-story-image {
    text-align: center;
    padding-bottom: 1rem;
}

.contents-story-image img {
   
}

.contents-story-title {
    padding-bottom: 0.25rem;
}

.contents-story-summary {
    font-size: 0.9rem;
    font-weight: normal;
    width: 350px;
    margin: auto;
    padding-bottom: 3rem;
    text-align: center;
}

