/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body,
div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-style: inherit;
  font-variant: inherit;
  font-weight: inherit;
  font-size: inherit;
  line-height: inherit;
  font-family: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

table {
  border-collapse: collapse;
  border-spacing: 0;
}

:root {
  --g: 1rem;
  --g-md: .5rem;
  --g-lg: 2rem;
  --c: #333;
  --c-lighter: #777;
  --c-bg: #fefefe;
  --c-inverse: white;
  --c-bling: red;
  --f-size: 18px;
  --f-size-lg: calc( var( --f-size )*1.5 );
  --f-family: 'Work Sans', sans-serif;
  --f-weight: 'normal';
  --f-weight-b: 700;
  --f-style-i: 'italic';
}

@font-face {
  font-family: "Work Sans";
  font-weight: 300;
  font-style: normal;
  src: url("/static/fonts/Work_Sans/WorkSans-Light.ttf") format("truetype");
}
@font-face {
  font-family: "Work Sans";
  font-weight: 400;
  font-style: normal;
  src: url("/static/fonts/Work_Sans/WorkSans-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "Work Sans";
  font-weight: 700;
  font-style: normal;
  src: url("/static/fonts/Work_Sans/WorkSans-Bold.ttf") format("truetype");
}
@font-face {
  font-family: "Work Sans";
  font-weight: 300;
  font-style: italic;
  src: url("/static/fonts/Work_Sans/WorkSans-LightItalic.ttf") format("truetype");
}
html {
  font-family: var(--f-family);
  font-size: var(--f-size);
}

body {
  color: var(--c);
  background-color: var(--c-bg);
}

form, table, ul, ol, dl, h1, h2 {
  font-size: var(--f-size);
  margin: var(--g) 0;
}

h1, h2, strong, b {
  font-weight: var(--f-weight-b);
}

h1 {
  font-size: var(--f-size-lg);
}

h2 {
  margin-bottom: var(--g-md);
}

p {
  margin-bottom: var(--g);
}

a:link {
  color: var(--c);
}
a:visited {
  color: var(--c);
}
a:hover {
  color: var(--c-lighter);
}
a:active {
  color: var(--c-lighter);
}

big {
  font-size: var(--f-size-lg);
}

.site {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

.main {
  max-width: 1024px;
  margin: 0 auto;
  padding: 0 var(--g);
}

.article {
  margin: var(--g) 0;
}
.article > *::first-child {
  margin-top: 0;
}

.aside {
  margin: var(--g-lg) 0;
}

.footer {
  margin: auto var(--g) var(--g);
  text-align: center;
}

@media screen and (min-width: 860px) {
  .nav-socmed ul {
    display: flex;
    justify-content: center;
  }
  .nav-socmed li {
    margin: 0 0.3em;
  }
}

.nav-main, .nav-main * {
  display: inline-block;
  margin: 0;
  padding: 0;
}
.nav-main li, .nav-main * li {
  margin-left: 0.3em;
}

.figure {
  display: block;
  border: 0;
  margin-bottom: var(--g);
}

.figure__media {
  display: block;
  line-height: 0;
}

.figure__src {
  max-width: 100%;
  height: auto;
  display: block;
}

.figure__caption {
  padding: var(--g-md) var(--g);
  text-align: right;
}

.figure--img {
  position: relative;
}
.figure--img .figure__media {
  aspect-ratio: 16/8;
  overflow: hidden;
}
.figure--img .figure__src {
  object-fit: cover;
}
.figure--img .figure__caption {
  display: block;
  position: absolute;
  bottom: 0;
  text-align: left;
  color: var(--c-inverse);
}