/*
Modernized Style Sheet for eBooks@Adelaide web books

Goals of this cleaned edition:
- Preserve the original reading experience and ebook-specific structures.
- Organize selectors into clearer sections.
- Consolidate and expand reusable text utility classes.
- Improve maintainability without radically changing rendering intent.
*/

/* =========================================================
   Base layout and page shell
   ========================================================= */

html {
  background: #ffffff url('endpaper.jpg') repeat top left;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  overflow-x: clip;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

body {
  margin: 0;
  width: 100%;
  padding: 0;
  color: #000;
  background-color: transparent;
  font-family: Verdana, Arial, sans-serif;
  overflow-x: clip;
}

.pageWidth {
  width: 100%;
  max-width: 680px;
  margin: 0 auto;
  padding: 2em 3rem;
}

@media screen and (min-width: 769px) {
  .pageWidth {
    max-width: 640px;
  }
}

img,
picture,
figure,
svg,
canvas {
  display: block;
  max-width: 100%;
  height: auto;
  border: none;
}

/* =========================================================
   Typography and flowing text
   ========================================================= */

p {
  margin: 0 auto 0.2em;
  line-height: 130%;
  text-align: justify;
  text-indent: 0;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

p + p {
  margin-top: 1.5em;
  text-indent: 2em;
}

span.first {
  text-indent: 0;
  text-transform: uppercase;
}

h1,
h2,
h3,
h4,
h5,
h6,
div,
table {
  margin-bottom: 1em;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 1em auto;
  text-align: center;
}

h1,
h2,
h3,
h4 {
  font-weight: bold;
}

h3,
h4,
h5 {
  font-variant: small-caps;
}

h5,
h6 {
  font-size: 1em;
  font-weight: normal;
}

h1 { font-size: 2em; }
h2 { font-size: 1.4em; }
h3 { font-size: 1.3em; }
h4 { font-size: 1.2em; }
h6 { font-style: italic; }

h5 em {
  font-variant: normal;
}

a,
a:link,
a:visited {
  color: #000;
  border-bottom: 1px dotted gray;
  text-decoration: none;
}

a:hover,
a:active {
  color: red;
}

sup {
  font-size: 0.7em;
  line-height: 80%;
}

hr {
  width: 33%;
  margin: 2em auto;
  color: #ddd;
}

code,
.typed,
.mono {
  font-family: "Courier New", Courier, monospace;
}

code {
  font-size: 120%;
}

pre,
.pre {
  max-width: 100%;
  overflow-x: auto;
  text-align: left;
  text-indent: 0;
  white-space: pre-wrap;
  word-break: break-word;
  overflow-wrap: anywhere;
  font-family: "Courier New", Courier, monospace;
  font-size: 110%;
}

/* =========================================================
   Title pages and front matter
   ========================================================= */

#titlepage {
  position: relative;
  height: 47em;
  line-height: 150%;
}

#titlepage #title {
  position: absolute;
  top: 35%;
  left: 0;
  width: 100%;
  font-size: 200%;
  font-weight: normal;
}

#titlepage #author {
  position: absolute;
  top: 1em;
  left: 0;
  width: 100%;
  font-size: 3em;
  font-weight: normal;
}

#titlepage .imprint {
  position: absolute;
  bottom: 1em;
  left: 0;
  width: 100%;
  margin: 0;
}

#titlepage h1,
#titlepage h2,
#titlepage h3,
#titlepage h4,
#titlepage h5,
#titlepage h6,
#titlepage p {
  font-weight: normal;
}

#titlepage h1,
#titlepage h2 {
  line-height: 200%;
}

.titlepage {
  border: 2px solid #00609c;
  padding: 1em;
  font-weight: bold;
  text-align: center !important;
}

.titlepage h1,
.titlepage h2,
.titlepage h3,
.titlepage h4,
.titlepage p {
  margin-top: 0;
  margin-bottom: 1em;
}

.titlepage h3,
.titlepage h4 {
  font-variant: normal;
}

.titlepage p,
.titlepage > p.imprint {
  text-align: center !important;
  text-indent: 0;
}

.titlepage > p.imprint {
  margin-top: 3em;
  color: green;
  font-style: italic;
}

.titleverso {
  width: 90%;
  margin: auto;
  color: #666;
  font-size: 0.8em;
  font-family: Verdana, Arial, sans-serif;
  text-align: center !important;
}

.titleverso p {
  margin-bottom: 1em;
  text-align: center !important;
  text-indent: 0;
}

.titleverso p a,
.titleverso p a:visited {
  color: #666;
  text-decoration: none;
}

.titleverso p a:hover {
  color: #f00;
  text-decoration: underline;
}

.halftitle {
  height: 47em;
  padding-top: 20em;
}

.halftitle h1,
.halftitle h2,
.halftitle h3,
.halftitle h4,
.halftitle h5,
.halftitle h6 {
  font-size: 2em;
  line-height: 2em;
  font-weight: bold !important;
  text-align: center !important;
}

/* =========================================================
   Structural book sections
   ========================================================= */

.contents h4,
.contents h5,
.contents h6 {
  font-variant: normal;
  font-weight: normal;
  text-align: left !important;
}

.contents h5,
.contents h6,
.contents p {
  margin-left: 1em;
}

.contents p,
#contents p {
  margin-bottom: 1em;
  font-size: 0.9em;
  text-indent: 0 !important;
}

.header {
  margin-top: 0;
  margin-bottom: 3em;
}

.header h1,
.header h2,
.header h3,
.header h4,
.header h5 {
  margin-top: 0;
  margin-bottom: 1em;
  font-variant: small-caps !important;
  font-weight: bold;
  text-align: center;
}

.rubric,
.rubric p {
  margin: 1em 2em;
  font-size: 1.1em;
  font-style: italic;
  text-align: center !important;
  text-indent: 0;
}

.abstract,
.abstract p {
  margin: 1em 2em;
  font-size: 0.9em;
  font-style: italic;
  text-indent: 0;
}

.header.modern h2,
.modern h3,
.modern h4,
.modern h5,
.modern h6,
.precis h3,
.precis h4 {
  font-weight: normal;
  text-align: left;
}

.header.modern h2 { font-size: 200%; }
.modern h3,
.precis h3 { font-size: 180%; }
.modern h4,
.precis h4 { font-size: 160%; }
.modern h5 { font-size: 120%; }
.modern h6 { font-size: 110%; }

p.precis,
.precis p {
  margin: 1em 0 1em 2em;
  font-size: 110%;
  font-variant: small-caps;
  text-indent: -2em;
}

.section {
  margin-bottom: 3em;
}

.colophon p,
.docfoot,
.docinfo,
.bibliography p,
.glossary p,
.index p {
  font-family: Verdana, Arial, sans-serif;
}

.bibliography p,
.glossary p,
.index p {
  margin-bottom: 0.5em;
  padding-left: 2em;
  font-size: 0.9em;
  text-indent: -2em;
}

.colophon p {
  color: #666;
  font-size: 0.9em;
  text-align: center !important;
  text-indent: 0 !important;
}

/* =========================================================
   Quotations, notes, letters, inscriptions
   ========================================================= */

.notes,
.footnotes,
.note,
.footnote,
.inline-note {
  font-family: Verdana, Arial, sans-serif;
}

.notes,
.note,
.footnote,
.inline-note,
.footnotes p,
.footnotes li,
.footnotes h5,
.footnotes th,
.footnotes td {
  font-size: 0.8em;
}

.notes p,
.note p,
p.note,
.footnote,
.inline-note {
  text-indent: 0;
}

.notes p,
.footnotes p {
  margin-bottom: 1em;
}

.footnotes {
  margin: 1em;
  padding: 1em 0;
  border-top: 1pt solid gray;
}

.footnote,
.note p,
p.note {
  margin: 1em !important;
}

.sn,
.sidenote {
  clear: left;
  float: left;
  max-width: 20%;
  margin: 0.5em 1em 0 0;
}

.mn,
.marginal-note {
  clear: right;
  float: right;
  max-width: 20%;
  margin: 0.5em -1em 0 0.8em;
}

.sn,
.sn p,
.sidenote,
.sidenote p,
.mn,
.mn p,
.marginal-note,
.marginal-note p {
  font-size: 0.8em;
  font-style: italic;
  line-height: 100%;
  text-indent: 0;
}

.sn,
.sn p,
.sidenote,
.sidenote p {
  text-align: left;
}

.mn,
.mn p,
.marginal-note,
.marginal-note p {
  text-align: right;
}

span.popup-note,
abbr,
acronym {
  border: 1px dotted gray;
  cursor: help;
}

.screen-note {
  margin-inline: 1em;
  padding: 2pt;
  border: 1pt solid gray;
  font-size: 0.9em;
  text-indent: 0;
}

.quote,
blockquote,
.letter {
  margin: 1em !important;
}

.epigraph {
  width: 65%;
  margin: 1em auto;
  font-size: 0.9em;
  font-style: italic;
  text-align: left;
  text-indent: 0;
}

.epigraph p {
  margin: 0 0 0 2em !important;
  text-align: left;
  text-indent: -2em !important;
}

.epigraph p em {
  font-style: normal;
  font-variant: small-caps;
}

.quote p.cite,
.stanza p.cite,
.epigraph p.cite,
.epigraph cite {
  text-align: right;
}

.epigraph p.cite:before {
  content: "–";
}

.inscription,
.epitaph {
  margin: 1em;
  font-variant: small-caps;
  text-align: center !important;
}

.inscription p,
.epitaph p,
.dedication,
.dedication p {
  margin: 0;
  text-align: center !important;
  text-indent: 0;
}

.notice {
  margin: 1em auto;
  padding: 1em;
  box-shadow: 5px 5px 20px 10px #aaa;
}

.notice p,
.headline,
.headline p {
  font-weight: bold;
  text-align: center !important;
  text-indent: 0;
}

cite,
.cite {
  font-style: normal;
  font-variant: small-caps;
}

.written p,
.letter-written {
  font-style: italic;
}

.written p em,
.stage em,
li span.speaker,
span.name,
.stage span.speaker {
  font-style: normal;
  font-variant: small-caps;
}

.telegram {
  font-family: Courier, monospace;
  font-variant: small-caps;
}

.address,
.address p {
  margin: 1em 0 1em 2em;
  text-align: left;
  text-indent: -2em;
}

.signed,
.signed p,
.dateline,
.dateline p {
  text-align: right;
  text-transform: capitalize;
  font-style: italic;
}

.salut {
  font-variant: small-caps;
  text-indent: 0;
}

/* =========================================================
   Drama and dialogue
   ========================================================= */

div.scene {
  margin-bottom: 3em;
}

div.act p {
  margin-top: 0;
  margin-bottom: 0.5em;
  margin-left: 1em;
  text-indent: 0;
}

div.act p.speaker {
  margin-left: 0;
  margin-bottom: 0;
  text-indent: 0;
}

div.act p span.speaker,
span.speaker {
  margin-left: -1em;
}

.speaker {
  font-variant: small-caps;
}

li span.speaker,
div.act p.stage span.speaker,
p span.stage span.speaker {
  margin-left: 0;
}

.speech {
  margin-left: 1em;
}

.stage,
.stage p,
.runh {
  font-style: italic;
  text-indent: 0;
}

/* =========================================================
   Poetry and verse
   ========================================================= */

div.song {
  font-style: normal;
}

div.song p {
  margin-bottom: 1em;
  line-height: 150%;
  text-align: left;
  text-indent: 0;
}

.stanza {
  position: relative;
  width: 80%;
  margin: 1em auto;
}

.stanza p,
.hang {
  margin: 0 0 0 2em !important;
  text-align: left;
  text-indent: -2em !important;
}

.stanza p.dropcap:first-letter {
  float: none;
  margin-left: 0;
  text-align: left;
  text-indent: 0;
}

.couplet,
.verse,
p.verse,
p.stanza,
.chorus,
.refrain {
  max-width: 80%;
  margin: 1em auto;
  text-align: left;
  text-indent: 0;
}

.couplet p,
.verse p {
  margin: 0;
  text-align: left;
  text-indent: 0;
}

.chorus,
.refrain {
  font-style: italic;
}

.chorus p,
.refrain p {
  margin: 0 0 0 2em;
  text-align: left;
  text-indent: -2em;
}

.ln {
  float: right;
  margin-left: 1em;
  color: gray;
  font-size: 0.8em;
  font-style: italic;
  text-align: right;
  text-indent: 0;
}

span.vln {
  position: absolute;
  right: -1.5em;
  color: gray;
  font-size: 0.8em;
  text-align: right;
}

/* =========================================================
   Figures, ornaments, and media blocks
   ========================================================= */

.map,
.figure,
.plate,
.frontispiece,
.illustration,
.ornament,
.headpiece,
.tailpiece {
  margin: 1em auto;
  text-align: center !important;
}

.map,
.figure,
.plate,
.frontispiece,
.illustration,
.ornament,
.headpiece {
  max-width: 100%;
}

.map p,
.figure p,
.plate p,
.frontispiece p,
.illustration p,
.figure,
.figleft,
.figright {
  font-size: 0.9em;
  font-variant: small-caps;
  text-align: center !important;
  text-indent: 0 !important;
}

.tailpiece {
  width: 66%;
}

.tailpiece img {
  width: 100%;
}

.initial {
  float: left;
  margin: 0;
  padding: 0 0.5em 0 0;
}

.figleft {
  float: left;
  margin: 0;
  padding: 0.5em 0.5em 0 0;
}

.figright {
  float: right;
  margin: 0;
  padding: 0.5em 0 0 0.5em;
}

.dropcap {
  text-indent: 0;
}

.dropcap:first-letter {
  float: left;
  padding-right: 2px;
  font-size: 5em;
  line-height: 90%;
}

.dropcap img {
  float: left;
}

/* =========================================================
   Tables and lists
   ========================================================= */

caption {
  margin: 1em auto;
  background-color: inherit;
  font-variant: small-caps;
}

table {
  display: block;
  width: auto;
  max-width: 100%;
  margin: 1em auto;
  overflow-x: auto;
  border-collapse: collapse;
}

th {
  font-weight: normal;
}

table.tb1 {
  background-color: #fcfff6;
  border: 1px solid gray;
  border-collapse: collapse;
}

table.tb1 tr th {
  padding: 0.5em;
  border-right: 1px solid gray;
  border-bottom: 1px solid gray;
}

table.tb1 tr td {
  padding: 0.5em;
  border-right: 1px dotted gray;
  border-bottom: 1px dotted gray;
}

table.nb,
table.nb tr th,
table.nb tr td {
  border: none;
}

li {
  margin-top: 0.5em;
}

ol p {
  margin-bottom: 1em;
  text-align: justify;
  text-indent: 0;
}

ol.nv {
  color: #999;
  font-style: italic;
}

ol.nv p {
  color: #000;
  text-align: left;
  font-style: normal;
}

ol.upper-roman { list-style-type: upper-roman; }
ol.lower-roman { list-style-type: lower-roman; }
ol.upper-alpha { list-style-type: upper-alpha; }
ol.lower-alpha { list-style-type: lower-alpha; }

ul.bracketed {
  border-left: 1px solid gray;
  list-style-type: none;
  padding-left: 1em;
}

ul.nb,
ul.nobullet {
  list-style-type: none;
  padding-left: 2em;
}

ul.nb li,
ul.nobullet li {
  padding-left: 2em;
  text-indent: -2em !important;
}

ul.nb li ul,
ul.nobullet li ul {
  padding-left: 0;
  text-indent: -2em;
}

.nb span.sn {
  margin-left: -4em;
}

/* =========================================================
   Navigation and metadata
   ========================================================= */

#cover {
  clear: both;
  width: 100%;
  max-width: 39em;
  margin: 0 auto 3em;
  padding: 0;
}

.dochead {
  margin: 0 0 1em 0 !important;
  border-bottom: 1px solid gray;
  text-align: center !important;
}

.dochead h1,
.dochead h2 {
  margin: 0 !important;
  color: gray;
  font-size: 1em;
  font-style: normal;
  font-weight: normal;
  font-family: Helvetica, Verdana, sans-serif;
}

.docfoot {
  margin-bottom: 3em;
  color: #666;
  text-align: center !important;
}

.docfoot p,
.docinfo,
.docinfo p {
  font-size: 0.7em;
  text-align: center !important;
  text-indent: 0;
}

.docinfo {
  color: #666;
}

.docfoot p a:visited,
.docinfo p a:visited {
  color: #666;
}

.docfoot p a:hover,
.docinfo p a:hover {
  color: #f00;
}

.nav,
.navigation {
  clear: both;
  padding: 2em 0 1em;
  border-top: 1px solid gray;
  text-align: center !important;
  text-indent: 0;
}

.nav a,
.nav a:visited,
.navigation a,
.navigation a:visited {
  padding: 3px;
  color: #333;
  background-color: #ddd;
  border-right: 2px solid gray;
  border-bottom: 2px solid gray;
  font-size: 0.7em;
  font-family: Verdana, sans-serif;
  text-decoration: none;
}

.nav a:hover,
.navigation a:hover {
  font-weight: bold;
}

a.nr {
  color: #333;
  font-size: 80%;
  font-style: italic;
}

#controls {
  position: fixed;
  left: 50%;
  bottom: 0;
  z-index: 100;
  width: min(41em, calc(100vw - 2em));
  max-width: 100%;
  padding: 1em;
  transform: translateX(-50%);
  border: thin dashed gray;
  background-color: #fcfff6 !important;
  text-align: center;
}

#controls a,
#controls li a {
  color: gray;
  border: none !important;
  text-align: center;
  text-decoration: none;
  font-size: 0.8em;
  font-family: Helvetica, Arial, sans-serif;
}

#controls ul {
  margin: 0 auto !important;
  padding: 0;
  overflow: hidden;
  list-style: none;
}

#controls li {
  float: left;
  margin: 0 !important;
  padding: 0 1em 0 0;
}

/* =========================================================
   Generic utilities
   ========================================================= */

.i1 { padding-left: 1em; }
.i2 { padding-left: 2em; }
.i3 { padding-left: 3em; }
.i4 { padding-left: 4em; }
.i5 { padding-left: 5em; }
.i6 { padding-left: 6em; }
.i7 { padding-left: 7em; }
.i8 { padding-left: 8em; }
.i9 { padding-left: 9em; }
.i10 { padding-left: 10em; }
.i11 { padding-left: 11em; }
.i12 { padding-left: 12em; }

.w10 { width: 10% !important; }
.w20 { width: 20% !important; }
.w25 { width: 25% !important; }
.w30 { width: 30% !important; }
.w33 { width: 33% !important; }
.w40 { width: 40% !important; }
.w50 { width: 50% !important; }
.w60 { width: 60% !important; }
.w70 { width: 70% !important; }
.w80 { width: 80% !important; }
.w90 { width: 90% !important; }
.w100 { width: 100% !important; }

.left { float: left; padding-right: 1em; }
.right { float: right; padding-left: 1em; }

.center,
.center p {
  text-align: center !important;
}

.clear {
  clear: both;
}

.border {
  padding: 1em;
  border: 1px solid;
}

.dropshadow {
  box-shadow: 5px 5px 25px 10px #888;
}

.bt { border-top: 1px solid gray !important; }
.br { border-right: 1px solid gray !important; }
.bb { border-bottom: 1px solid gray !important; }
.bl { border-left: 1px solid gray !important; }
.vat { vertical-align: top; }
.vab { vertical-align: bottom; }

.transition {
  margin: 1em 0;
  text-align: center !important;
}

.transition:before {
  content: "~";
  font-size: 2em;
  font-weight: bold;
  text-align: center !important;
}

div#copyright {
  margin: 1em 0 50em;
  padding: 1em;
  border: 1px solid red;
}

div#copyright p {
  margin-bottom: 1em;
  text-indent: 0;
}

div#contents:after,
div.preface:after,
div.prologue:after,
div.epilogue:after,
div.introduction:after,
div.canto:after,
div.essay:after,
div.chapter:after {
  content: "❦";
  display: block;
  margin-top: 0.5em;
  margin-bottom: -0.5em;
  font-family: Georgia, "DejaVu Sans", serif;
  font-size: 2em;
  text-align: center;
}

.fraktur {
  font-family: 'UnifrakturCook', Georgia, serif !important;
  font-size: 140%;
  font-variant: normal !important;
}

.antiqua {
  font-family: 'Uncial Antiqua', Georgia, serif !important;
  font-size: 140%;
  font-variant: normal !important;
}

span[lang=ar] {
  font-size: larger;
}

*[lang=la] {
  font-variant: small-caps;
}

/* =========================================================
   Expanded text utilities
   ========================================================= */

.fs075 { font-size: 75% !important; }
.fs080 { font-size: 80% !important; }
.fs085 { font-size: 85% !important; }
.fs090 { font-size: 90% !important; }
.fs095 { font-size: 95% !important; }
.fs100 { font-size: 100% !important; }
.fs105 { font-size: 105% !important; }
.fs110 { font-size: 110% !important; }
.fs115 { font-size: 115% !important; }
.fs120 { font-size: 120% !important; }
.fs125 { font-size: 125% !important; }
.fs130 { font-size: 130% !important; }
.fs140 { font-size: 140% !important; }
.fs150 { font-size: 150% !important; }
.fs160 { font-size: 160% !important; }
.fs175 { font-size: 175% !important; }
.fs180 { font-size: 180% !important; }
.fs200 { font-size: 200% !important; }
.fs225 { font-size: 225% !important; }
.fs250 { font-size: 250% !important; }
.fs300 { font-size: 300% !important; }

.text-xs  { font-size: 0.75em !important; }
.text-sm  { font-size: 0.875em !important; }
.text-md  { font-size: 1em !important; }
.text-lg  { font-size: 1.125em !important; }
.text-xl  { font-size: 1.25em !important; }
.text-2xl { font-size: 1.5em !important; }
.text-3xl { font-size: 2em !important; }

.fwl  { font-weight: 300 !important; }
.fwn  { font-weight: normal !important; }
.fwm  { font-weight: 500 !important; }
.fwsb { font-weight: 600 !important; }
.fwb  { font-weight: bold !important; }
.fw900 { font-weight: 900 !important; }

.normal  { font-style: normal !important; }
.hi      { font-style: italic !important; }
.it      { font-style: italic !important; }
.oblique { font-style: oblique !important; }
.sc      { font-variant: small-caps !important; }
.uc      { text-transform: uppercase !important; }
.lc      { text-transform: lowercase !important; }
.cc      { text-transform: capitalize !important; }

.serif { font-family: Georgia, "Times New Roman", serif !important; }
.sans  { font-family: Verdana, Arial, Helvetica, sans-serif !important; }

.lh100 { line-height: 100% !important; }
.lh110 { line-height: 110% !important; }
.lh120 { line-height: 120% !important; }
.lh130 { line-height: 130% !important; }
.lh140 { line-height: 140% !important; }
.lh150 { line-height: 150% !important; }
.lh160 { line-height: 160% !important; }
.lh180 { line-height: 180% !important; }
.lh200 { line-height: 200% !important; }

.ls0 { letter-spacing: 0 !important; }
.ls1 { letter-spacing: 0.05em !important; }
.ls2 { letter-spacing: 0.1em !important; }
.ls3 { letter-spacing: 0.2em !important; }
.ls4 { letter-spacing: 0.3em !important; }
.tw  { letter-spacing: 0.5em !important; }
.ls  { letter-spacing: 1em !important; }

.tl { text-align: left !important; }
.tc { text-align: center !important; }
.tr { text-align: right !important; }
.tj { text-align: justify !important; }

.underlined { text-decoration: underline !important; }
.overlined  { text-decoration: overline !important; }
.strike,
del,
.del { text-decoration: line-through !important; }
.no-td { text-decoration: none !important; }

.text-black { color: #000 !important; }
.text-gray  { color: #666 !important; }
.text-light { color: #999 !important; }
.text-red   { color: #c00 !important; }
.text-green { color: #060 !important; }
.text-blue  { color: #00609c !important; }
.text-white { color: #fff !important; }

.ind0,
.ni { text-indent: 0 !important; }
.ind1 { text-indent: 1em !important; }
.ind2,
.in { text-indent: 2em !important; }
.ind3 { text-indent: 3em !important; }
.ind4 { text-indent: 4em !important; }

.lead {
  font-size: 1.15em !important;
  line-height: 1.7 !important;
}

.caption-text {
  color: #666 !important;
  font-size: 0.9em !important;
  text-align: center !important;
  text-indent: 0 !important;
}

.fineprint {
  color: #666 !important;
  font-size: 0.8em !important;
}

.display {
  font-size: 2.2em !important;
  line-height: 1.2 !important;
  font-weight: bold !important;
  text-align: center !important;
}

.subtitle {
  font-size: 1.2em !important;
  line-height: 1.4 !important;
  font-style: italic !important;
  text-align: center !important;
}

/* =========================================================
   Responsive screen rules
   ========================================================= */

@media screen and (min-width: 769px) {
  html {
    background-color: #fdfdfd;
    background-image: url('endpaper.jpg');
    background-repeat: repeat;
    background-position: top left;
  }

  .pageWidth {
    background-color: #fff;
    box-shadow: 5px 5px 25px 10px #336699;
  }
}

@media screen and (max-width: 768px) {
  html {
    background-color: #fcfff6;
    background-image: none !important;
  }

  .pageWidth {
    width: 100%;
    max-width: 100% !important;
    padding: 1rem;
    background-image: none !important;
    box-shadow: none !important;
    font-family: Helvetica, Arial, Verdana, sans-serif;
  }

  p {
    text-align: left;
  }

  .epigraph,
  .stanza,
  .couplet,
  .verse,
  p.verse,
  p.stanza,
  .chorus,
  .refrain {
    width: 100%;
    max-width: 100%;
  }

  .sn,
  .mn,
  .sidenote,
  .marginal-note {
    float: none;
    max-width: 100%;
    margin: 1em 0;
    text-align: left;
  }

  #controls {
    position: static;
    width: 100%;
    margin: 1em 0 0;
    transform: none;
  }

  img,
  table,
  pre,
  blockquote {
    max-width: 100%;
  }
}

@media screen and (max-width: 480px) {
  .pageWidth {
    padding: 0.875rem;
  }

  h1 { font-size: 1.7em; }
  h2 { font-size: 1.3em; }
  h3 { font-size: 1.2em; }
  h4 { font-size: 1.1em; }

  pre,
  code {
    font-size: 1em;
  }

  .nav a,
  .nav a:visited,
  .navigation a,
  .navigation a:visited {
    display: inline-block;
    margin: 0.2em;
    padding: 0.4em 0.5em;
  }

  .tailpiece {
    width: 100%;
  }

  .mn,
  .sidenote,
  .marginal-note {
    margin-right: 0;
  }

  span.vln {
    position: static;
    display: inline;
    margin-left: 0.5em;
  }
}

/* =========================================================
   Print rules
   ========================================================= */

@media print {
  body {
    width: auto;
    font-size: 11pt;
  }

  .pageWidth {
    width: auto;
    max-width: 33em;
    margin: auto;
    padding: 0;
  }

  .screen-note,
  #controls,
  .nav,
  .navigation {
    display: none;
  }

  #cover {
    clear: both;
    width: 6in;
    height: 9in;
    background: url('cover.jpg') no-repeat top left;
  }

  #cover,
  .titlepage,
  .halftitle,
  .titleverso,
  .contents,
  .frontmatter,
  .docinfo,
  .dedication,
  .foreword,
  .preface,
  .prologue,
  .introduction,
  .acknowledgments,
  .frontispiece,
  .plate,
  .body,
  .page,
  .volume,
  .part,
  .book,
  .chapter,
  .act,
  .essay,
  .story,
  .canto,
  .backmatter,
  .afterword,
  .epilogue,
  .postscript,
  .appendix,
  .notes,
  .glossary,
  .bibliography,
  .index {
    clear: both;
    page-break-after: always;
  }

  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    page-break-after: avoid;
  }

  .titlepage {
    margin: 2em 0;
  }

  .titlepage p.imprint {
    margin-bottom: 1em;
  }

  .titlepage a {
    text-decoration: none;
  }
}
