/* variables */
/* basics */
body {
  background: #1b1b1b;
  font-family: "Libre Baskerville", serif;
  font-size: 12px;
  color: #DCDCDC; }

.flex-container {
  padding: 0 5% 0;
  margin: 0 auto 5% auto;
  max-width: 1024px;
  flex-direction: column; }

a, a:visited {
  color: #DCDCDC;
  text-decoration: none;
  border-bottom: 1px solid #DCDCDC;
  padding-bottom: 2px; }

a:hover, a:focus {
  color: #ffd200;
  padding-bottom: 2px;
  border-bottom: 1px #ffd200 solid; }

.logo {
  text-align: center;
  margin: 0 auto 50px;
  color: transparent; }
  .logo h1, .logo span {
    font-size: 1px;
    margin-bottom: 0; }
  .logo .img {
    background: url("../img/lhv2-logo.png") no-repeat;
    background-size: contain;
    background-position: top center;
    width: 100%;
    height: 400px;
    display: block;
    margin: 0 auto; }

nav {
  align-content: center;
  text-transform: uppercase;
  border-bottom: #DCDCDC solid 1px;
  justify-content: center;
  width: 100%;
  font-size: 1.1em; }
  nav ul {
    text-align: center; }
  nav li {
    display: inline-block;
    letter-spacing: 2px; }
    nav li::before {
      content: '/';
      padding: 0 10px;
      color: #ffd200; }
    nav li:first-of-type::before {
      content: none; }

section {
  margin: 7% 0;
  display: flex;
  flex-direction: row;
  align-items: stretch;
  justify-content: space-between;
  padding: 0 5%; }
  section .fa {
    padding-right: 10px; }
  section .flex-col {
    margin-left: 3%; }
  section p {
    text-align: justify; }
  section h2 {
    transform: rotate(-90deg) translatex(-70px) translatey(8px);
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 1.6em; }

.heading {
  flex: 1 10%;
  margin-left: 0;
  border-right: 4px solid #DCDCDC;
  max-width: 50px; }

.link-list {
  flex: 1 20%;
  letter-spacing: 1px; }

.main {
  flex: 1 65%;
  padding: 10px 30px 10px 0; }
  .main p:last-of-type {
    margin-bottom: 0; }

article {
  font-family: "Lato", "Raleway", san-serif;
  font-size: 1.2em; }
  article p {
    margin-bottom: 1.2em; }
  article .img {
    max-height: 100px;
    border-radius: 0;
    margin-bottom: 20px;
    overflow: hidden; }
    article .img img {
      width: 100%; }

.about .link-list {
  line-height: 25px; }

.work .main {
  display: flex;
  order: 1;
  flex-direction: row;
  border-top: 1px solid #DCDCDC;
  padding-right: 25px;
  padding-top: 30px; }
  .work .main .content {
    z-index: 5;
    overflow: hidden; }
  .work .main #content-1, .work .main #content-2, .work .main #content-3, .work .main #content-4, .work .main #content-5 {
    display: flex;
    overflow: hidden;
    height: 0; }
    .work .main #content-1.checked, .work .main #content-2.checked, .work .main #content-3.checked, .work .main #content-4.checked, .work .main #content-5.checked {
      overflow: hidden;
      height: 100%; }

.work .link-list {
  order: 2;
  border-left: 1px solid #DCDCDC; }
  .work .link-list.flex-col {
    margin-left: 0; }
  .work .link-list label {
    margin-bottom: 0;
    font-weight: normal;
    border-bottom: 1px solid #DCDCDC;
    padding-bottom: 2px; }
    .work .link-list label:hover {
      color: #ffd200;
      cursor: pointer;
      border-bottom: 1px solid #ffd200;
      padding-bottom: 2px; }
  .work .link-list input[type=radio] {
    display: none; }
  .work .link-list input:checked + label {
    display: block;
    width: 100%;
    height: 100%;
    padding: 20px 0 20px 10px;
    border: 1px solid #DCDCDC;
    border-left: 1px solid #1b1b1b;
    margin-left: -11px; }
    .work .link-list input:checked + label:hover {
      color: #ffd200;
      border: 1px solid #ffd200;
      border-left: 1px solid #1b1b1b; }
  .work .link-list ul {
    list-style-type: none; }
  .work .link-list li {
    border-left: none;
    padding-right: 10px;
    margin-left: 10px; }
    .work .link-list li:hover, .work .link-list li:focus {
      border-color: #ffd200; }
      .work .link-list li:hover a, .work .link-list li:focus a {
        color: #ffd200; }

.work article {
  flex: 2;
  padding-right: 10px;
  overflow: hidden; }
  .work article p {
    margin-bottom: 8px; }
  .work article ul, .work article ol {
    padding-left: 30px; }
    .work article ul li, .work article ol li {
      padding-left: 8px;
      margin-bottom: 5px;
      list-style-position: outside;
      list-style: bold; }
    .work article ul ul, .work article ol ul {
      padding-left: 0;
      margin: 10px 0 10px 15px; }
  .work article ol li {
    padding-left: 10px; }

.work aside {
  flex: 1; }

.work h3 {
  text-transform: uppercase;
  font-size: 1.2em;
  font-family: "Libre Baskerville", serif;
  letter-spacing: 1px; }

.work h4, .work h5 {
  font-size: 1.1em;
  font-family: "Libre Baskerville", serif;
  letter-spacing: 1px; }

.work h4 {
  font-style: italic; }

.work h5 {
  font-weight: bold;
  margin-bottom: 5px; }

.demo-button {
  font-family: "Libre Baskerville", serif;
  font-style: italic;
  font-size: 1.2em;
  color: #DCDCDC;
  text-transform: capitalize;
  border: 1px solid #ffd200;
  border-radius: 0;
  width: 100%; }
  .demo-button a {
    border: 1px solid transparent; }
  .demo-button:hover, .demo-button:focus {
    border: 2px solid #ffd200; }
    .demo-button:hover a, .demo-button:focus a {
      color: #ffd200;
      border-top: none;
      border-left: none; }
    .demo-button:hover a:hover, .demo-button:hover a:focus, .demo-button:focus a:hover, .demo-button:focus a:focus {
      text-decoration: none;
      border-bottom: none; }
  .demo-button.disabled {
    border: 1px solid #333333;
    color: #333333; }
    .demo-button.disabled:hover, .demo-button.disabled:active {
      border: 1px solid #333333; }

.using, .challenges {
  border-top: 1px solid #DCDCDC;
  padding-top: 5px;
  margin-top: 20px;
  width: 100%;
  font-family: "Lato", "Raleway", san-serif; }
  .using h4, .challenges h4 {
    font-family: "Libre Baskerville", serif;
    font-size: 1.3em;
    letter-spacing: 1px;
    margin-bottom: 10px; }
  .using div, .challenges div {
    padding-left: 20px;
    font-size: 1.1em; }
  .using li, .challenges li {
    margin: 2px; }

footer {
  border-top: 1px solid #DCDCDC;
  margin-top: 10%;
  padding-top: 10px;
  text-align: center; }
  footer h6 {
    font-size: .8em;
    letter-spacing: 2px; }

@media (max-width: 980px) {
  section {
    padding: 0 1%; }
  .main {
    padding-right: 20px; } }

@media (max-width: 768px) {
  .flex-container {
    width: 88%;
    justify-content: center; }
  section {
    padding: 0; }
    section .heading {
      margin-left: 0; }
  .logo {
    margin-bottom: 20px; }
    .logo .img {
      height: 250px; }
  .link-list {
    flex: 30%; }
  .work .main {
    flex-direction: column;
    padding-right: 3%; }
  .work .content {
    flex-direction: column; }
  .work #content-1, .work #content-2, .work #content-3,
  .work #content-4, .work #content-5 {
    flex-direction: column; }
  .work article {
    padding-right: 0; }
  .work aside {
    margin: 30px 0 0 0; } }

@media (max-width: 657px) {
  .logo {
    margin-bottom: 1%; }
    .logo .img {
      max-height: 200px; }
  section {
    flex-direction: column;
    margin-top: 30px; }
    section h2 {
      transform: none; }
    section:not(:first-of-type) {
      margin-top: 50px; }
    section .flex-col {
      margin-left: 0; }
  .heading {
    max-width: 100%;
    border-right: none;
    border-bottom: 5px solid #DCDCDC;
    margin-bottom: 20px; }
  .main {
    padding-right: 0; }
  .work .link-list {
    order: 1; }
  .work .main {
    order: 2; } }

@media (max-width: 320px) {
  .logo .img {
    max-height: 150px; } }
