/*	==========================================================================
	General styles
	========================================================================== */

/* Font sizes used

Base font size: 1rem = 18px

0.702rem	13px
0.79rem		14px
0.889rem	16px
1.125rem	20px
1.266rem	23px
1.424rem	26px
1.602rem	29px
1.802rem	32px
2.887rem	52px

http://modularscale.com/
8:9 major second
*/

html {
    font-size: 110%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
@keyframes wiggle {
  from {
    fill: #fff;
  }
  50% {
  	fill: #f0f0f0;
  }
  to {
    fill: #fff;
  }
}
.Noise {
    opacity: 0.3;
    pointer-events: none;
    filter: grayscale(100%);
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    filter: url(#noise-bg);
    z-index: -1;
}

body {
    margin: 0 auto;
    font-family: Literata, serif;
	font-weight: 400;
    font-size: 1rem;
    line-height: 1.45;
    color: #000;
  	font-variation-settings: "wght" 400, "opsz" 12;
    background-image: linear-gradient(to right, #ddd 0.5rem, transparent 0.5rem, transparent 0.75rem, #ddd 0.75rem, #ddd 1.15rem, transparent 1.15rem, transparent 1.30rem, #ddd 1.30rem, #ddd 1.5rem, transparent 1.5rem), linear-gradient(to left, #ddd 0.5rem, transparent 0.5rem, transparent 0.75rem, #ddd 0.75rem, #ddd 1.15rem, transparent 1.15rem, transparent 1.30rem, #ddd 1.30rem, #ddd 1.5rem, transparent 1.5rem), linear-gradient(to top, #fefefe, #e0e0e0, #fefefe);
    background-size: 50% 100%, 50% 100%, 100% 100%;
    background-repeat: no-repeat, no-repeat;
    background-attachment: scroll, scroll;
    background-position: top left, top right, 0px 0;
  
    position: relative;
}

main {
 width: 80%;
 max-width: 30rem; 
  margin: 0 auto;
    z-index: 10;
}

h1, h2, h3, h4, h5, h6 {
    font-family: Literata, "Bree Serif", serif;
	font-weight: 500;
	margin-bottom: 0;
      text-shadow: 0px 1px 0px white, 0px 1px 1px white, 0px 1px 3px white;
}

h1 {
	font-size: 3rem;
  	font-variation-settings: "wght" 200, "opsz" 72;
}

h2 {
  font-size: 2.4rem;
    font-variation-settings: "wght" 900, "opsz" 48;
}

h3 {
	font-size: 1.424rem;
}

h4 {
	font-size: 1.266rem;
}

h5 {
	font-size: 1.125rem;
}

h6 {
	font-size: 1rem;
}

p {
	margin-top: 0;
    margin: 1.35rem 0;
}

code, tt, pre {
    font-family: "Source Code Pro", monospace, sans-serif;
    white-space: pre-wrap;
    font-size: 0.79rem;
    border: none;
    background: none;
}

pre {
	padding: 0 2em;
	line-height: 1.3em;
}

code, tt {
	font-weight: 500;
}

pre code {
	font-weight: 300;
}

blockquote {
	margin: 0 2em;
	font-size: 0.889rem;
}

blockquote p {
    margin: 0.8em 0;
}

blockquote cite {
	font-style: normal;
	font-size: 0.889rem;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: #9EABB3 1px solid;
}

/* Links */
.post a {
    color: #006699;
    text-decoration: none;
}

.post a:hover {
    text-decoration: underline;
}

.post a:visited {
    color: #996600;
}


.site-footer a {
	color: #006699;
}

a.read-more, a.read-more:hover, a.read-more:visited {
    color: #006699;
    text-decoration: none;
    font-size:12px;
    font-variation-settings: "wght" 600, "opsz" 7;
}
a.read-more:hover {
	color: #FC7E0F;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
	color: #3A4145;
	text-decoration: none;
}

.post-title a {
	color: #3A4145 !important;
	text-decoration: none !important;
}

/* Tables and dictionaries (straight up ripped out of the Casper stylesheet with minor modifications) */

table {
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin: 1.7em 0;
    width: 100%;
    max-width: 100%;
    background-color: transparent;
}

th, td {
    padding: 8px;
    line-height: 20px;
    text-align: left;
    vertical-align: top;
    border-top: #EFEFEF 1px solid;
}

td h3, td h4, td h5, td h6 {
	margin: 0 0 0.5rem 0;
}

table caption + thead tr:first-child th,
table caption + thead tr:first-child td,
table colgroup + thead tr:first-child th,
table colgroup + thead tr:first-child td,
table thead:first-child tr:first-child th,
table thead:first-child tr:first-child td {
    border-top: 0;
}

table tbody + tbody { border-top: #EFEFEF 2px solid; }

table table table { background-color: #FFF; }

th {
	color: #000;
    background-color: #F6F6F6;
}

dl dt {
    float: left;
    width: 180px;
    overflow: hidden;
    clear: left;
    text-align: right;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 700;
    margin-bottom: 1em;
}

dl dd {
    margin-left: 200px;
    margin-bottom: 1em
}

/*	==========================================================================
	Blog header
	========================================================================== */

.main-header {
    position: relative;
    padding: 2rem;
    margin: 0 auto 1rem;
    text-align: center;
    vertical-align: middle;
    overflow: hidden;
    display: table;
  
    z-index: 10;
}
.main-header svg {
    margin: 0 0 2rem;
    height: 30vh;
}
.main-header-content {
	height: auto;
}

.blog-title {
    margin: 0;
    padding: 0;
    font-family: Literata, serif;
 	font-variation-settings: "wght" 300, "opsz" 72;
	font-weight: 300;
    font-size: 2rem;
    vertical-align: middle;
    line-height: 1;
}

.blog-title a {
	font-color: inherit;
}

.blog-description {
    margin: 1rem auto 1.5rem;
    font-size: 0.75rem;
    font-family: Literata, serif;
    letter-spacing: 0;
    color: #555;
    font-weight: 300;
    font-style: italic;
    max-width: 22rem;
}

/*	==========================================================================
	Navigation
	========================================================================== */

.nav {
	margin-top: 1rem;
}

.nav {
	text-transform: uppercase;
	font-size: .889rem;
}

.nav a {
	margin: 0 0.5rem;
	color: #006699;
	text-decoration: none;
}

.nav a:hover {
	color: #FC7E0F;
}

a.nav-current {
	color: #FC7E0F;
}

a.nav-home, a.nav-blog {
	color: #9EABB3;
}

/*	==========================================================================
	Site footer
	========================================================================== */

.site-footer {
    position: relative;
    display: table;
    width: 100%;
    margin-top: 3rem;
    padding-bottom: 1rem;
    text-align: center;
    overflow: hidden;
    font-size: .79rem;
}

.site-footer a:hover {
	color: #9EABB3;
}


/* RSS - enable to replace the simple RSS icon with a round button */

/*
.site-footer .rss {
	margin: 1rem auto;
	width: 1.7rem;
	height: 1.6rem;
}

.site-footer .rss a {
	display: block;
	height: 100%;
	width: 100%;
	margin-left: -.2rem;
	padding: .35rem .1rem 0.05rem .2rem;
	vertical-align: middle;
	border: 1px #FC7E0F solid;
	border-radius: 1.2rem;
}

.site-footer .rss a:hover {
	color: #ffffff;
	background: #FC7E0F;
}
*/

/*	==========================================================================
	Posts
	========================================================================== */

.post {
    position: relative;
    margin: 2rem auto;
    padding-bottom: 4rem;
    word-break: break-word;
    hyphens: auto;
}

.post-header {
	margin-bottom: 0.5rem;
}

.post-title {
	margin-bottom: 0;
	line-height: 1.25;
}
.post-template .post-title {
    line-height: 1.25;
    margin: 1rem 0 2.5rem;
}


.post-meta {
	text-transform: uppercase;
	font-size: .79rem;
    font-variation-settings: "wght" 400, "opsz" 7;
}

.post-footer {
	margin-top: 2rem;
}

.post-footer .tags a {
	color: #9EABB3;
	text-decoration: none;
}

.post-footer .tags a:hover {
	color: #FC7E0F;
}

.post-footer h4 {
	margin: 2rem 0 0;
}

.post-footer .share {
    margin: 0 auto;
}

.post-footer .share a {
    font-size: 1.8rem;
    display: inline-block;
    margin: 1rem 1.6rem 1.6rem 0;
    color: #BBC7CC;
    text-decoration: none;
}

.post-footer .share a:hover {
    color: #50585D;
}

.post img {
	display: block;
	max-width: 100%;	/* Keep image contained in width of post */
	height: auto;
	margin: 0 auto 0.5rem;
}

.footnotes-sep {
	display: none;
}

/* Koenig image styles */

.kg-image-card {
	margin-bottom: 0.5rem;
}

.kg-image-card img {
	margin-bottom: 0;
}

.post .kg-image-wide {
	max-width: 1050px;
	margin: 0 -200px;
}

@media (max-width: 1100px) {
	.post .kg-image-wide {
		max-width: 140%;
		margin: 0 -20%;
	}
}

@media (max-width: 950px) {
	.post .kg-image-wide {
		max-width: 120%;		/* Start calculating as percentage of viewport? */
		margin: 0 -10%;
	}
}

.post .kg-image-full {
	max-width: 100vw;
	position: relative;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
}

.kg-image-card figcaption {
	font-size: 0.79rem;
	text-align: center;
}


/* YouTube embed wrapper to scale to full-width */

.yt-wrapper {
	position: relative;
	width: 100%;
	margin: 0;
}

.yt-wrapper:before{
	content: "";
	display: block;
	padding-top: 56.25%;	/* 16:9 aspect ratio */
}

.yt-wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*	==========================================================================
	Tags
	========================================================================== */

.tag-title {
    font-family: Literata, serif;
    font-size: 1.802rem;
	font-weight: bold;
	margin-top: 0;
}

.tag-image {
	max-width: 100%
}

.tag-description {
	color: #9EABB3;
}

/* ==========================================================================
   Pagination
   ========================================================================== */

/* The main wrapper for pagination links */
.pagination {
    position: relative;
    margin: 2rem auto;
    font-size: .79rem;
    color: #9EABB3;
    text-align: center;
}

.pagination a {
    color: #9EABB3;
}

/* Push the previous/next links out to the left/right */
.older-posts,
.newer-posts {
    position: absolute;
    display: inline-block;
    text-decoration: none;
}

.older-posts {
    right: 0;
}

.page-number {
    display: inline-block;
    padding: 2px 0;
    min-width: 100px;
}

.newer-posts {
    left: 0;
}

.older-posts:hover,
.newer-posts:hover {
    color: #FC7E0F;
}

.extra-pagination {
    display: none;
}

.extra-pagination .pagination {
    width: auto;
}

/* On page2+ show extra pagination controls at the top of post list */
.paged .extra-pagination {
    display: block;
}

/* ==========================================================================
   12. Media Queries - Smaller than 500px
   ========================================================================== */

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

	html {
		font-size: 100%;
	}

   .blog-title {
		font-size: 2.281rem;
	}
	
	.blog-description {
	   font-size: 0.889rem;
	}
}

video {
	max-width: 100%;
}
/* latin */
@font-face {
  font-family: "Literata";
  font-weight: 200 900;
  font-display: fallback;
  src: url("https://www.baldurbjarnason.com/fonts/literata/LiterataTT_var.latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215,
    U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: "Literata";
  font-weight: 200 900;
  font-display: fallback;
  src: url("https://www.baldurbjarnason.com/fonts/literata/LiterataTT_var.latin-ext.woff2") format("woff2");
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB,
    U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Literata";
  font-style: italic;
  font-weight: 200 900;
  font-display: fallback;
  src: url("https://www.baldurbjarnason.com/fonts/literata/LiterataTT_var-Italic.latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA,
    U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215,
    U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: "Literata";
  font-style: italic;
  font-weight: 200 900;
  font-display: fallback;
  src: url("https://www.baldurbjarnason.com/fonts/literata/LiterataTT_var-Italic.latin-ext.woff2") format("woff2");
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB,
    U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* Set custom properties for each layout feature */
:root {
  --literata-aalt: "aalt" off;
  --literata-c2sc: "c2sc" off;
  --literata-case: "case" off;
  --literata-dlig: "dlig" off;
  --literata-dnom: "dnom" off;
  --literata-frac: "frac" off;
  --literata-lnum: "lnum" off;
  --literata-numr: "numr" off;
  --literata-onum: "onum" off;
  --literata-ordn: "ordn" off;
  --literata-pnum: "pnum" off;
  --literata-salt: "salt" off;
  --literata-sinf: "sinf" off;
  --literata-smcp: "smcp" off;
  --literata-ss01: "ss01" off;
  --literata-ss02: "ss02" off;
  --literata-subs: "subs" off;
  --literata-sups: "sups" off;
  --literata-tnum: "tnum" off;
  --literata-zero: "zero" off;
  --literata-cpsp: "cpsp" off;
}

/* If class is applied, update custom property and
 apply modern font-variant-* when supported */
.literata-aalt {
  --literata-aalt: "aalt" on;
}

.literata-c2sc {
  --literata-c2sc: "c2sc" on;
}

.literata-case {
  --literata-case: "case" on;
}

.literata-dlig {
  --literata-dlig: "dlig" on;
}

@supports (font-variant-ligatures: discretionary-ligatures) {
  .literata-dlig {
    --literata-dlig: "____";
    font-variant-ligatures: discretionary-ligatures;
  }
}

.literata-dnom {
  --literata-dnom: "dnom" on;
}

.literata-frac {
  --literata-frac: "frac" on;
}

@supports (font-variant-numeric: diagonal-fractions) {
  .literata-frac {
    --literata-frac: "____";
    font-variant-numeric: diagonal-fractions;
  }
}

.literata-lnum {
  --literata-lnum: "lnum" on;
}

@supports (font-variant-numeric: lining-nums) {
  .literata-lnum {
    --literata-lnum: "____";
    font-variant-numeric: lining-nums;
  }
}

.literata-numr {
  --literata-numr: "numr" on;
}

.literata-onum {
  --literata-onum: "onum" on;
}

@supports (font-variant-numeric: oldstyle-nums) {
  .literata-onum {
    --literata-onum: "____";
    font-variant-numeric: oldstyle-nums;
  }
}

.literata-ordn {
  --literata-ordn: "ordn" on;
}

@supports (font-variant-numeric: ordinal) {
  .literata-ordn {
    --literata-ordn: "____";
    font-variant-numeric: ordinal;
  }
}

.literata-pnum {
  --literata-pnum: "pnum" on;
}

@supports (font-variant-numeric: proportional-nums) {
  .literata-pnum {
    --literata-pnum: "____";
    font-variant-numeric: proportional-nums;
  }
}

.literata-salt {
  --literata-salt: "salt" on;
}

.literata-sinf {
  --literata-sinf: "sinf" on;
}

.literata-smcp {
  --literata-smcp: "smcp" on;
}

@supports (font-variant-caps: small-caps) {
  .literata-smcp {
    --literata-smcp: "____";
    font-variant-caps: small-caps;
  }
}

.literata-ss01 {
  --literata-ss01: "ss01" on;
}

.literata-ss02 {
  --literata-ss02: "ss02" on;
}

.literata-subs {
  --literata-subs: "subs" on;
}

@supports (font-variant-position: sub) {
  .literata-subs {
    --literata-subs: "____";
    font-variant-position: sub;
  }
}

.literata-sups {
  --literata-sups: "sups" on;
}

@supports (font-variant-position: super) {
  .literata-sups {
    --literata-sups: "____";
    font-variant-position: super;
  }
}

.literata-tnum {
  --literata-tnum: "tnum" on;
}

@supports (font-variant-numeric: tabular-nums) {
  .literata-tnum {
    --literata-tnum: "____";
    font-variant-numeric: tabular-nums;
  }
}

.literata-zero {
  --literata-zero: "zero" on;
}

@supports (font-variant-numeric: slashed-zero) {
  .literata-zero {
    --literata-zero: "____";
    font-variant-numeric: slashed-zero;
  }
}

.literata-cpsp {
  --literata-cpsp: "cpsp" on;
}

/* Apply current state of all custom properties
 whenever a class is being applied */
.literata-aalt,
.literata-c2sc,
.literata-case,
.literata-dlig,
.literata-dnom,
.literata-frac,
.literata-lnum,
.literata-numr,
.literata-onum,
.literata-ordn,
.literata-pnum,
.literata-salt,
.literata-sinf,
.literata-smcp,
.literata-ss01,
.literata-ss02,
.literata-subs,
.literata-sups,
.literata-tnum,
.literata-zero,
.literata-cpsp {
  font-feature-settings: var(--literata-aalt), var(--literata-c2sc),
    var(--literata-case), var(--literata-dlig), var(--literata-dnom),
    var(--literata-frac), var(--literata-lnum), var(--literata-numr),
    var(--literata-onum), var(--literata-ordn), var(--literata-pnum),
    var(--literata-salt), var(--literata-sinf), var(--literata-smcp),
    var(--literata-ss01), var(--literata-ss02), var(--literata-subs),
    var(--literata-sups), var(--literata-tnum), var(--literata-zero),
    var(--literata-cpsp);
}

/* Variable instances */
.literata-caption {
  font-variation-settings: "wght" 400, "opsz" 7;
}

.literata-caption-medium {
  font-variation-settings: "wght" 500, "opsz" 7;
}

.literata-caption-semibold {
  font-variation-settings: "wght" 600, "opsz" 7;
}

.literata-caption-bold {
  font-variation-settings: "wght" 700, "opsz" 7;
}

.literata-text-light {
  font-variation-settings: "wght" 300, "opsz" 12;
}

.literata-text {
  font-variation-settings: "wght" 400, "opsz" 12;
}

.literata-text-medium {
  font-variation-settings: "wght" 500, "opsz" 12;
}

.literata-text-semibold {
  font-variation-settings: "wght" 600, "opsz" 12;
}

.literata-text-bold {
  font-variation-settings: "wght" 700, "opsz" 12;
}

.literata-text-extrabold {
  font-variation-settings: "wght" 800, "opsz" 12;
}

.literata-subhead-light {
  font-variation-settings: "wght" 300, "opsz" 36;
}

.literata-subhead {
  font-variation-settings: "wght" 400, "opsz" 36;
}

.literata-subhead-medium {
  font-variation-settings: "wght" 500, "opsz" 36;
}

.literata-subhead-semibold {
  font-variation-settings: "wght" 600, "opsz" 36;
}

.literata-subhead-bold {
  font-variation-settings: "wght" 700, "opsz" 36;
}

.literata-subhead-extrabold {
  font-variation-settings: "wght" 800, "opsz" 36;
}

.literata-display-extralight {
  font-variation-settings: "wght" 200, "opsz" 72;
}

.literata-display-light {
  font-variation-settings: "wght" 300, "opsz" 72;
}

.literata-display {
  font-variation-settings: "wght" 400, "opsz" 72;
}

.literata-display-medium {
  font-variation-settings: "wght" 500, "opsz" 72;
}

.literata-display-semibold {
  font-variation-settings: "wght" 600, "opsz" 72;
}

.literata-display-bold {
  font-variation-settings: "wght" 700, "opsz" 72;
}

.literata-display-extrabold {
  font-variation-settings: "wght" 800, "opsz" 72;
}

.literata-display-black {
  font-variation-settings: "wght" 900, "opsz" 72;
}
