/* Resets */

*{box-sizing:border-box}
h1,h2,h3,h4,h5,ul,ol,figure,p,hr,form,blockquote,th{margin:0;padding:0;font-size:100%;font-weight:inherit}
ul,ol{list-style:none}
a{text-decoration:none}
img{display:block;width:100%}

@-webkit-viewport{width:device-width}
@-moz-viewport{width:device-width}
@-ms-viewport{width:device-width}
@-o-viewport{width:device-width}
@viewport{width:device-width}

::-moz-selection{background-color:fuchsia;color:white}
::selection{background-color:rgba(255,20,147,0.125);color:black}



/* Pre-sets */

strong{font-weight: normal}
cite{font-feature-settings:'dlig'}
small{font-size:0.81818182em}
.invisible{display:none}
.ampersand{font-style:italic}
.letter-spacing_correction{letter-spacing:normal}
@media (min-width: 650px) { .split{display:block} }



/* Links */

main a,
footer a,
a {
	color: #333;
	text-decoration: none;
	padding: 0.125em;
	margin: -0.125em;
	box-decoration-break: clone;
	-webkit-box-decoration-break: clone;
	background-image: linear-gradient(transparent 0, rgba(255,20,147,0.125) 0);
	background-position-y: .85em;
	background-repeat: no-repeat;
	transition: background-position .25s ease-in-out;
}
main a:hover,
footer a:hover,
a:hover {
	background-position: 0;
}



/* Layout */

html {
	font-size: 16px;
}
body {
	font: 1.25rem/1.5 'Cormorant Garamond', serif;
	color: #333;
	font-weight: 400;
	padding: 3.125rem;
}
header,
footer {
	margin: 0 auto;
	max-width: 37.5rem;
}
header {
	margin-bottom: 3.125rem;
}
footer {
	margin-top: 3.125rem;
}
.book_cover {
	margin: 0 -3.125rem;
	height: calc(100vh - 10rem);
	min-height: 400px;
	background: #f0efea url(../images/bg.jpg) repeat;
	background-size: 400px;
	z-index: -1;
}
#ed_page .book_cover {
	min-height: 200px;
	max-height: 200px;
}
.book_cover div {
	padding: 3.125rem;
	width: 100%;
	height: 100%;
}
.book_cover img {
	box-shadow: 0.125em 0.125em 0.25em 0 rgba(0, 0, 0, 0.25);
	width: auto;
	max-width: 100%;
	height: auto;
	max-height: 100%;
	margin: 0 auto;
	text-align: center;
	object-fit: scale-down;
}
article {
	margin: 0 auto;
	max-width: 37.5rem;
}

@media (min-width: 650px) {
	body {
		font-size: 1.375rem;
	}
	#ed_page .book_cover {
		min-height: 400px;
		max-height: 100%;
	}
}

@media (min-width: 1000px) {
	body {
		margin-left: 33.3333333vw;
	}
	.book_cover {
		position: fixed;
		left: 0;
		top: 0;
		margin: 0;
		height: 100vh;
		width: 33.3333333vw;
	}
	.book_cover div {
		padding: 7.5rem 2.5rem;
	}
	@media (max-height: 700px) {
		.book_cover div {
			padding: 5rem 2.5rem;
		}
	}
	@media (max-height: 500px) {
		.book_cover div {
			padding: 2.5rem;
		}
	}
}

@media (min-width: 1250px) {
	body {
		margin-left: 50vw;
	}
	.book_cover {
		width: 50vw;
    }
	.book_cover div {
		padding: 7.5rem;
	}
	@media (max-height: 700px) {
		.book_cover div {
			padding: 5rem;
		}
	}
	@media (max-height: 500px) {
		.book_cover div {
			padding: 2.5rem;
		}
	}
}
@media (min-width: 1500px) {
	body {
		font-size: 1.5rem;
	}
	header,
	footer,
	article {
		max-width: 35em;
	}
}
@media (min-width: 1800px) {
	body {
		font-size: 1.75rem;
	}
}



/* Header & Footer */

header nav {
	font-size: 0.81818182em;
	padding-bottom: 0.75em;
	border-bottom: 1px solid #f0efea;
}
header a {
	background-position-y: 1.75em;
	padding: 0.25em;
	margin: -0.25em;
}
.small_off {
	display: none;
}
.small_hide {
	display: none;
}
.breadcrumb,
.cart,
.copyright,
.social {
	display: inline-block;
	vertical-align: top;
	width: 70%;
}
.cart,
.social {
	width: 30%;
	text-align: right;
}
.copyright {
	width: 55%;
}
.social {
	width: 45%;
}
.cart_no_container {
	color: #ff1493;
}
.cart_no {
	font-feature-settings: 'tnum', 'zero';
	font-variant: small-caps;
}
.arrow {
	padding: 0 0.06944444em;
	color: silver;
}
.middot_nav {
	padding: 0 0.125em;
	color: silver;
}
footer p {
	font-size: 0.81818182em;
	padding-top: 0.75em;
	border-top: 1px solid #f0efea;
}
.social a {
	/*width: 1.5em;*/
	display: inline-block;
	text-align: center;
	padding: 0.25em;
	/*margin: -0.25em 0.5em -0.25em -0.25em;*/
	margin: -0.25em 0em -0.25em 0em;
}
.social a:last-of-type {
	margin-right: 0;
}



/* Main */

p {
	hanging-punctuation: first;
}
main p + p,
main li + li {
	margin-top: 1.5em;
}
aside,
ul,
blockquote {
	margin: 1.5em 0;
}

h2 {
	font-size: 2em;
	line-height: 1.125;
	margin-top: 3em;
}
h3 {
	font-size: 1.5em;
	margin-top: 0.375em;
}

.purchase {
	margin-top: 4.5em;
	border-top: 1px solid #f0efea;
	border-bottom: 1px solid #f0efea;
	
	text-align: center;
}
.buy {
	display: block;
	text-align: center;
	padding: 1.5em 1.5em;
}
.price {
	display: block;
	text-align: center;
	padding-bottom: 1.5em;
}
.buy_no {
	margin-right: 1.5em;
	border: 1px solid #f0efea;
	font-family: 'Cormorant Garamond', serif;
	font-feature-settings: 'SS12';
	text-transform: lowercase;
	font-variant: small-caps;
	letter-spacing: 1.25px;
	padding: 8px 10px 9px;
	transition: border-color .25s ease-in-out;
}
.buy_no:hover,
.buy_no:focus {
	border: 1px solid #ff1493 !important;
	outline: none !important;
}
.buy_button {
	cursor: pointer;
	font-family: 'Cormorant Garamond', serif;
	color: #fff;
	font-feature-settings: 'SS12';
	text-transform: lowercase;
	font-variant: small-caps;
	letter-spacing: 1.25px;
	padding: 9px 15px 11px;
	border: none;
	background-color: #ff1493;
	transition: background-color .25s ease-in-out;
}
a.buy_button {
	display: block;
	margin: 0;
	padding: 5px 15px 7px;
}
.buy_button:hover {
	background-color: #025bb6;
}
.buy_button:active {
	background-color: #114274;
}
.sold_out {
	cursor: auto;
}
.sold_out:hover,
.sold_out:active {
	background-color: #ff1493;
}
.price_size {
	font-size: 1.25em; 
}
.price_strikethrough {
	-webkit-text-decoration-color: #ff1493;
	-moz-text-decoration-color: #ff1493;
	-ms-text-decoration-color: #ff1493;
	-o-text-decoration-color: #ff1493;
	text-decoration-color: #ff1493;
}
.price_strikethrough::before,
.price_strikethrough::after {
    content: "\00a0";
}
.price_inc {
	font-size: 0.81818182em;
}

.specs {
	padding: 1.5em 0;
	text-align: center;
}
.middot {
	color: #ff1493;
	padding: 0 0.5em;
}

.also_available {
	margin: 1.5em 0 3em;
}

.spiel p + p {
	text-indent: 1.5em;
	margin-top: 0;
}

.bio {
	margin-top: 3em;
	border-top: 1px solid #f0efea;
	padding: 1.5em 0;
}
.shorts_artist {
	border-bottom: 1px solid #f0efea;
	margin-top: 4.5em;
}
.bio_picture img {
	border-radius: 100%;
	width: 50%;
	margin: 0 auto 1.5em;
}

hr {
	border: none;
	display: block;
	background-color: #f0efea;
	height: 1px;
}

h4,
.author_name {
	font-feature-settings: 'SS12';
	text-transform: lowercase;
	font-variant: small-caps;
	letter-spacing: 1.25px;
}
h4 {
	margin: 3em 0 1.5em;
}
h4 span {
	border-bottom: 1px solid #333;
}

.lists {
	list-style: circle;
}
.lists_ li + li {
	margin-top: 1.5em;
}

.tq_images {
	margin: 1.5em -0.75em 0;
}
.tq_images a {
	background-image: none;
}
.tq_images img {
	width: 25%;
	padding: 0.75em;
	display: inline;
}

@media (min-width: 400px) {
	.small_hide {
		display: inline;
	}
	.small_off {
		display: inline;
	}
	.copyright {
		width: 70%;
	}
	.social {
		width: 30%;
	}
}

@media (min-width: 650px) {
	.arrow {
		padding: 0 0.44444444em;
	}
	.middot_nav {
		padding: 0 0.5em;
	}
	h2 {
		font-size: 2.5em;
	}
	.buy {
		display: inline-block;
		vertical-align: middle;
		padding: 1.5em 1.5em 1.5em 0;
		border-right: 1px solid #f0efea;
	}
	.price {
		display: inline-block;
		vertical-align: middle;
		padding: 1px 0 2px 1.5em;
	}
	.bio_picture,
	.bio_text {
		display: inline-block;
		vertical-align: middle;
		width: 35%;
		padding-right: 3.125rem;
	}
	.bio_picture img {
		width: 100%;
		margin: 0;
	}
	.bio_text {
		width: 65%;
		padding-right: 0;
	}
	main li + li,
	.single_line_quote {
		margin-top: 0;
	}
	.lists {
		margin-left: 1.5em;
	}
	.bio_picture .roman_bio {
		margin-top: 4.5em;
	}
}

@media (min-width: 1000px) {
	header,
	footer {
		margin: 0 auto;
	}
	main {
		margin: 9em 0;
	}
	h2 {
		margin-top: 0;
	}
	.purchase {
		margin-top: 9em;
	}
	.shorts_artist {
		margin-top: 9em;
	}
}



/* Cart */

.cart_table {
	width: 100%;
	font-size: 100%;
	line-height: 1.5;
	text-align: center;
	border-spacing: 0;
	margin-top: 4.5em;
	margin: 4.5em -1.5em 0;
}
.cart_table th {
	font-size: 0.81818182em;
	font-feature-settings: 'SS12';
	text-transform: lowercase;
	font-variant: small-caps;
	letter-spacing: 1.25px;
	border-bottom: 1px solid #f0efea;
}
.cart_table td {
	border-bottom: 1px solid #f0efea;
}
.cart_table th,
.cart_table td {
	padding: 0.75rem;
}
.cart_table th:nth-of-type(2),
.cart_table td:nth-of-type(2) {
	text-align: left;
	width: 100%;
}
.cart_table th:nth-of-type(3),
.cart_table td:nth-of-type(3),
.cart_table th:last-of-type,
.cart_table td:last-of-type,
.cart_totals td:first-of-type {
	text-align: right;
}
.cart_totals td {
	border-bottom: none;
}
.cart_totals tr:first-of-type td {
	padding-top: 1.5em;
}

.cart_table button {
	display: block;
	cursor: pointer;
	font-family: 'Cormorant Garamond', serif;
	color: #ff1493;
	font-feature-settings: 'SS12';
	text-transform: lowercase;
	font-variant: small-caps;
	background: none;
	border: none;
	padding: 0.25em;
	margin: -0.25em auto;
}
.plus_minus {
	display: block;
	color: silver;
	font-feature-settings: 'SS12';
	text-transform: lowercase;
	font-variant: small-caps;
	line-height: 1.15;
}
.cart_type {
	display: inline-block;
	font-size: 0.81818182em;
	font-feature-settings: 'SS12';
	text-transform: lowercase;
	font-variant: small-caps;
	letter-spacing: 1.25px;
	padding-left: 0.75em;
}
.numbers {
	font-feature-settings: 'tnum';
}
.negative {
	color: #ff1493;
}

.cart_payment {
	margin-top: 3em;
	text-align: center;
}
.cart_text {
	margin-top: 9em;
}

.cart_empty,
.cart_error {
	text-align: center;
	margin: 4.5em 0;
}
.cart_error {
	color: #b22222;
}

@media (min-width: 650px) {
	.cart_payment {
		text-align: right;
	}
}

@media (min-width: 1000px) {
	.cart_table,
	.cart_empty,
	.cart_error {
		margin: 0;
	}
	.cart_error {
		margin-bottom: 4.5em;
	}
}



/* Catalogue */

.catalogue {
	margin-top: 4.5em;
	border-top: 1px solid #f0efea;	
}
.catalogue div {
	padding: 1.5em 0;
	border-bottom: 1px solid #f0efea;
	transition: background-color .25s ease-in-out;
}
.catalogue div:hover {
	background-color: rgba(240,239,234,0.25);
	border-bottom: 1px solid #f0efea;
}
h5 {
	font-size: 1.5em;
}
.catalogue p {
	margin-top: 0.75em;
}
.book_author,
.book_type {
	display: inline-block;
	vertical-align: baseline;
	width: 68%;
}
.book_type {
	width: 32%;
	text-align: right;
	font-size: 0.81818182em;
	font-feature-settings: 'SS12';
	text-transform: lowercase;
	font-variant: small-caps;
	letter-spacing: 1.25px;
}

@media (min-width: 1000px) {
	.catalogue {
		margin-top: 9em;
	}
	.catalogue div {
		padding: 1.5em;
	}
	h5 {
		font-size: 1.5em;
		width: 65%;
	}
}



/* About */

.about {
	margin-top: 4.5em;
}
@media (min-width: 1000px) {
	.about {
		margin-top: 9em;
	}
}