* {
  box-sizing: border-box;
}
.bsoa { 
  position: absolute;
  top: -0.5rem;
  left: 5rem;}

.nav {
  height: 50px;
  width: 100%;
  position: relative;
  text-align: right;
  padding-right: 50px;
}

.nav > .nav-header {
  display: inline;
}

.nav > .nav-header > .nav-title {
  display: inline-block;
  font-size: 22px;
  text-transform: uppercase;
  color: #333;
  padding: 10px;

}

.nav > .nav-btn {
  display: none;
}

.nav > .nav-links {
  display: inline;
  font-size: 18px;
  text-align: right;
}

.nav > .nav-links > a {
  display: inline-block;
  padding: 15px 10px;
  text-decoration: none;
  color: #00d0fc;
}

.nav > .nav-links > a:hover {
  color: #fff
} 

.nav > #nav-check {
  display: none;
}

@media (max-width:600px) {

  .bsoa { 
    position: absolute;
    top: -1.2rem;
    left: .5rem;
    max-width: 80%;}

  .nav > .nav-btn {
    display: inline-block;
    position: absolute;
    right: 0px;
    top: 0px;
  }
  .nav > .nav-btn > label {
    display: inline-block;
    width: 50px;
    height: 50px;
    padding: 13px;
  }
  .nav > .nav-btn > label:hover,.nav  #nav-check:checked ~ .nav-btn > label {
    background-color: #103254;
  }
  .nav > .nav-btn > label > span {
    display: block;
    width: 25px;
    height: 10px;
    border-top: 2px solid #00d0fc;
  }
  .nav > .nav-links {
    padding: 10px 20px 10px 0;
    position: absolute;
    display: block;
    width: 100%;
    background-color: #103254;
    height: 0px;
    transition: all 0.3s ease-in;
    overflow-y: hidden;
    top: 50px;
    left: 0px;
  }
  .nav > .nav-links > a {
    display: block;
    width: 100%;
  }
  .nav > #nav-check:not(:checked) ~ .nav-links {
    height: 0px;
  }
  .nav > #nav-check:checked ~ .nav-links {
    height: calc(60vh - 50px);
    overflow-y: auto;
  }
}

