@charset "utf-8";

/*
Theme Name: Pixel Envy
Theme URI: https://pxlnv.com/
Author: Nick Heer
Author URI: https://nickheer.com/
Description: Nick Heer Made It
Version: 8.0.2019.06.16
*/

/* 
	Globals 
*/

html, body{
	margin: 0;
	padding: 0;
	font: 400 16px/1.4 'Charter', 'Georgia', Times, serif;
	color: #40404f;
	background: #f8f9fb;
}

::selection{
	background: rgba(30,108,227,0.6);
	color: #fff;
	text-shadow: none;
}

.wrapper{
	width: 761px;
	margin: 0 auto;
}
	
main{
	display: inline-block;
	width: 521px;
	padding: 0 40px 40px;
	background: #fff;
}

hr{
	height: 20px;
	margin-bottom: 40px;
	border: 0;
	outline: 0;
	border-bottom: 1px solid #cccddf;
}

.footnotes hr{
	margin: 0;
	border: none;
}

iframe{
	max-width: 100%;
}

a{
	color: #1e6ce3;
	text-decoration: none;
}

a:visited{
	color: #0c7fb9;
}

article a:hover{
	text-decoration: underline;
}

/* 
	Typography
*/

h1,
h2,
h3,
h4,
h5,
h6,
header cite,
nav,
footer,
b,
.centrelink,
th,
time,
figcaption,
.search input,
.navigation,
aside,
button,
.stripe-button-el{
	text-rendering: optimizeLegibility;
	font-family: -apple-system, 'BlinkMacSystemFont', 'Helvetica Neue', 'Helvetica', Arial, sans-serif;
}

pre,
code{
	font-family: 'SF Mono', 'Menlo', 'Source Code Pro', Monaco, 'Courier Prime', Courier, monospace;
	font-size: 85%;
}

h3{
	font-size: 1.5em;
	font-weight: normal;
	margin-top: 100px;
	margin-bottom: 0;
}

h4{
	font-size: 1em;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	line-height: 1.5em;
	margin: 3em 0 .5em;
}

h4,
h4 strong{
	font-weight: normal;
}

h5{
	margin: 3em 0 .5em;
	font-size: 1em;
	text-transform: none;
	font-weight: bold;
	line-height: 20px;
}

h6{
	font-size: .8em;
	text-transform: uppercase;
	font-weight: normal;
	letter-spacing: 0.125em;
	margin-top: 3em 0 .5em;
	color: #90909f;
}

h2 + h3,
h2 + h4,
h3 + h4,
h4 + h5{
	margin-top: 0;
	padding-top: 10px;
}

blockquote{
	width: 80%;
	padding: 10px 0;
	margin: 20px 40px;
	font-size: .9em;
	color: #64646f;
}

sup{
	vertical-align: baseline;
	position: relative;
	top: -0.4em;
	left: 0.15em;
	font-size: 80%;
	white-space: nowrap;
}

sup:before{
	content: '[';
	color: #64646f;
}

sup:after{
	content: ']';
	color: #64646f;
}

sup,
sup a,
sup:before,
sup:after{
	z-index: 1;
}

ol, ul{
	
}

ol li{
	list-style: decimal outside;
}

ol li ol li{
	list-style: lower-latin outside;
}

ul li{
	list-style: disc outside;
}

ul li ul li{
	list-style: circle outside;
}

.footnotes ol{
	padding-left: 20px;
	
}

pre{
	width: 501px;
	overflow-y: scroll;
	background: #f3f4f6;
	padding: 10px;
	border-radius: 4px;
}

code{
	background: #f3f4f6;
	word-break: break-all;
}

b{
	text-transform: uppercase;
	letter-spacing: 0.135em;
	font-weight: 600;
}

b,
.footnotes ol{
	font-size: .8em;
}

/*
 Tables are garbage
*/

table{
	max-width: 100%;
	margin-bottom: 40px;
	background: #f8f9fb;
}

tr:nth-child(even){
	background: #f3f4f6;
}

td, th{
	max-width: 100%;
	padding: 10px;
	font-size: 14px;
}

table.numerical{
	table-layout: fixed;
}

table.numerical tr,
td.numerical{
	text-align: right;
}

th{
	max-width: 100%;
	color: #90909f;
	text-transform: uppercase;
	font-size: 9px;
	border-bottom: 1px solid #cccddf;
	text-align: center;
	letter-spacing: .06em;
}

tr{
	max-width: 100%;
	border-bottom: 1px solid #cccddf;
}

table.thumbs{
	text-align: center;
	vertical-align: middle;
}

tr.highlight{
	background: #fcfada;
}

time{
	display: block;
	width: 100%;
	text-align: right;
	text-transform: uppercase;
	font-weight: normal;
	font-size: 11px;
	margin-top: 30px;
	letter-spacing: 0.135em;
}

time a:hover{
	text-decoration: none;
}

.centrelink{
	text-align: center;
	font-size: 18px;
	font-weight: 300;
	text-transform: uppercase;
	letter-spacing: 0.135em;
}

.centrelink a{
	display: block;
	width: 100%;
	height: 60px;
	line-height: 80px;
	margin-top: -60px;
}

.centrelink a:hover{
	border: none;
}

time a,
time a:visited,
.centrelink a,
.centrelink a:visited,
.singleton time{
	color: #64646f;
}

time a:hover,
.centrelink a:hover{
	color: #1e6ce3;
	text-decoration: none;
}

/* Header */

header{
	display: block;
	width: 100%;
	margin-bottom: 2px;
}

header div{
	box-sizing: border-box;
	width: 601px;
	padding: 20px 40px;
	background: #fff;
}

header h1{
	display: inline-block;
	margin: 0;
	padding: 0;
	font-size: 15px;
}

header h1 span{
	display: none;
}

header h1 a,
header h1 a:visited{
	display: inline-block;
	width: 180px;
	height: 60px;
	color: #40404f;
	font-weight: 400;
	text-transform: uppercase;
	line-height: 60px;
	letter-spacing: 0.35em;
}

header h1 strong{
	color: #1e6ce3;
	font-weight: 900;
}

header h1 a:hover{
	color: #1e6ce3;
	border: none;
}

#wordmark,
header h1 img{
	width: 180px;
	height: 20px;
}

#wordmark{
	position: relative;
	top: 3px;
}

.glyph{
	fill: #1e6ce3;
}

.wordmark{
	fill: #40404f;
}

#wordmark:hover .wordmark{
	fill: #1e6ce3;
}

header h1 img{
	
/* 	opacity: 0; */
}

header h1 a:hover figure{
	fill: #1e6ce3;
}

header cite{
	position: relative;
	top: -24px;
	margin-left: 1em;
	color: #64646f;
	font-style: normal;
	font-size: .8em;
}

/* Footer */

footer{
	display: inline-block;
	vertical-align: top;
	width: 130px;
	color: #64646f;
	margin-left: 20px;
	padding: 60px 0 120px;
}

footer p{
	font-size: .85em;
}
	
footer a,
footer a:visited{
	color: #64646f;
}

footer p a{
	text-decoration: underline;
}

footer small,
footer small a,
footer small a:visited{
	color: #64646f;
}

footer a:hover,
footer a:visited:hover{
	border: none;
	color: #1e6ce3 ;
}

footer small{
	font-size: .9em;
}

nav{
	display: block;
	margin: 0 0 3em;
	font-size: .7em;
	text-transform: uppercase;
}

nav a,
nav a:visited{
	display: block;
	margin: .25em 0;
	padding: .5em 0;
	letter-spacing: .135em;
	color: #40404f; /* #64646f */
	text-decoration: none;
}

nav a:hover,
nav a:visited:hover{
	color: #1e6ce3;
}

/* Carbon */

.carbon-wrapper{
	min-height: 180px;
}

#carbonads{
	margin: 0 0 3em;
	line-height: .9em;
}

.carbon-img img{
	margin-bottom: .5em;
	background: none;
	border-radius: 3px;
}

.carbon-img:hover img{
	background: #e4e4e8;
}

.carbon-text{
	font-size: .7em;
	text-decoration: none;
}

.carbon-text:hover,
.carbon-img:hover + .carbon-text{
	text-decoration: underline;
	color: #1e6ce3;
}

.carbon-poweredby{
	display: inline-block;
	width: 100%;
	font-size: .55em;
	text-transform: uppercase;
	margin-top: 1.5em;
	text-decoration: none;
	letter-spacing: 0.135em;
}

.search{
	margin-top: 4em;
}

.search input{
	/* resets */
	box-sizing: border-box;
	border: 0;
	outline: 0;
	-webkit-appearance: none;
	   -moz-appearance: none;
	width: 100%;
	height: 32px;
	font-size: .8em;
	background: url('images/search@2x.png') 6px 9px no-repeat rgba(0,0,0,.05);
	background-size: 14px 14px;
	color: #90909f;
	border-radius: 4px;
	padding: 8px 4px 8px 25px;
	-webkit-transition: 0.2s all ease-in-out;
	   -moz-transition: 0.2s all ease-in-out;
	        transition: 0.2s all ease-in-out;
}

.search input:focus{
	box-shadow: 0px 0px 2px 1px #1e6ce3;
	background-color: #fff;
}

.stripe-button-el{
	display: inline-block;
	margin: 0;
	padding: 0 2em;
	background: #1e6ce3;
	color: #fff;
	line-height: 30px;
	font-size: .85em;
	border: none;
	border-radius: 4px;
}

/* Posts */

article{
	margin: 0 0 20px;
	padding: 20px 0 40px;
}

article h1,
article h2{
	font-weight: normal;
}

article h1{
	font-size: 2.25em;
	line-height: 1.2;
}

article h2{
	margin: 1.5em 0 .5em;
	font-size: 1.8em;
}

article h1 a, 
article h1 a:visited,
article h2 a,
article h2 a:visited{
	color: #40404f;
}

article h1 a:hover,
article h2 a:hover{
	color: #1e6ce3;
	text-decoration: none;
}

article.category-linklog h2{
	font-size: 1.1em;
	line-height: 1.5em;
}

article.category-linklog h2 a{
	color: #1e6ce3;
}

article.category-linklog h2 a:hover{
	text-decoration: underline;
}

/*  =======
	FIGURES
	=======
	
	Usage:
	
	<figure class="[[banner]+[fullwidth|overspan]]
	               [alignleft|alignright|alignseveral]
	               [withborders]
	               ">
	               <figcaption>optional caption</figcaption>
	               <img src="img.jpg" width="xyz" alt="alt">
	</figure> 
	
		* .banner treats image as inline, not block, and hides overflow (and
		  should be used in conjunction with one of the .height--- classes);
		* .fullwidth spans the 521px paragraph width; 
		* .overspan fully spans the 601px column;		
		* .alignseveral simply adds right and bottom margins, which is useful
		  for placing several <figure>s in one paragraph side by side;
		* <figcaption> *must* precede <img> - especially if class="withborders"
		  is set - to ensure borders draw correctly;
		* figures also support <audio> and <video>, not just images.

	Implementation note: figcaption is set using the hack above rather than
	placing at the end because some browsers render the caption outside of the
	figure if the figure gets borders (ie. figure.withborders{borders:x,y,z} rather
	than the current figure.withborders img{borders:x,y,z}).
	
	Asides *must* use either .alignleft or .alignright.
	
	Todo: Tidy section, condense classes.
	
	Ref: http://stackoverflow.com/questions/6534473/
	
*/
	
aside {
	width: 138px;
	padding: 10px;
	margin: 0 0 10px;
	text-align: left;
	border: 1px solid #cccddf;
}

aside p {
	font-size: .8em;
	color: #90909f;
	width: 138px;
	margin: .5em 0;
	padding: 0;
}

aside p:first-child,
aside p:last-child{
	/* WordPress blank paragraph bullshit */
	margin: 0;
}

figure {
	display: table;
	height: auto;
	margin: 0;
}

figcaption {
	font-size: .8em;
	color: #90909f;
	display: table-caption;
	caption-side: bottom;
	padding: 5px 0;
}

.aligncentre {
	text-align: center;
	width: 100%;
	display: block;
}

.alignleft {
	float: left;
	margin: 0 20px 20px 0;
}

.alignright {
	float: right;
	margin: 0 0 20px 20px;
}

.alignseveral {
	float: left;
	margin: 0 10px 10px 0;
}

.norightmargin {
	margin: 0 0 10px;
}

.stacked {
	margin-bottom: 10px;
}

.fullwidth {
	width: 521px;
	margin: 10px 0;
}

.overspan {
	width: 601px;
	margin: 40px 0 40px -40px;
}

.overspan figcaption {
	width: 521px;
	padding: 0 40px;
}

figure img {
	vertical-align:top;
}

figure.withborders img,
figure.withborders audio,
figure.withborders video {
	padding: 10px 0;
	border-top: 1px solid #cccddf;
	border-bottom: 1px solid #cccddf;
}

figure.withborders figcaption {
	padding-bottom: 10px;
	border-bottom: 1px solid #cccddf;
}

figure.withborders figcaption+img,
figure.withborders figcaption+a img {
	border-bottom:0;
}

figure audio {
	width: 100%;
	height: 40px;
}

figure a img {
	border-bottom:none;
}

/* THIS IS NEW */

figure.video{
	position: relative;
	height: 0;
	padding: 0 0 56.25%;
}

figure.video iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
	
figure.overspan{
	border-top: 10px solid #f8f9fb;
	border-bottom: 10px solid #f8f9fb;
}

figure.overspan img,
figure.overspan iframe{
	overflow: hidden;
	border-radius: 4px;
	box-shadow: 0 2px 25px rgba(0,0,0,.1);
}

figure.overspan.withborders img{
	padding: 0;
	border: none;
}

figure.overspan figcaption{
	background: #f8f9fb;
	border: none;
}

/* Index */
	
.article-list article,
.archive article{
	/* border-bottom: 1px solid #cccddf; */
}

/* Singletons */

main.singleton{
	margin-bottom: 120px;
}

.singleton article{
	margin-bottom: 0;
	border-bottom: none;
}

.singleton .linklog .navigation{
	display: none;
}

.navigation-wrapper{
	margin: 40px 0;
}

.navigation{
	width: 100%;
	display: table;
	table-layout: fixed;
}

.navigation .previous,
.navigation .next{
	box-sizing: border-box;
	display: table-cell;
	width: 50%;
	padding: 0 20px;
}

.navigation .previous{
	text-align: right;
	border-right: 1px solid #cccddf;
}

.navigation strong{
	display: block;
	width: 100%;
	margin-bottom: .25em;
	text-transform: uppercase;
	color: #90909f;
	font-weight: normal;
	letter-spacing: 0.135em;
	font-size: .7em;
}

/* Search, Archive, Articles Index */

.archive-title{
	margin: 0;
	padding: 1.5em 0;
	font-size: 1.35em;
}

/* Archive Pages */

.archive h1{
	text-transform: uppercase;
	font-size: 14px;
	letter-spacing: 0.135em;
	height: 24px;
	margin: 20px 0px 60px 0px;
	border-bottom: 3px double #cccddf;
}

.archive h2 a{
	color: #40404f;
}

.archive h2 a:hover{
	color: #1e6ce3;
}

.archive .navigation{
	line-height: 40px;
}

.archive .navigation a, .archive .navigation a:visited{
	color: #90909f;
}

.archive .navigation a:hover{
	color: #1e6ce3;
	text-decoration: none;
}

.archive h3.archive-title + article,
.archive h3.archive-title + article h2:first-of-type{
	margin-top: 0;
	padding-top: 0;
}

/* Articles Index */

.articles time{
	margin: 40px 0 0;
	text-align: left;
}

.articles h2{
	margin: 0 0 .5em;
}


/* Assorted CSS Hacks */

.ir{background-color:transparent;border:0;overflow:hidden;*text-indent:-9999px}.ir:before{content:"";display:block;width:0;height:100%}.hidden{display:none !important;visibility:hidden}.visuallyhidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.visuallyhidden.focusable:active,.visuallyhidden.focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}.invisible{visibility:hidden}.clearfix:before,.clearfix:after{content:" ";display:table}.clearfix:after{clear:both}.clearfix{*zoom:1}.hidden{display:none}.clearboth{clear:both}.mobileonly{display:none;visibility:hidden}

/* Media Queries */

@media (max-width: 760px){
	
	html, body{
		font: 400 20px/1.4 'Charter', 'Georgia', Times, serif;
	}
	
	body{
		padding: 0;
	}
	
	.wrapper,
	main,
	header div,
	footer,
	nav{
		box-sizing: border-box;
		width: 100%;
		padding: 0;
	}
	
	main,
	header div{
		display: block;
		max-width: 521px;
		margin: 0 auto;
		padding: 0 6.6666666%;
	}
	
	/* Typography */
	
	pre,
	code{
		max-width: 100%;
		overflow: scroll;
	}
	
	blockquote{
		box-sizing: border-box;
		width: 90%;
		margin: 1em 2.5% 1em 7.5%;
	}
	
	/* Tables */
	
	table{
		display: block;
		width: 100%;
		max-width: 100%;
		overflow-x: scroll;
	}

	/* Header */
	
	header,
	header h1,
	header h1 a,
	header h1 a:visited{
	}
	
	header h1 img{
		
	}
	
	header cite{
		top: -10px;
		display: block;
		margin: 0;
	}
	
	header div{
		border-bottom: 1px solid #cccddf;
	}
	
	/* Footer */
	
	footer{
		display: block;
		max-width: 521px;
		margin: 0 auto;
		padding: 60px 6.6666666%;
	}
	
	nav{
		margin-bottom: 60px;
		font-size: .9em;
	}
	
	nav:after{
		content: ' ';
		display: table;
		clear: both;
	}
	
	nav a{
		float: left;
		display: block;
		width: 50%;
		padding: 1.5em 0;
		text-align: center;
	}
	
	#carbonads{
		margin: 0 0 60px;
		text-align: center;
	}
	
	.carbon-img,
	.carbon-text{
		display: block;
	}
	
	.carbon-img{
		width: 100%;
	}
	
	.carbon-text{
		max-width: 80%;
		margin: 10px 10%;
	}
	
	/* Articles */
	
	main.articles{
		padding-top: 20px;
	}
	
	article h1{
		font-size: 1.85em;
	}
	
	article h2{
		margin: 1em 0 0;
	}
	
	/* Figures */
	
	figure img{
		max-width: 100%;
		height: auto;
	}
	
	figure.fullwidth,
	figure.overspan,
	figcaption,
	figure.overspan figcaption{
		box-sizing: border-box;
		width: 100%;
		margin: 0;
		padding: 0;
	}
	
	figure.overspan{
		border: none;
	}
	
	figure.overspan figcaption{
		padding: 10px 0;
		background: #fff;
	}
	
	/* Singleton */
	
	.navigation,
	.navigation .previous,
	.navigation .next{
		width: 100%;
		display: block;
		padding: 20px 0;
	}
	
	.navigation .previous{
		text-align: left;
		border-right: 0;
		border-bottom: 1px solid #cccddf;
	}

	
}

@media (max-width: 480px){
	
	figure.alignleft,
	figure.alignright,
	figure.alignseveral{
		max-width: 50%;
	}
	
}

@media (max-width: 360px){
	
	header{
		font-size: .6em;
	}
	
}

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi){
	.search input{
		background:url('images/search@2x.png') 7px 9px no-repeat #e4e4e8;
		background-size: 14px 14px;
	}
}

/* EOF */