    * {
     box-sizing: border-box; 
    }
    body {
      margin: 0;
    }
    #main {
      display: flex;
      background: #fafafa;
      min-height: calc(100vh - 40vh);
    }
    #main > article {
      flex: 1;
      margin-right: auto;
      order: -1;
      max-width: 59%!important;
      height: 600px;
      overflow: hidden;
    }
    #main > nav {
      flex: 0 0 15vw;
    }
    @media all and (min-width: 800px) {
      #main > nav {
        display:none!important;
      }
    }
    #main > aside {
      margin-left: auto;
      order: 2;
      max-width: 39%!important;
      height: 600px;
      overflow: auto;
    }
    #main > nav {
      order: -1;
    }
    header, footer, article, nav, aside {
      padding: 1em;
    }
    header {
      background: #fafafa;
      height: 5vh;
    }
    @media all and (max-width: 800px) {
      header {
        display:none!important;
      }
    }
    footer {
      background: white;
      height: 35vh;
    }

/*@media all and (min-width: 600px) {
  .aside { flex: 1 0 0; }
}*/

/*@media all and (min-width: 800px) {
  .main    { flex: 3 0px; }
  .aside-1 { order: 1; } 
  .main    { order: 2; }
  .aside-2 { order: 3; }
  .footer  { order: 4; }
}*/

body {
  padding: .5em; 
  background-color: #00ffff;
}

.flex-container {
  display: flex;
  flex-wrap: nowrap;
  background-color: #ffffff;
}

.flex-container > div {
  background-color: #cdcdcd;
  color: #121212;
  width: 100px;
  height: 30px;
  margin: 1px;
  text-align: center;
}

.navigation ul {
  display: flex;
  justify-content: space-between;
}

.navigation {
  display: flex;
  flex-flow: row nowrap;
  justify-content: flex-end; 
  list-style: none;
  margin: 0; 
  background: #eaeaea;
}

.navigation a {
  text-decoration: none;
  display: block;
  padding: 5px;
  font-size: 11px;
  color: #121212;

}

.navigation li:last-of-type a {
  border-right: none;
}

.navigation li:first-of-type a {
  border-left: none;
}

.navigation li:after {
  display:block;
  content: '';
  border-bottom: solid 3px #019fb6;  
  transform: scaleX(0);  
  transition: transform 250ms ease-in-out;
}

.navigation2 a:after {
  display:block;
  content: '';
  border-bottom: solid 3px #019fb6;  
  transform: scaleX(0);  
  transition: transform 250ms ease-in-out;
}

li:hover:after { transform: scaleX(1); }
li.fromCenter {
  background-position: 50% calc(100% - var(--bottom-distance));
}
li.fromRight:after{ transform-origin:100% 50%; }
li.fromLeft:after{  transform-origin:  0% 50%; }

.navigation a:hover {
  /*background: #1565C0;*/
  border-color: #121212;
  border-top: none;
  border-left: none;
  border-right: none;

}

@media all and (max-width: 800px) {
  .navigation {
    justify-content: space-around;
  }
}

@media all and (max-width: 600px) {
  .navigation {
    flex-flow: column nowrap;
    padding: 0;
  }
  .navigation a { 
    margin-left:0;
    text-align: left; 
    border-bottom: 1px solid rgba(0, 0, 0, 0.1); 
  }
  .navigation li:last-of-type a {
    border-bottom: none;
  }
}

