.menu{
    width: 290px;
    height: auto;
    border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, .5);
    margin: 0;
    padding: 0;
    font-size: .9em;
    position: fixed;
}

.menu .btn{
    display:block;
    padding: 1rem;
    border-bottom: solid 1px #1b1b2f;
    border-top: solid 1px #1f4068;
    position: relative;
}

.menu .submenu {
    background: #1b1b2f;
    overflow: auto;
    max-height: 0;
    transition: max-height .7s ease-out;
}

.menu .submenu a{
    display:block;
    padding: 1rem;
    margin-left: 20px;
    position: relative;
}

.menu .submenu a::before{
    content:'';
    display:block;
    position: absolute;
    top:0;
    left:0;
    height: 100%;
    width: 5px;
    background: #e43f5a;
    opacity: 0;
    transition: all .5s;
}

/* Sidebar links */
.menu a {
  display: block;
  color: white;
  padding: 16px;
  text-decoration: none;
}

/* Active/current link */
.menu a.active {
  background-color: #4b1bae;
  color: white;
}

/* Links on mouse-over */
.menu a:hover:not(.active) {
  background-color: #604fc9;
  color: white;
}

.menu .submenu a:hover{
    padding-left: calc(1rem + 5px);
}

.menu .submenu a:hover::before{
    opacity: 1;
}

.item:target .submenu{
    max-height: 30rem;
}

/* Hide the link that should open and close the menu on small screens */
.menu .icon {
  display: none;
}

/* Add a dark background on menu links and the item button on hover */
.menu a:hover, .item:hover .btn {
  background-color: #555;
  color: white;
}

/* Add a grey background to item links on hover */
.submenu  a:hover {
  background-color: #ddd;
  color: black;
}

/* Show the item menu when the user moves the mouse over the item button */
.item:hover .submenu  {
  display: block;
}

nav {
  margin-right: 50px;
  float: left;
  clear: right;
}

/* When the screen is less than 1200 pixels wide, hide all links. */
@media screen and (max-width: 1200px) {
  .menu a:not(:first-child), .item .btn {
    display: none;
  }
  .menu a.icon {
    float: left;
    font-size: 2em;
    display: block;
  }
}

/* The "responsive" class is added to the menu with JavaScript when the user clicks on the icon. */
@media screen and (max-width: 1200px) {
  .menu.responsive {position: relative;}
  .menu.responsive a.icon {
    position: absolute;
    right: 0;
    top: 0;
  }
  .menu.responsive a {
    float: none;
    display: block;
    text-align: left;
  }
  .menu.responsive .item {float: none;}
  .menu.responsive .submenu  {position: relative;}
  .menu.responsive .item .btn {
    display: block;
    width: 100%;
    text-align: left;
    #container {
      margin-top: 100px;
    }
  }
  #logo {
    display: none;
  }  
}