
:root {
	--accent-dark: black;
	--accent-light: white;
	--green: #ccff00;
	--lightgreen: #f0ffb3;
	--red: #ff2a7f;
	--blue: #55ddff;
	--dark-blue: #51b4de;
	--purple: #8787de;
	--teal: #00dee6;
	--white: #fff;
	--color: #001313;
	--body_bg:#ccf5ff;
}

@charset "UTF-8";

@font-face {  font-family: serif_font;
	 src: url(font_Charter-Regular.otf);
	 
 }

@font-face {  font-family: sans_font;
	 src: url(font_Atkinson-Hyperlegible-Regular-102.otf);
 }

@font-face {  font-family: mono_font;
	 src: url(font_latin-modern-mono-10.otf);
 }

@font-face {  
	font-family: distress_font;
	src: url(font_XerodaRegular-p7dwr.otf);
 }

html {

	box-sizing: border-box;
}

 body {
	width: 100vw;
	height: 100vh;
	counter-reset: sidenote-counter;
	background-color: #ccf5ff;
	hyphens: auto;

 }

/* --------------- */
/* FONT/TEXT STUFF */
/* --------------- */


body {
 	font-family: sans_font, sans-serif;
 	letter-spacing: 1pt;
 	font-size: x-large;
 	line-height: 1.5;
}

nav {
	font-family: ;
	font-weight: bolder;
}

nav ul li {
	border-radius: 8px;
	xbackground-color: var(--blue);
	xborder: 3px var(--accent-dark) solid;
	padding: 0 8px;
	line-height: 1;
}

nav ul li:hover {
	xbackground-color: var(--purple);
	    text-shadow: 2px 2px 0px var(--blue);

}

nav ul li a {
	text-decoration: none;
	color: var(--accent-dark);
}

nav ul li a:hover {
	xbackground-color: var(--purple);
}

h1 {
	font-family: distress_font, sans-serif;
	text-transform: uppercase;
	    text-shadow: 2px 2px 0px var(--blue);
}

h2 {
    text-shadow: 2px 2px 3px var(--green););

}

h2, h3 {
	font-family: mono_font, monospace;
	letter-spacing: -0.2pt;
}

.content_body {
}

.content_body p {
	font-family: sans_font, sans-serif;
	text-align: left;
	hyphens: auto;
	letter-spacing: -0.2pt;
}

.content_body blockquote {
	margin: 0 auto 32px;
	display: block;
	width: 40ch;
}

.content_body blockquote p {
	font-family: mono_font, monospace;
	xborder-left: 8px var(--accent-dark) solid;
	border-radius: 4px;
	background-color: #dbb065;
	color: var(--accent-dark);
	font-weight: bold;
	padding:  16px;
	text-indent: 32px;
	margin-left: 32px;
	line-height: 1;
	text-align: left !important;
	hyphens: none !important;
}

.article_body p {
	font-family: serif_font, serif;
	size-adjust: 130%;
	letter-spacing: -0.3pt;
}

figcaption {
	font-size: medium;
	font-family: mono_font, monospace;
}





.book_wrap, .update_wrap {
	background-color: var(--accent-light);
	padding: 16px;
	border-radius: 2rem 0;
	border: 3px var(--accent-dark) solid;
}

.book_wrap a:hover, .update_wrap a:hover {
	xbackground-color: var(--green);
	text-shadow: 2px 2px 0 var(--red);
}

.book_page_excerpt {
		background-color: var(--accent-light);
		padding-bottom: 32px;
		text-indent: 32px;

}

.book_page_keywords p {
	hyphens: none;
	font-size: medium;
	font-family: sans-serif;
	font-style: oblique;
	color: var(--red);
	width: 60%;
	text-align: center !important;
}

.book_page_excerpt p {
	text-align: left;
			font-family: serif_font, serif;

}

.update_date {
	font-size: small;
	color: var(--purple);
}

/* -----------  */
/* LINKS STUFF */
/* -----------  */

.book_desc a, .update_wrap a {
	text-decoration: none;
	color:var(--color); 
}

.update_link {
	font-family: sans_font, sans-serif;
	font-weight: bold;
	xtext-transform: uppercase;
	font-size: xx-large;
	width: 100%;
}

.update_desc {
	font-family: mono_font, monospace;
}



/* ----------------- */
/* POSITIONING STUFF */
/* ----------------- */

* {
	box-sizing: border-box;
	padding:0;
	margin: 0;

}

html {

	box-sizing: border-box;
}

 body {
	width: 100vw;
	height: 100vh;
	counter-reset: sidenote-counter;
 }

.page {
 	width: 100%;
 	display: block;
 	margin: 0;
 	padding: 0;
 }



/* HEADER */

header {
	border-bottom: 1px black dotted;
}

.site_title_mobile {
	display: none;
}

.site_title_wide {
	width: 100%;
	overflow: hidden;
	line-height: 0;
}

.site_title_wide img {
	margin: 0;
	padding: 0;
	line-height: 0;
	display: block;
	top: 0;
	left:0;
}

nav {
	background-color: var(--accent-light);
	padding: 10px;
	padding-left: 25px;
	margin: 0;
	text-align: center;
}

nav ul li {
	display: inline-block;
	xpadding: 10px;
	margin-right: 16px;
}


/* MAIN */

main {
	xpadding-left: 25px;
	text-align: center;
}

.content_body > * {
	margin-top: 16px;
}

h1, .content_body h1,.content_body h2,.content_body h3 {
	margin-top: 32px;
	margin-bottom: 16px;
}

.content_header img {
	max-width: 50%;
	line-height: 0;
}

img {
	display: block;
	margin: 0 auto;
}

img.img_center {
	display: block;
	margin: 0 auto;
	width: initial;
	max-width: 75%;
}

figure {
	display: block;
}

figcaption {
	max-width: 50%;
	margin: 0 auto;
	padding: 0;
}

.content_body p {
	width: 45ch;
	display: block;
	margin-left: auto;
	margin-right:auto;
	margin-top: 0;
	margin-bottom: 32px;
}


/* ---------- */
/* BOOK PAGES  */
/* ---------- */

.book_page_buy {
	border: 3px black dotted;
	background-color: var(--purple);
	color: var(--white);
	padding-bottom: 16px;

}

.book_page_buy h1 {}

.book_page_buy ul {
	display: inline-block;
	list-style: none;
	vertical-align: top;
}

.book_page_buy li a img {
	border: 3px var(--accent-dark) solid;
	border-radius: 8px;
	padding: 4px;
	background-color: var(--white);
}



.book_page_buy a img:hover {
	background-color: var(--blue);
}

.book_page_cover img {
	float: left;
	clear: left;
	margin-right: 16px;
}

.book_page_keywords {
	margin: 0 auto;
}

/* ---------- */
/* NEWSLETTER */
/* ---------- */

.newsletter_wrap {
	text-align: center;
	margin-bottom: 16px;
}

.newsletter_image p {
	margin: 0 auto;
}

.newsletter_button {
	margin-top: 16px;
}

.newsletter_button p {
	display: block;
	margin: 0 auto;
	text-align: center;

}

.newsletter_button a {
		xborder-radius: 2rem 0;
	border: 3px var(--accent-dark) solid;
	background-color: var(--green);
	text-decoration: none;
	padding: 8px;
	color: var(--accent-dark);
}

.newsletter_button a:hover {
	background-color: var(--red);
}

.newsletter_button a:active {
	background-color: var(--blue);
}


footer {
	border-top: 1px black dotted;
	margin: 0;
	margin-top: 64px;
	font-size:small;
	text-align: center;
}

.copyright {
	margin: 8px;
}

/* UPDATES */


.update_wrap > * {
	max-width: 75%;
	margin: 0 auto;
	line-height: 1;
}

.update_wrap {
	width: 650px;
	margin-bottom: 64px;
	max-width: 75%;
	margin: 0  auto 32px;
}

.update_cover img {
	max-width: 95%;
}

.update_date {
	margin-bottom: 16px;
}

.update_desc {
	xmax-width: 75%;
	display: block;
}


/* BOOKS */

.book_wrap {
	width: 350px;
	line-height: 1;
	display: inline-block;
	vertical-align: top;
	margin: 8px;
	padding:32px;
}

img.book_cover_img {
	xwidth: 100%;
	max-width: initial;
}

.book_link, .book_date {
	display: none;
}

.book_desc {
	margin-top: 16px;
}

/*SIDENOTE DESKTOP*/
/*SIDENOTE DESKTOP*/
/*SIDENOTE DESKTOP*/


.sidenote,
.marginnote {
	background-color: var(--white);
	border: 3px var(--accent-dark) solid;
	color: var(--color);	
	position: relative;
	float: right;
	clear: right;
	width: 240px;
	margin-top: 16px;
	margin-left: 8px;
	padding: 16px;
	line-height: 1.3;
	hyphens: none;
	border-radius: 2rem 0;
	text-align: left;
	font-size: large;
	font-family: mono_font, monospace;
}

.sidenote-number {
	counter-increment: sidenote-counter;
	margin-right: 0.5ch;
	font-size: small;
}

.sidenote-number:after,
.sidenote:before {
	font-family: serif_font, serif;
	position: relative;
	vertical-align: baseline;
}

.sidenote-number:after {
	content: counter(sidenote-counter);
	top: -0.5rem;
	left: 0.1rem;
}

.sidenote:before {
	content: counter(sidenote-counter) " ";
	top: -0.5rem;
	font-size: medium;
	padding-right: 4px;
}

blockquote .sidenote,
blockquote .marginnote {
	margin-right: -82%;
	min-width: 59%;
	text-align: left;
	border-radius: 3px;
}

.sidenote-wrapper input {
	visibility: initial;
	display: none;
}

.sidenote-wrapper + h2 {

	margin-bottom: 2ch;

}





/* MOBILE */
/* MOBILE */
/* MOBILE */
/* MOBILE */
/* MOBILE */
/* MOBILE */
/* MOBILE */

@media only screen and (max-width: 1000px) {


.content_body p {
	/*all:initial;*/
	width: initial;
	padding: 0 16px;
}

.content_body img {
	max-width: 95%;
	text-align: center;
	display: block;
	margin: 0 auto;
}

.content_cover img {
	max-width: 100%;
}

.book_page_cover img {
	float: none;
	clear: initial;
}

.book_page_buy ul {
	margin-bottom: 16px;
}

.book_page_excerpt {
	padding-top:32px;
}

.book_page_excerpt h2 {
	text-indent: 0;
}

.book_page_more {
	max-width: 95%;
	display: block;
	margin: 0 auto;

}

.book_page_more img {
	display: inline-block;
}

blockquote {
	margin: 0;
	padding: 0;
	margin-bottom: 32px;
	max-width: 95%;
}

.content_body blockquote p {
	margin:0 auto;
	display: block;
	width: 95%;



}

figure {
	margin-bottom: 32px;
}

figcaption {
	max-width: 95%;
}

/* SIDENOTE MOBILE  */

.sidenote-wrapper input {
	visibility: initial;
	display: inline;
}
  label.margin-toggle:not(.sidenote-number) {
        display: inline;
    }

    .sidenote,
    .marginnote {
        display: none;
        font-size: inherit;
        font-family: mono_font, monospace;
        background-color: var(--white);
        text-align: left;
    }

    .margin-toggle:checked + .sidenote,
    .margin-toggle:checked + .marginnote {
        display: block;
        float: left;
        left: 1rem;
        clear: both;
        width: 95%;
        margin: 1rem 2.5%;
        vertical-align: baseline;
        position: relative;
    }

    label {
        cursor: pointer;
    }
}
