/* CSS RESET
-------------------------------------------------------------------------------------------------------------------------------------------*/

* {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}


/* Sensible box-sizing */

body,
html,
div,
blockquote,
img,
label,
p,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
ul,
ol,
li,
dl,
dt,
dd,
form,
a,
fieldset,
input,
th,
td,
figure {
    margin: 0;
    padding: 0;
    border: 0;
}

.unselectable {
    -webkit-user-select: none;
    -webkit-touch-callout: none;
    -webkit-user-drag: none;
    user-select: none;
}

img {
    border: 0;
    box-sizing: content-box;
    height: auto;
}

* {
    max-width: 100%;
}

ol,
ul {
    list-style: disc outside none;
    margin-left: 30px;
}


/* Style stripping */

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: "";
}

blockquote,
q {
    quotes: "" "";
}


/* Blockquotes */

.both {
    clear: both;
}

br.both {
    clear: both;
    display: block;
    width: 0px;
    height: 0px;
    overflow: hidden;
}


/* Basic clear styles */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}


/* HTML5 reset */

.cf:after,
.pw:after {
    content: "";
    display: table;
    clear: both;
}


/* Clearfix */

div.pw {
    width: 90%;
    margin: 0 auto;
    padding: 5% 0;
}

body {
    cursor: default;
    font-weight: normal;
    max-width: 50em;
	margin: auto;
	text-rendering: optimizeLegibility;
	margin-top: 1rem;
}

.tlblue {
    background-color: #2295AB;
    color: white;
}

.tlgrey {
    background-color: #eee;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 500;
    text-align: left;
    line-height: 120%;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
    color: #1d1f1c;
}

h1 {
    margin-top: 2rem;
    margin-bottom: 1rem;
    font-size: 2rem;
    font-weight: normal;
}

h2 {
    margin-top: 2rem;
    margin-bottom: 1rem;
    font-size: 1.5rem;
    font-weight: normal;
}

h3 {
    font-size: 1.25rem;
    margin-bottom: 0.5rem;
}

h4 {
    font-size: 1.25rem;
    margin-bottom: 0.5rem;
    text-transform: uppercase;
    font-weight: normal;
}

h5 {
    font-size: 1.2rem;
    margin-bottom: 0.25rem;
}

h6 {
    font-size: 1rem;
    margin-bottom: 0.25rem;
    text-transform: uppercase;
}

em,
i {
    font-style: italic;
}

strong,
b {
    font-weight: 500;
}

body,
p {
    margin-bottom: 1rem;
    color: #1d1f1c;
    line-height: 1.8em;
    text-align: left;
}

pre,
code {
    background-color: #eee;
    margin: 0 0 1em;
    white-space: pre-wrap;
    font-family: monospace, Consolas, Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, Bitstream Vera Sans Mono, Courier New, serif;
    overflow: auto;
    width: auto;
}

pre {
    padding: .5em 1em;
}

code {
    padding: .3em .3em;
}

p:last-of-type {
    margin-bottom: 0;
}

not(h1) a {
    white-space: nowrap;
}

a :not(img){
    outline:none;
    overflow: hidden;
}

a {
    text-overflow: ellipsis;
}

ins,
a:hover {
    text-decoration: none;
}

strong {
    font-weight: 600;
}

footer,
iframe,
img {
    padding: 0.2rem;
    border: 1px solid rgba(0, 0, 0, 0.05);
    max-width: 100%;
    max-height: auto;
}

.clickable-img-hover {
    outline: 2px solid black;
    cursor: pointer;
}

figure {
    display: inline-block;
    margin: 2rem auto;
    margin: 1rem;
    border: 1px solid rgba(0, 0, 0, 0.05);
}

figure p,
figure caption {
    font-size: 0.875rem;
    color: rgba(0, 0, 0, 0.6);
}

figure img {
    margin: 0 auto;
    padding: 0;
    border: 0;
    max-width: 100%;
    max-height: auto;
    height: auto;
}

figure:first-child {
    margin-top: 0rem;
}

header.post {
    padding: 1rem 2rem;
}

div.introtext {
    font-weight: 600;
}

header.post h1 {
    font-weight: 600;
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}

header.post a:link {
    outline: none;
    text-decoration: none;
}

header.post span.source {
    color: rgba(0, 0, 0, 0.75);
    font-size: 0.75rem;
}

header.post span.author {
    color: rgba(0, 0, 0, 0.8);
    font-weight: 500;
    font-size: 0.75rem;
}

div.frcontent {
    padding: 1rem 2rem;
    text-align: justify;
    font-size: inherit;
}

dt {
    float: left;
    font-weight: bold;
    margin-right: 0.5em;
}

dt:after {
    content: ": ";
}

dd:after {
    clear: left;
    content: " ";
    display: block;
}

blockquote {
    margin-top: 10px;
    margin-bottom: 10px;
	padding-left: 15px;
	margin-left: 15px;
    border-left: 3px solid #ccc;
}

b {
    font-weight: bold;
}

.videoWrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 25px;
	height: 0;
}

.videoWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* Themes with no background boxes need less padding */
body.theme.default header.post, body.theme.parchment header.post,
body.theme.default div.frcontent, body.theme.parchment div.frcontent
{
	padding-top: 0;
	padding-bottom: 0;
	margin-bottom: 1rem;
	margin-top: 1rem;
}

/* DEFAULT THEME*/

body.theme.default {
    background: white;
}

footer,
iframe,
img,
figure {
	border: none;
}

/* MIDNIGHT THEME -- also default dark */

body.theme.midnight {
    color: rgba(255, 255, 255, 0.6);
    background: #233540;
}

body.theme.midnight pre,
body.theme.midnight pre code,
body.theme.midnight code {
    background-color: rgba(255, 255, 255, 0.6);
    color: #233540;
}

body.theme.midnight table,
body.theme.midnight th,
body.theme.midnight td {
    border: 1px solid rgba(255, 255, 255, 0.6);
}

body.theme.midnight div.frcontent th,
body.theme.midnight header.post {
    background: rgba(0, 0, 0, 0.1);
}

body.theme.midnight header.post h1 {
    color: #fff;
}

body.theme.midnight header.post h1 a {
    color: #9BA6AC;
}

body.theme.midnight header.post span.source {
    color: #2978a6;
}

body.theme.midnight header.post span.author {
    color: rgba(255, 255, 255, 0.6);
}

body.theme.midnight div.frcontent {
    border: 1px solid rgba(0, 0, 0, 0.1);
}

body.theme.midnight div.frcontent a {
    color: #2978a6;
}

body.theme.midnight div.frcontent h1,
body.theme.midnight div.frcontent h2,
body.theme.midnight div.frcontent h3,
body.theme.midnight div.frcontent h4 {
    color: #2978a6;
}

body.theme.midnight div.frcontent h2 {
    border-color: #2978a6;
}

body.theme.midnight div.frcontent body,
body.theme.midnight div.frcontent ul,
body.theme.midnight div.frcontent figcaption,
body.theme.midnight div.frcontent h5,
body.theme.midnight div.frcontent h6,
body.theme.midnight div.frcontent p {
    color: rgba(255, 255, 255, 0.6);
    text-align: justify;
}

body.theme.spring {
    background: #f8fff2;
}

body.theme.spring header.post {
    background: #ccffa6;
}

body.theme.spring header.post h1 {
    color: #405e80;
}

body.theme.spring header.post span.source {
    color: #405e80;
}

body.theme.spring div.frcontent {
    border: 1px solid #ccffa6;
}

body.theme.spring div.frcontent a {
    color: #405e80;
}

body.theme.spring div.frcontent h1,
body.theme.spring div.frcontent h2,
body.theme.spring div.frcontent h3,
body.theme.spring div.frcontent h4 {
    color: #405e80;
}

body.theme.spring div.frcontent h2 {
    border-color: #405e80;
}

body.theme.parchment {
    background: #faf2e1;
}

body.theme.parchment header.post h1 {
    color: #99400f;
}

body.theme.parchment div.frcontent a {
    color: #99400f;
}

body.theme.parchment div.frcontent h1,
body.theme.parchment div.frcontent h2,
body.theme.parchment div.frcontent h3,
body.theme.parchment div.frcontent h4 {
    color: #99400f;
}

body.theme.parchment div.frcontent h2 {
    border-color: #99400f;
}

body.theme.parchment div.frcontent body,
body.theme.parchment div.frcontent ul,
body.theme.parchment div.frcontent figcaption,
body.theme.parchment div.frcontent h5,
body.theme.parchment div.frcontent h6,
body.theme.parchment div.frcontent p {
    color: rgba(0, 0, 0, 0.8);
}
