/**
 * Global styles.
 */

body {
  min-width: var(--width-small);
  color: var(--color-black);
  background: var(--color-white);
  font-size: var(--font-size);
  font-family: var(--font-base);
  line-height: var(--line-height);
}

a {
  display: inline-block;
  padding-left: 2px;
  padding-right: 2px;
  color: var(--color-link);
}

a:active,
a:focus,
a:hover {
  text-decoration: underline;
}

a:focus {
  color: var(--color-focus);
}

a:active,
a:hover {
  color: var(--color-hover);
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6,
.heading {
  margin-bottom: var(--vertical-rhythm-spacing);
  font-family: var(--font-heading);
}

h1,
.h1 {
  color: var(--heading-1-color);
  font-size: var(--font-size-h1);
  font-weight: var(--heading-1-font-weight);
  line-height: var(--heading-1-line-height);
}

h2,
.h2 {
  color: var(--heading-2-color);
  font-size: var(--font-size-h2);
  font-weight: var(--heading-2-font-weight);
  line-height: var(--heading-2-line-height);
}

h3,
.h3 {
  color: var(--heading-3-color);
  font-size: var(--font-size-h3);
  font-weight: var(--heading-3-font-weight);
  line-height: var(--heading-3-line-height);
}

h4,
.h4 {
  color: var(--heading-4-color);
  font-size: var(--font-size-h4);
  font-weight: bold;
  font-weight: var(--heading-4-font-weight);
  line-height: var(--heading-4-line-height);
}

h5,
.h5 {
  color: var(--heading-5-color);
  font-size: var(--font-size-h5);
  font-weight: var(--heading-5-font-weight);
  font-variant: small-caps;
  line-height: var(--heading-5-line-height);
}

h6,
.h6 {
  text-decoration: underline;
  color: var(--heading-6-color);
  font-size: var(--font-size-h6);
  font-weight: var(--heading-6-font-weight);
  font-variant: small-caps;
  line-height: var(--heading-6-line-height);
}

p,
ul,
ol,
pre,
table,
blockquote {
  margin-bottom: var(--vertical-rhythm-spacing);
}

ol,
ul {
  margin-left: 1rem;
  padding-left: 2rem;
}

ul ul,
ol ol,
ul ol,
ol ul {
  margin-bottom: 0;
  padding-left: 1rem;
}

pre:focus,
code:focus {
  outline: 2px solid var(--color-focus);
}

sub,
sup {
  position: relative;
  vertical-align: baseline;
  line-height: 0;
}

sup {
  top: -0.5rem;
}

sub {
  bottom: -0.25rem;
}

img {
  margin-bottom: var(--vertical-rhythm-spacing);
}

table {
  width: 100%;
  text-align: left;
  border: var(--table-border);
  border-collapse: collapse;
}

thead th {
  padding: var(--table-padding);
  background-color: var(--table-bg-color);
}

tbody td {
  padding: var(--table-padding);
}

tbody tr {
  border-bottom: var(--table-border);
}

blockquote {
  padding: 1rem 1rem 1rem 2rem;
  background-color: var(--color-accent-2-light);
  border-left: 0.5rem solid var(--color-blockquote)
}

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

.layout-container {
  margin: 0;
}
