/*----------------------------------------------*\
    GLOBAL
	======

	@package teaching2
\*----------------------------------------------*/
/* 
 *
 * / Variables
------------------------------------------------*/
/* Widths */
/* Breakpoints */
/* Fonts */
/* 
 *
 * ANCHOR 1./ Global
------------------------------------------------*/
:root {
  --header-bg: #7FBCFD;
  --header-title: #1F2E3F;
  --content-bg: #B2D6FE;
  --post-bg: #fff;
  --post-header-bg: #405D7F;
  --post-header-title: #B2D6FE;
  --post-header-date: #fff;
  --post-text: #405D7F;
}
@media (prefers-color-scheme: dark) {
  :root {
    --header-bg: #a2b7cd;
    --header-title: #2D4159;
    --content-bg: #405D7F;
    --post-bg: #2d4159;
    --post-header-bg: #405D7F;
    --post-header-title: rgb(255,255,255);
    --post-header-date: rgba(255,255,255,.8);
    --post-text: #CBD7E3;
  }
}

body {
  font-family: freight-micro-pro, sans-serif;
  background-color: var(--content-bg);
  font-size: 0.9em;
}
@media screen and (min-width: 30em) {
  body {
    font-size: 1em;
  }
}
@media screen and (min-width: 50em) {
  body {
    font-size: 1.1em;
  }
}
@media screen and (min-width: 70em) {
  body {
    font-size: 1.2em;
  }
}
@media screen and (min-width: 90em) {
  body {
    font-size: 1.3em;
  }
}
@media print {
  body {
    font-size: 1em;
    color: #000 !important;
  }
}

@media print {
  * {
    color: #000 !important;
    background-color: none !important;
  }
}
a {
  color: inherit;
  -webkit-text-decoration: underline 2px;
          text-decoration: underline 2px;
}

.site-header {
  padding: 6em 1em 2em 1em;
  font-family: stratum-1-web, sans-serif;
  background-color: var(--header-bg);
  color: var(--header-title);
  border-bottom: 1em solid var(--post-header-bg);
  margin-bottom: 2em;
}
.site-header .site-branding {
  max-width: 60rem;
  margin: 0 auto;
}
.site-header .site-title {
  display: inline-block;
  font-size: 3em;
  line-height: 90%;
  margin-bottom: 0.25em;
  font-weight: bold;
  text-decoration: none;
  text-transform: uppercase;
}
.site-header .site-title a {
  text-decoration: none;
}
.site-header .site-meta > li {
  display: inline-block;
  margin-right: 0.75em;
}
.site-header .site-meta > li:after {
  content: "//";
  font-size: 0.9em;
  letter-spacing: -0.15em;
  margin-left: 0.75em;
  position: relative;
  top: -0.1em;
  font-weight: normal;
}
.site-header .site-meta > li:last-child:after {
  content: "";
}
.site-header .site-meta > li.semester {
  font-weight: bold;
  text-transform: uppercase;
}

@media screen and (min-width: 30em) {
  .site-main {
    padding: 0 1em;
  }
}

.breadcrumb {
  padding: 0 1em;
  font-family: stratum-1-web, sans-serif;
  color: var(--post-text);
}
@media print {
  .breadcrumb {
    display: none;
  }
}

/* 
 *
 * ANCHOR 2./ Article
------------------------------------------------*/
.type-post, .type-page, .breadcrumb {
  max-width: 60rem;
  margin: 0 auto 3em;
}

.type-post, .type-page {
  color: var(--post-text);
  border-bottom: 0.5em solid rgba(0, 0, 0, 0.3);
}
@media screen and (min-width: 50em) {
  .type-post, .type-page {
    display: flex;
    border-bottom: 0;
    box-shadow: 0.75em 0.75em 0 rgba(0, 0, 0, 0.3);
  }
}
@media (prefers-color-scheme: dark) {
  .type-post, .type-page {
    box-shadow: none;
  }
}

.navigation { /* Prev / Next */
  max-width: 60rem;
  margin: 0 auto 3em;
  color: var(--post-text);
}
.navigation .nav-links {
  display: flex;
  justify-content: space-around;
}
.navigation a {
  padding: 0.5em 1em;
  border: 1px solid var(--post-text);
  text-decoration: none;
}

.entry-header {
  background-color: var(--post-header-bg);
  font-family: stratum-1-web;
  padding: 0.5em 1em;
  display: inline-block;
}
@media screen and (min-width: 30em) {
  .entry-header {
    padding: 0.5em 1.5em;
  }
}
@media screen and (min-width: 50em) {
  .entry-header {
    padding: 1.5em;
    display: block;
    white-space: nowrap;
  }
}
.entry-header .entry-title {
  color: var(--post-header-title);
  background-color: var(--post-header-bg);
  font-size: 1.2em;
  font-weight: bold;
  text-transform: uppercase;
}
@media screen and (min-width: 50em) {
  .entry-header .entry-title {
    font-size: 1.5em;
    position: sticky;
    top: 2em;
  }
}
.entry-header .entry-title a {
  text-decoration: none;
}
.entry-header .entry-meta {
  color: var(--post-header-date);
}
.entry-header .class-date {
  font-weight: bold;
  text-transform: uppercase;
  font-size: 0.85em;
}
@media screen and (min-width: 50em) {
  .entry-header .class-date {
    font-size: 0.7em;
  }
}

.entry-content {
  padding: 1em;
  background-color: var(--post-bg);
}
@media screen and (min-width: 30em) {
  .entry-content {
    font-size: 1.125em;
    padding: 1.5em;
  }
}
@media screen and (min-width: 50em) {
  .entry-content {
    padding-left: 2.5em;
    padding-right: 2.5em;
    width: 100%;
  }
}
.entry-content p, .entry-content ul, .entry-content ol, .entry-content blockquote {
  margin-bottom: 0.8em;
}
.entry-content ul {
  list-style: circle inside;
  padding-left: 2em;
}
.entry-content ol {
  list-style: decimal inside;
  padding-left: 2em;
}
.entry-content li {
  margin-bottom: 0.375em;
  text-indent: -1em;
}
.entry-content li p {
  text-indent: 0;
  margin-top: 0.375em;
}
.entry-content li li { /* nested list */
  margin-top: 0.375em;
  font-size: 0.9em;
}
.entry-content h2 {
  font-family: stratum-1-web, sans-serif;
  text-transform: uppercase;
  font-weight: normal;
  letter-spacing: 0.0125em;
  margin-bottom: 0.25em;
  font-size: 1.85em;
}
.entry-content p + h2, .entry-content ul + h2, .entry-content ol + h2, .entry-content blockquote + h2 {
  margin-top: 1.5em;
}
.entry-content h3 {
  font-family: stratum-1-web, sans-serif;
  font-size: 1.25em;
  font-weight: bold;
  margin-top: 1em;
  margin-top: 1.6em;
  margin-bottom: 0.8em;
}
.entry-content h2 + h3 {
  margin-top: 0.8em;
}
.entry-content h4 {
  font-weight: bold;
  margin-top: 1.6em;
  margin-bottom: 0.4em;
}
.entry-content h3 + h4 {
  margin-top: 0.8em;
}
.entry-content code {
  font-family: monospace;
  padding: 0.125em 0.25em;
  background-color: rgba(0, 0, 10, 0.05);
  font-weight: normal;
  border-radius: 0.25em;
}
.entry-content figure {
  width: auto !important; /* override stupid inline width */
}
.entry-content figcaption {
  font-size: 0.75em;
}
.entry-content blockquote {
  border-left: 5px solid var(--content-bg);
  padding-left: 1em;
}