@charset "UTF-8";
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 {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

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

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

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

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

a:link, a:visited {
  color: blue; }

html {
  min-height: 100%;
  height: 0; }

body {
  font-family: 'Georgia', serif;
  font-size: 18px;
  line-height: 140%;
  min-height: 100%;
  color: black;
  font-weight: 300;
  background-color: #f4f4f4;
  line-height: 1.6; }

pre {
  margin-top: 20px; }

code {
  font-family: 'Roboto Mono', monospace;
  font-size: 12px; }

.language-error {
  background-color: #f1f2f4;
  color: #aa0e0e; }

.full_width {
  margin: 0px auto;
  max-width: 960px; }

.one_third_width {
  width: 320px;
  max-width: 100%; }

.two_thirds_width {
  width: 640px;
  max-width: 100%; }

.center_margin {
  margin: 0px auto; }

.left {
  float: left; }

.right {
  float: right; }

@media only screen and (max-width: 960px) {
  .one_third_width {
    width: 100%; } }
.clear {
  clear: both; }

#header {
  font-weight: 400;
  padding: 0 10px; }

#header.sticky {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%; }

#header_placeholder {
  height: 45px; }

#name, #name:visited, #name:link {
  float: left;
  font-size: 26px;
  margin: 10px 0 8px 0; }

#menu {
  float: right;
  margin: 10px 0 12px 0;
  font-size: 20px; }

#menu_mobile {
  display: none;
  float: right;
  margin: 10px 0 12px 0;
  font-size: 20px; }

@media only screen and (max-width: 400px) {
  #menu {
    display: none; }

  #menu_mobile {
    display: block; } }
#hidden_menu {
  display: none; }

#menu a, #menu_mobile a {
  margin: 0 20px 0 0; }

#menu a:last-child, #menu_mobile a:last-child {
  margin-right: 15px; }

.hover:link, .hover:visited {
  text-decoration: none;
  color: black; }

.hover:hover {
  color: black;
  cursor: pointer; }

#image_area {
  background-image: url("/images/dalle-hero.png");
  background-size: cover;
  background-position: 50% 50%;
  height: 400px;
  max-width: 1200px;
  margin: 0px auto; }

#content_area {
  padding: 12px 10px 0 10px; }

.column {
  box-sizing: border-box;
  padding: 0 15px 0 15px; }

.column:first-child {
  padding-left: 0; }

.column:last-child {
  padding-right: 0; }

.column_spacer {
  height: 10px; }

@media only screen and (max-width: 960px) {
  .column {
    padding: 0; } }
#content_area h2 {
  font-size: 28px;
  padding: 0 0 2px 0;
  margin: 20px 0 15px 0; }

h1#post_title {
  font-size: 35px;
  margin: 10px 0 30px -2px;
  line-height: 1.2;
  border-bottom: 0; }

#content_area h3 {
  font-size: 22px;
  padding: 0 0 2px 0;
  margin: 15px 0 15px 0; }

.more_info_link {
  text-align: right; }

#content_area b {
  font-weight: bold; }

.column_post {
  margin: 0 0 20px 0; }

.more_info {
  color: black;
  font-size: 12px;
  font-weight: 300; }
  .more_info .more_info_spacer {
    height: 2px; }
  .more_info .type-pill {
    box-sizing: border-box;
    display: inline;
    font-weight: 900; }
    .more_info .type-pill::before {
      font-weight: 400;
      color: black;
      content: "This "; }
    .more_info .type-pill::after {
      font-weight: 400;
      color: black;
      content: " post was"; }
  .more_info .type-pill-Personal {
    color: #996d39; }
    .more_info .type-pill-Personal::before {
      content: 'This 💝'; }
  .more_info .type-pill-Technology {
    color: #664a29; }
  .more_info .type-pill-Project {
    color: #332514; }

.more_info_link a:link, .more_info_link a:visited {
  color: black; }

.icons1 {
  font-family: 'iconsfont1';
  font-size: 30px; }

.icons2 {
  font-family: 'iconsfont2';
  font-size: 30px; }

.social_media div {
  height: 24px; }

.social_media_link {
  display: inline-block;
  margin: 5px 0 10px 0; }

.project img {
  width: 60px;
  height: 60px;
  float: left;
  margin: 0 10px 0 0; }

.square_list, ul {
  color: black;
  list-style-type: circle;
  padding: 0px 0px 0px 25px; }

ol {
  list-style: decimal; }

.square_list b, ul b, li b {
  font-weight: 400;
  text-decoration: none;
  color: black; }

.square_list a:link, .square_list a:visited {
  color: black; }

ol {
  list-style: decimal;
  padding: 0px 0px 0px 25px; }

a:link, a:visited {
  text-decoration: underline;
  color: inherit; }

.post_description a:link, .social_media a:link {
  text-decoration: none; }
.post_description div, .social_media div {
  margin-bottom: 4px; }

h4 {
  font-size: 20px;
  padding: 0 0 2px 0;
  margin: 25px 0 15px 0;
  text-align: center; }

h5 {
  font-size: 18px;
  margin: 1em 0 0 0; }

html {
  min-height: 100%; }

body {
  position: relative; }

.overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  text-align: center;
  display: none; }

.galleryimage:hover {
  cursor: pointer; }

#overlay_image {
  max-height: 100%;
  max-width: 100%; }

.colorchanger {
  color: black; }

.color1 {
  color: #8D3131;
  border-color: black; }

em {
  font-weight: inherit;
  font-style: italic; }

p {
  margin-top: 20px; }

html.turbolinks-progress-bar::before {
  background-color: black !important;
  height: 3px !important; }

.post {
  margin-bottom: 100px; }

img {
  max-width: 100%; }

.center {
  text-align: center; }

.center img {
  vertical-align: middle; }

strong {
  font-weight: bold; }

.expand_facet {
  cursor: pointer;
  padding: 5px;
  background-color: #ccc; }

.expand_block {
  display: none; }

.expand {
  display: block; }

.language-js, .language-python {
  margin-top: 20px; }

pre {
  margin-top: 0;
  white-space: pre-wrap;
  word-wrap: break-word; }

code {
  white-space: pre-wrap;
  word-wrap: break-word; }

.stay-connected {
  margin: 30px 0;
  padding: 10px;
  border-radius: 2px;
  background-color: black;
  box-sizing: border-box;
  color: #f4f4f4; }
  .stay-connected h1 {
    text-align: center;
    font-size: 20px; }
  .stay-connected input {
    box-sizing: border-box;
    width: 100%;
    font-size: 16px;
    padding: 2px;
    margin: 2px 0; }
    .stay-connected input[type=text] {
      font-size: 16px; }
    .stay-connected input[type=submit] {
      font-size: 16px;
      background-color: #1242ff;
      color: #f4f4f4;
      border: 0;
      border-radius: 2px;
      padding: 5px 0;
      cursor: pointer; }

.caption {
  color: grey;
  font-style: italic;
  text-align: center;
  margin-top: 5px; }

.music-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding-bottom: 5px; }
  .music-row:first-child {
    padding-top: -10px; }
  .music-row:last-child {
    padding-bottom: 0; }
  .music-row img {
    padding-right: 10px; }
