body {
  font-family: "Droid Sans", sans-serif;
  background: #FFFFFF;
  margin: 0;
  padding: 0;
  color: #000;
}

/* ~~ Element/tag selectors ~~ */
ul, ol, dl { /* Due to variations between browsers, it's best practices to zero padding and margin on lists. For consistency, you can either specify the amounts you want here, or on the list items (LI, DT, DD) they contain. Remember that what you do here will cascade to the .nav list unless you write a more specific selector. */
  padding: 0;
  margin: 0;
}

h1, h2, h3, h4, h5, h6, p {
  margin-top: 0; /* removing the top margin gets around an issue where margins can escape from their containing div. The remaining bottom margin will hold it away from any elements that follow. */
  padding-right: 15px;
  padding-left: 0px; /* adding the padding to the sides of the elements within the divs, instead of the divs themselves, gets rid of any box model math. A nested div with side padding can also be used as an alternate method. */
}

a img { /* this selector removes the default blue border displayed in some browsers around an image when it is surrounded by a link */
  border: none;
}

/* ~~ Styling for your site's links must remain in this order - including the group of selectors that create the hover effect. ~~ */
a:link {
  color: #f37846;
  text-decoration: underline; /* unless you style your links to look extremely unique, it's best to provide underlines for quick visual identification */
}

a:visited {
  color: #f37846;
  text-decoration: underline;
}

a:hover, a:active, a:focus { /* this group of selectors will give a keyboard navigator the same hover experience as the person using a mouse. */
  text-decoration: none;
}

img {
  max-width: 100%;
  height: auto;
}

/* ~~ Site layout ~~ */
/** Default layout **/
div.main-content {
  display: grid;
  grid-template-rows: auto auto 100% auto;
  grid-template-areas: "menu" "header" "content" "footer";
}
div.main-content #menu {
  grid-area: menu;
  display: flex;
  justify-content: center;
  background-color: #2e2929;
  padding: 5px;
  border-bottom: 2px solid #f37846;
}
div.main-content #menu div.container {
  width: 1024px;
  display: flex;
  justify-content: space-between;
  /* Hide Hamburger */
}
div.main-content #menu div.container h1 {
  font-family: "Homenaje", sans-serif;
  font-size: 200%;
  font-weight: bold;
  text-transform: uppercase;
  color: #FFF;
  margin: 0;
}
div.main-content #menu div.container h1 a {
  text-decoration: none;
  color: #FFF;
}
div.main-content #menu div.container h1::first-letter {
  font-size: 120%;
  color: #f37846;
}
div.main-content #menu div.container #hamburger_label, div.main-content #menu div.container #hamburger {
  display: none;
}
div.main-content #menu div.container nav#navitems {
  align-self: center;
  display: flex;
}
div.main-content #menu div.container nav#navitems a {
  font-family: "Homenaje", sans-serif;
  display: block;
  color: white;
  text-align: center;
  text-decoration: none;
  font-size: 125%;
  font-weight: bold;
  text-transform: uppercase;
  width: 150px;
  margin-right: 15px;
  background-color: #f37846;
  padding: 5px 10px;
}
div.main-content #menu div.container nav#navitems a:hover {
  background-color: white;
  color: #f37846;
}
div.main-content #header {
  grid-area: header;
  display: flex;
  justify-content: center;
  height: 450px;
  background-color: #2e2929;
  padding: 0;
}
div.main-content #header div.container {
  width: 1024px;
  position: relative;
  height: inherit;
  color: white;
  background: #2e2929 url("/media/site/header-yennick-image.jpg") no-repeat left top;
}
div.main-content #header div.container img.logo {
  position: absolute;
  bottom: -73px;
}
div.main-content #header div.container div.header-text {
  position: relative;
  left: 550px;
  top: 100px;
  max-width: 600px;
}
div.main-content #header div.container div.header-text h2 {
  font-family: "Homenaje", sans-serif;
  font-size: 230%;
  font-weight: bold;
  text-transform: uppercase;
  margin-bottom: 5px;
}
div.main-content #header div.container div.header-text h3 {
  font-family: "Droid Sans", sans-serif;
  font-size: 170%;
  font-style: italic;
  margin-top: 5px;
}
div.main-content #header div.container div.header-text p.caption {
  font-family: "Droid Sans", sans-serif;
  font-size: 130%;
  color: #f37846;
}
div.main-content #page-main-area {
  grid-area: content;
  display: flex;
  justify-content: center;
}
div.main-content #page-main-area div.container {
  width: 1024px;
  margin-top: 80px;
}
div.main-content #footer {
  grid-area: footer;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 150px;
  background-color: #2e2929;
  color: white;
}
div.main-content #footer div.container {
  width: 1024px;
  position: relative;
  font-family: "Droid Sans", sans-serif;
  text-align: center;
  font-size: 100%;
}

/** layout for mobile devices **/
@media all and (max-width: 768px) {
  div.main-content #menu div.container {
    width: 100%;
    flex-wrap: wrap;
    /* Show Hamburger Icon */
  }
  div.main-content #menu div.container h1 {
    margin-left: 15px;
  }
  div.main-content #menu div.container label#hamburger_label {
    display: inline-block;
    color: white;
    background: #f37846;
    font-style: normal;
    font-size: 150%;
    padding: 10px;
    text-align: right;
  }
  div.main-content #menu div.container nav#navitems {
    display: none;
    flex-direction: column;
    flex-basis: 100%;
  }
  div.main-content #menu div.container nav#navitems a {
    width: 100%;
    margin-top: 2px;
    margin-right: 0;
    padding: 15px 0;
    font-size: 170%;
  }
  div.main-content #menu div.container input#hamburger:checked ~ nav#navitems {
    display: flex;
    flex-direction: column;
  }
  div.main-content #header {
    height: 160px;
  }
  div.main-content #header div.container {
    width: 100%;
    display: flex;
    flex-direction: column;
    height: inherit;
    background: #2e2929;
    justify-content: center;
  }
  div.main-content #header div.container img.logo {
    width: 75px;
    height: 73px;
    bottom: -36px;
  }
  div.main-content #header div.container div.header-text {
    align-self: center;
    position: static;
  }
  div.main-content #header div.container div.header-text h2 {
    font-size: 160%;
    text-align: center;
  }
  div.main-content #header div.container div.header-text h3 {
    margin-block-end: auto;
    font-size: 130%;
    text-align: center;
  }
  div.main-content #header div.container div.header-text p.caption {
    display: none;
  }
  div.main-content #header div.container img.logo {
    left: 15px;
  }
  div.main-content #page-main-area div.container {
    width: 100%;
    margin: 40px 10px 0 10px;
  }
  div.main-content #footer div.container {
    width: 100%;
  }
}
.articles-preview-component {
  border: 2px solid #f37846;
  border-radius: 5px;
  background-color: #2e2929;
  color: #FFF;
  padding: 10px;
  margin: 20px 0;
}
.articles-preview-component .section-title {
  font-family: "Homenaje", sans-serif;
  font-size: 200%;
  display: block;
  margin-bottom: 5px;
  font-weight: normal;
}
.articles-preview-component .articles-list {
  display: flex;
  flex-wrap: wrap;
}
.articles-preview-component .articles-list .article-preview {
  padding: 15px 25px;
  margin-right: 10px;
  margin-bottom: 5px;
}
.articles-preview-component .articles-list .coming_soon {
  align-self: center;
  font-size: 150%;
}
@media all and (max-width: 768px) {
  .articles-preview-component .articles-list {
    flex-direction: column;
  }
  .articles-preview-component .articles-list .article-preview {
    margin-bottom: 10px;
    margin-right: 0px;
  }
}

.subscription-form {
  margin: 50px 10px;
}

#landing-page p.intro {
  font-size: 150%;
  margin: 30px 0;
}

#post {
  color: #454646;
  line-height: 1.5;
  font-size: 19px;
}
#post .other-articles {
  display: flex;
  flex-direction: column;
  border-width: 1px 1px 1px 11px;
  border-style: solid;
  border-color: #f37846;
  padding: 0.1em 0.5em 0.3em 0.7em;
}
#post .other-articles .title {
  display: block;
  font-size: 120%;
}
#post h1 {
  font-family: "Homenaje", sans-serif;
  font-size: 250%;
}
#post h2 {
  font-family: "Homenaje", sans-serif;
  font-size: 200%;
  color: #2e2929;
}
#post h3 {
  font-family: "Homenaje", sans-serif;
  font-size: 150%;
}
#post strong {
  color: #2e2929;
}
#post pre {
  white-space: pre-wrap;
  white-space: moz-pre-wrap;
  padding: 0.1em 0.5em 0.3em 0.7em;
  border-left: 11px solid #ccc;
  margin: 1.7em 0 1.7em 0.3em;
  overflow: auto;
  width: 93%;
  font-family: "Courier New", Courier, monospace, sans-serif;
}
#post blockquote {
  white-space: pre-wrap;
  white-space: moz-pre-wrap;
  padding: 0.1em 0.5em 0.3em 0.7em;
  border-width: 1px 1px 1px 11px;
  border-style: solid;
  border-color: #ccc;
  margin: 1.7em 0 1.7em 0.3em;
  overflow: auto;
  width: 93%;
}
#post blockquote.quote {
  border-width: 0px;
  font-family: "Homenaje", sans-serif;
  text-align: center;
  font-size: 150%;
}
#post ul, #post ol {
  margin-left: 20px;
  margin-bottom: 10px;
}
#post img {
  margin: 5px;
}
#post .language-plaintext.highlighter-rouge {
  background-color: #EEE;
  padding: 2px 3px;
}
#post .share-buttons {
  display: flex;
  align-items: baseline;
  margin: 25px 0;
}
#post .share-buttons .share-btn {
  display: inline-block;
  color: #ffffff;
  border: none;
  padding: 5px 15px;
  outline: none;
  text-align: center;
  font-size: 100%;
  margin: 0 5px;
}
#post .share-buttons .share-btn:focus,
#post .share-buttons .share-btn:hover {
  text-decoration: none;
  opacity: 0.8;
}
#post .share-buttons .share-btn:active {
  color: #e2e2e2;
}
#post .share-buttons .share-btn.twitter {
  background: #55acee;
}
#post .share-buttons .share-btn.hackernews {
  background: #ff6600;
}

#page-main-area #hire-me {
  margin-top: 100px;
  font-size: 125%;
}
#page-main-area #hire-me > h2 {
  margin-top: 50px;
}
#page-main-area #hire-me blockquote {
  white-space: pre-wrap;
  white-space: moz-pre-wrap;
  padding: 0.1em 0.5em 0.3em 0.7em;
  border-width: 1px 1px 1px 11px;
  border-style: solid;
  border-color: #ccc;
  margin: 1.7em 0 1.7em 0.3em;
  overflow: auto;
  width: 93%;
}
#page-main-area #hire-me blockquote.quote {
  border-width: 0px;
  font-family: "Homenaje", sans-serif;
  text-align: center;
  font-size: 150%;
}
#page-main-area #hire-me ul, #page-main-area #hire-me ol {
  margin-left: 20px;
  margin-bottom: 10px;
}
#page-main-area #hire-me .fully-booked-section {
  border: 2px solid #f37846;
  border-radius: 5px;
  background-color: #2e2929;
  color: #FFF;
  padding: 10px;
  margin-top: 30px;
}
#page-main-area #hire-me .fully-booked-section .section-title {
  font-family: "Homenaje", sans-serif;
  font-size: 200%;
  display: block;
  margin-bottom: 5px;
  font-weight: normal;
}
#page-main-area #hire-me .knowledge-sample {
  font-size: 80%;
}
#page-main-area #hire-me .opensource-contribution-panel {
  border: 2px solid #f37846;
  border-radius: 5px;
  background-color: #2e2929;
  color: #FFF;
  padding: 10px;
  font-size: 80%;
  margin-bottom: 10px;
}
#page-main-area #hire-me .opensource-contribution-panel .section-title {
  font-family: "Homenaje", sans-serif;
  font-size: 200%;
  display: block;
  margin-bottom: 5px;
  font-weight: normal;
}
#page-main-area #hire-me .hire-me-form {
  display: flex;
  flex-direction: column;
  margin: 50px 10px;
}
#page-main-area #hire-me .hire-me-form input, #page-main-area #hire-me .hire-me-form textarea {
  background: #ffffff;
  font-size: 15px;
  padding: 12px;
  border: 1px solid #e3e3e3;
  -webkit-flex: 1 0 auto;
  -ms-flex: 1 0 auto;
  flex: 1 0 auto;
  line-height: 1.4;
  margin: 10px 0;
  border-color: rgb(227, 227, 227);
  border-radius: 4px;
  font-weight: 400;
  font-size: 15px;
}
#page-main-area #hire-me .hire-me-form button {
  background-color: rgb(243, 120, 70);
  color: #FFFFFF;
  padding: 12px 24px;
  border-radius: 4px;
  font-size: 15px;
  border: 0px;
}

/*# sourceMappingURL=main.css.map */