﻿/** BASE **/

/* Márgenes */
body {
	font-family: serif;
	font-size: 1em;
	margin: 0;
	padding: 0 20px;
}
body * {
	box-sizing: border-box;
	object-fit: contain;
	line-height: 1.5;
	max-width: 100%;
}

/* Control partición silábica */
#titlepage p,
#epigraph p,
h1,
h2,
h3,
h4 {
	page-break-after: avoid;
	hyphens: auto;
	adobe-hyphenate: auto;
	-moz-hyphens: auto;
	-webkit-hyphens: auto;
	-epub-hyphens: auto;
}
p, li, td, dt, dd {
	-webkit-hyphenate-limit-before: 3;
	-webkit-hyphenate-limit-after: 1;
	-webkit-hyphenate-limit-lines: 2;
	orphans: 2;
	widows: 2;
}

/** FRONTMATTER **/

/* Cubierta */
.cover {
	height: 100%;
	margin: 0;
	padding: 0;
	text-align: center;
	text-indent: 0;
}

/* Portadilla */
#titlepage {
	break-inside: avoid;
	page-break-inside: avoid;
	text-align: left;
}
#titlepage * {
	font-family: inherit;
	line-height: 1.2;
}
#titlepage p.title {
	color: #b8171d;
	font-size: 2.5em;
	font-style: normal;
	font-weight: normal;
	margin: 2.5em 0 0 0;
	padding: 0 0 0 0;
	text-align: center;
	text-indent: 0;
}
#titlepage p.subtitle {
	font-size: 1.8em;
	font-style: normal;
	font-weight: normal;
	margin: 0 0 2.5em 0;
	padding: 0 0 0 0;
	text-align: center;
	text-indent: 0;
}
#titlepage p.author {
	font-style: normal;
	font-weight: normal;
	font-size: 1.3em;
	margin: 0;
	padding: 0 0 0 0;
	text-align: center;
	text-indent: 0;
}
#titlepage div.publisher {
	margin: 10em auto 0 auto;
	padding: 0;
	text-align: center;
	text-indent: 0;
	width: 4em;
}

/* Créditos */
#copyright-page {
	margin: 4em 2em 0 0;
}
#copyright-page div + div {
	margin: 1em 0 0 0;
}
#copyright-page p {
	font-size: .8em;
	margin: 0;
	text-align: left;
	text-indent: 0;
}
#copyright-page div.figure {
	margin: 1em 0;
	width: 8em;
}
#copyright-page div.logo {
	margin: 1em 0;
	width: 4em;
}

/* Sinopsis */
#summary * {
	font-family: sans-serif;
}
#summary h1 {
	font-size: 1.2em;
	font-style: normal;
	font-weight: bold;
	padding: 0;
	text-align: center;
}
#summary p {
	margin: 0;
	text-align: justify;
}
#summary h1 + p {
	text-indent: 0;
}
#summary p + p {
	text-indent: 1em;
}
#summary hr + p {
	text-indent: 0;
}

/* Índice */
#toc h1 {
	font-family: DoubleBass;
}
#toc ol {
	list-style-type: none !important;
	margin: 1em 0;
	padding: 0;
}
#toc li {
	font-size: 1em;
	margin: 0;
	padding: 0;
	text-align: left;
}
#toc li ol {
	margin: 0 0 0 1em;
}
#toc li li {
	margin: 0;
}
#toc li span.label {
	display: block;
}
#toc li span.title {
	font-weight: bold;
}
#toc a {
	font-weight: normal;
	page-break-inside: avoid;
	text-decoration: none !important;
}


/* Epígrafe */
#epigraph {
	margin-top: 6em;
}
#epigraph p {
	font-family: inherit;
	font-style: italic;
	text-align: center;
	text-indent: 0;
}
#epigraph p.attrib {
	font-style: normal;
}

/* BODYMATTER */

/* Estilos generales */
h1 {
	font-family: inherit;
	font-size: 1.5em;
	font-style: normal;
	font-weight: normal;
	line-height: 1.2;
	margin: 1.2em 0 2.2em;
	text-align: center;
	text-indent: 0;
}
h1 span.label {
	display: block;
	font-style: italic;
	font-size: .8em;
}
h1 span.byline {
	display: block;
	font-style: italic;
	font-size: .6em;
}
h1 span.byline span.sc {
	font-style: normal;
}
h2 {
	border-top: 1px solid currentColor;
	border-bottom: 1px solid currentColor;
	font-size: 1em;
	font-style: normal;
	font-weight: normal;
	line-height: 1.2;
	margin: 2em 0 1em 0;
	padding: 0;
	text-align: center;
	text-indent: 0;
}
h3 {
	font-size: .8em;
	margin: 2em 0 .5em 0;
	text-align: center;
	text-indent: 0;
}
h3 + p {
	margin-top: 0;
}
h4 {
	font-size: 1em;
	font-style: normal;
	font-weight: bold;
	line-height: 1.2;
	margin: 1.5em 0 1em 0;
	padding: 0;
	text-align: left;
	text-indent: 0;
}

p {
	font-size: 1em;
	font-weight: normal;
	margin: 1em 0 0 0;
	padding: 0;
	text-align: justify;
	text-indent: 0;
}
h1 + p,
h2 + p,
h3 + p,
h4 + p {
	text-indent: 0;
}

a {
	font-family: inherit;
	font-weight: bold;
	text-decoration: none;
}
abbr {
	border: 0;
	text-decoration: none;
	white-space: nowrap;
}
i cite {
	font-style: normal;
}
cite {
	display: inline;
	font-style: italic;
}
hr {
	border: none;
	height: .5em;
	margin: .25em 0;
}
hr + p {
	text-indent: 0;
}
img {
	margin: 0;
	max-height: 100%;
	max-width: 100%;
	padding: 0;
}
@supports (max-height: 100vh) {
	img {
		max-height: 100vh;
	}
}
q {
	font-style: italic;
}
q i {
	font-style: normal;
}
q:before {
	content: "";
}
q:after {
	content: "";
}
sub,
sup {
	font-size: .7em;
}

/* Listas */
ol {
	margin: 1em 0 1em 0;
	padding: 0 0 0 1.25em;
}
ul {
	list-style: disc;
	margin: 1em 0 1em 1em;
	padding: 0 0 0 1.25em;
}
li {
	font-size: 1em;
	margin: 0;
	padding: 0;
	text-align: left;
	text-indent: 0;
}
li p {
	font-family: sans-serif;
	font-size: 1em;
	margin: 0;
	text-indent: 0;
}
.lower-alpha {
	list-style: lower-alpha;
	margin-left: 1em;
}
.upper-alpha {
	list-style: upper-alpha;
}
ul.none {
	list-style: none;
	margin: 1em 0;
	padding: 0;
}
ul.none li {
	font-family: inherit;
	font-style: normal;
	font-weight: 200;
	margin-left: 1em;
	text-align: left;
	text-indent: -1em;	
}

.fake {
	list-style: none;
	margin: 0;
	padding: 0;
}
.fake li span.number {
	display: inline;
	float: left;
	font-family: inherit;
	font-style: normal;
	font-weight: 600;
	line-height: 1.8;
	margin: 0;
	page-break-after: avoid;
	text-align: right;
	width: 1em;
}
.fake li span.number + span.text {
	margin-top: 0;
	page-break-before: avoid;
}
.fake li span.text {
	display: block;
	margin-left: 1.2em;
}
.fake li span.text span.label {
	font-family: inherit;
	font-style: normal;
	font-weight: 600;
}

/* Figuras y captions */
div.figure {
	margin: 1em auto;
	page-break-inside: avoid;
	text-align: center;
	width: 100%;
}
div.figure-l {
	margin: 1em 0;
}
div.figure-75 {
	margin: 1em auto;
	page-break-inside: avoid;
	text-align: center;
	width: 75%;
}
div.figure-50 {
	margin: 1em auto;
	page-break-inside: avoid;
	text-align: center;
	width: 50%;
}
div.figure-30 {
	margin: 1em auto;
	text-align: center;
	width: 30%;
}
div.figure-10 {
	margin: 1em auto;
	text-align: center;
	width: 20%;
}
div.figure-10-r {
	margin: 1em 0 1em auto;
	text-align: center;
	width: 15%;
}
div.figure-30-l {
	margin: 1em 0 1em 0;
	text-align: center;
	width: 30%;
}
div.figure-30-r {
	margin: 1em 0 1em auto;
	text-align: center;
	width: 30%;
}
div.figure-50-l {
	margin: 1em 0 1em 0;
	text-align: center;
	width: 50%;
}
div.figure-50-r {
	margin: 1em 0 1em auto;
	text-align: center;
	width: 50%;
}
div.figure-75-l {
	margin: 1em 0 1em 0;
	text-align: center;
	width: 75%;
}
div.figure-75-r {
	margin: 1em 0 1em auto;
	text-align: center;
	width: 75%;
}


div.figcaption p {
	font-family: inherit;
	font-size: .8em;
	font-style: italic;
	font-weight: normal;
	margin: 0;
	text-align: center;
	text-indent: 0;
}
div.figcaption i,
div.figcaption p.title {
	font-style: normal;
}

div.icon {
	margin: 1em 0 1em auto;
	page-break-inside: avoid;
	text-align: center;
	width: 4em;
	max-width: 100%;
}
div.icon img {
	max-height: 80%;
	page-break-inside: avoid;
	text-align: center;
	width: auto;
}

div.separator {
	margin: 0;
	break-before: always;
	page-break-before: always;
	break-inside: avoid;
	page-break-inside: avoid;
	text-align: center;
	width: 100%;
}
div.separator img {
	max-height: 100%;
	text-align: center;
}

img.inline {
	width: 1em;
}

/* Seudoversalitas */
span.sc {
	font-size: .8em;
}

/* Firmas */
div.signature {
	break-inside: avoid;
	page-break-inside: avoid;
	margin: 1em 0 1em 1em;
}
div.signature p {
	font-family: inherit;
	font-weight: bold;
	margin: 0;
	text-align: right;
	text-indent: 0;
}
div.signature p.data {
	font-style: italic;
	font-size: .7em;
}

/* Citas de bloque */
blockquote {
	margin: 1em;
}
blockquote p {
	font-size: 1em;
	font-style: normal;
	text-align: center;
	text-indent: 0;
}

/* Poemas */
.poem {
	margin: 1em 3em;
}
.stanza {
	margin: 1em 0;
	text-indent: 0;
}
.verse {
	display: block;
	margin-left: 1em;
	text-indent: -1em;
}

/* Otros */
p.first {
	text-indent: 0;
}
span.underline {
	text-decoration: underline;
}

/* Notas | Llamadas */
a.noteref {
	font-size: .7em;
	vertical-align: top;
}

/* Notas | Notas al pie */
div.endnotes h2 {
	margin: 2em 0 1em 0;
}
div.endnote {
	margin: .6em 0 0 0;
	break-inside: avoid;
	page-break-inside: avoid;
}
div.endnote p {
	font-size: .8em;
	margin: 0 0 0 2.5em;
	overflow: hidden;
	text-indent: 0;
}
div.endnote a.noteback {
	display: inline;
	float: left;
	clear: left;
	font-size: .8em;
	font-style: normal;
	margin: 0;
	padding: 0 .25em 0 0;
	page-break-after: avoid;
	text-align: right;
	vertical-align: inherit;
	width: 2em;
}
div.endnote a.noteback + p {
	page-break-before: avoid;
}

/* Propios */
.subchapter h1 {
	border-bottom: 1px dotted currentColor;
	margin: 2em 0 1em 0;
}
blockquote.comic p {
	font-style: normal;
	font-weight: bold;
	margin: 0;
}
blockquote.comic p.attrib {
	font-style: italic;
}
p.item,
p.item-t1,
p.item-3 {
	margin-left: 1em;
	text-indent: -1em;
}
p.item + p.item,
p.item-center + p.item-center,
p.item-3 + p.item-3 {
	margin-top: 0;
}
p.item-center {
	text-align: center;
}
p.ingredient {
	margin: 0;
}
div.group {
	margin: 1em 0;
}
div.group p {
	margin: 0;
}

.finger span.symbol,
.finger span.zapf {
	display: inline;
	float: left;
	font-family: inherit;
	font-style: normal;
	line-height: 1;
	margin: 0;
	page-break-after: avoid;
	padding-top: .4em;
	text-align: right;
	width: 1em;
}
.finger span.symbol img,
.finger span.zapf img {
	vertical-align: middle;
}
.finger span.symbol + span.text,
.finger span.zapf + span.text {
	margin-top: 0;
	page-break-before: avoid;
}
.finger span.text {
	display: block;
	margin-left: 1.5em;
}

.finger2 {
	margin-top: 0;
}
.finger2 span.symbol,
.finger2 span.zapf {
	display: inline;
	float: left;
	font-family: inherit;
	font-style: normal;
	line-height: 1;
	margin: 0;
	page-break-after: avoid;
	padding-top: .4em;
	text-align: right;
	width: 1em;
}
.finger2 span.symbol img,
.finger2 span.zapf img {
	vertical-align: middle;
}
.finger2 span.symbol + span.text,
.finger2 span.zapf + span.text {
	margin-top: 0;
	page-break-before: avoid;
}
.finger2 span.text {
	display: block;
	margin-left: 1.5em;
}
.finger3 {
	margin-top: 0;
}
.finger3 span.symbol,
.finger3 span.zapf {
	display: inline;
	float: left;
	font-family: inherit;
	font-style: normal;
	line-height: 1;
	margin: 0;
	page-break-after: avoid;
	padding-top: .4em;
	text-align: right;
	width: 1em;
}
.finger3 span.symbol img,
.finger3 span.zapf img {
	vertical-align: middle;
}
.finger3 span.symbol + span.text,
.finger3 span.zapf + span.text {
	margin-top: 0;
	page-break-before: avoid;
}
.finger3 span.text {
	display: block;
	margin-left: 2em;
}
p.separator {
	margin: 1em auto;
	width: 13em;
}
div.recipe h3 {
	border-bottom: 1px dotted currentColor;
	font-style: italic;
}
div.box {
	border: 4px double currentColor;
	margin: 1em 0;
	padding: 1em;
}
div.box-dotted {
	border: 4px dotted currentColor;
	margin: 1em 0;
	padding: 1em;
}
div.box p.formula {
	border: 4px double currentColor;
	margin: 0;
	padding: .3em;
}
div.box p {
	margin: 0;
}
div.dialogue {
	margin: 1em 0;
}
div.dialogue-box {
	border: 1px solid currentColor;
	margin: 1em 0;
	padding: 1em;
}
div.dialogue p, 
div.dialogue-box p {
	margin: 0;
}
p.listhead {
	font-size: .8em;
	margin: 2em 0 1em 0;
	text-align: left;
	text-indent: 0;
}
p.listhead-center {
	font-size: .8em;
	margin: 2em 0 1em 0;
	text-align: center;
	text-indent: 0;
}
p.listhead-simple {
	font-size: .8em;
	margin: 2em 0 0 0;
	text-align: left;
	text-indent: 0;
}
p.listhead-simple + p {
	margin-top: 0;
}
p.center {
	text-align: center;
}
table {
	border: 1px solid currentColor;
	border-collapse: collapse;
}
td {
	border: 1px solid currentColor;
	padding: .2em;
}
table p {
	text-align: left;
	font-size: .85em;
}
div.group p.l2 {
	margin-left: 1em;
}
div.group p.l2t1 {
	margin-left: 1em;
	margin-top: 1em;
}
p.item-prison {
	margin: 0;
}
p.pi {
	word-break: break-all;
}
p.pi span.big {
	font-size: 2.5em;
	line-height: 1;
}
table.none,
table.none * {
	border: 0;
}
table p.right {
	text-align: right;
}
table p.l2 {
	margin-left: 1.5em;
}
span.bulleted {
    vertical-align: sub;
	line-height: 1;
	display: inline-block;
}
div.figure-hotel {
	margin: 2em 0 0 0;
}
div.figure-hotel + * {
	margin-top: 0;
}